litex-2025.12pentoo
download
# Copyright 1999-2026 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{12..14} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Information gathering tool designed for extracting metadata of public documents"
HOMEPAGE="https://github.com/enjoy-digital/litex"
SRC_URI="https://github.com/enjoy-digital/litex/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
IUSE=test
RESTRICT="!test? ( test )"
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/pyserial[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
sci-electronics/migen[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/pexpect[${PYTHON_USEDEP}]
)
"
#FIXME: required packages:
#litedram
#liteeth
#liteiclink
#litejesd204b
#litepcie
#litesata
#litescope
#litesdcard
#litespi
#litex-boards
#pythondata-cpu-lm32
#pythondata-cpu-mor1kx
#pythondata-cpu-naxriscv
#pythondata-cpu-serv
#pythondata-cpu-vexriscv
#pythondata-cpu-vexriscv-smp
#pythondata-misc-tapcfg
#pythondata-misc-usb_ohci
#pythondata-software-compiler_rt
#pythondata-software-picolibc
#valentyusb
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
# tests can't be done due to some breaking changes with python 3.14
# https://github.com/enjoy-digital/litex/issues/2399
EPYTEST_DESELECT=(
test/test_csr.py::TestCSR::test_csr_constant
test/test_csr.py::TestCSR::test_csr_fields
test/test_csr.py::TestCSR::test_csr_status
test/test_csr.py::TestCSR::test_csr_storage
test/test_i2c.py::TestI2C::test_i2c
test/test_i2s.py::TestI2S::test_s7i2sslave_syntax
test/test_icap.py::TestICAP::test_icap_bitstream_syntax
test/test_spi.py::TestSPI::test_spi_master_syntax
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_16_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_16_lsb_wb32
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_16_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_16_msb_wb32
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_24_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_24_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_24_slot0_1_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_24_slot0_1_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_32_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_32_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_32_slot0_1_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_32_slot0_1_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_8_lsb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_8_msb
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_8_msb_wait1
test/test_spi_mmap.py::TestSPIMMAP::test_spi_mmap_8_msb_wait8
test/test_spi_opi.py::TestI2S::test_s7spiopi_syntax
test/test_timer.py::TestTimer::test_one_shot_software_polling
test/test_timer.py::TestTimer::test_one_shot_timer_interrupts
test/test_timer.py::TestTimer::test_periodic_timer_software_polling
# the following tests are broken due to migen
# https://git.m-labs.hk/M-Labs/migen/issues/2
test/test_hyperbus.py::TestHyperRAM::test_hyperram_read_latency_5_2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_read_latency_6_2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_read_latency_7_1x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_read_latency_7_2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_reg_write
test/test_hyperbus.py::TestHyperRAM::test_hyperram_syntax
test/test_hyperbus.py::TestHyperRAM::test_hyperram_write_latency_5_2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_write_latency_5_2x_sys2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_write_latency_6_2x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_write_latency_7_1x
test/test_hyperbus.py::TestHyperRAM::test_hyperram_write_latency_7_2x
test/test_icap.py::TestICAP::test_icap_command_reload
test/test_integration.py::test_cpu
test/test_integration.py::test_buses
)