diff options
Diffstat (limited to 'dev-python/kicad-python/kicad-python-0.5.0-r1.ebuild')
| -rw-r--r-- | dev-python/kicad-python/kicad-python-0.5.0-r1.ebuild | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/dev-python/kicad-python/kicad-python-0.5.0-r1.ebuild b/dev-python/kicad-python/kicad-python-0.5.0-r1.ebuild deleted file mode 100644 index eedf58c55118..000000000000 --- a/dev-python/kicad-python/kicad-python-0.5.0-r1.ebuild +++ /dev/null @@ -1,113 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=poetry -PYTHON_COMPAT=( python3_{10..14} ) -inherit distutils-r1 pypi - -DESCRIPTION="KiCad API Python Bindings for interacting with running KiCad sessions" -HOMEPAGE="https://gitlab.com/kicad/code/kicad-python https://pypi.org/project/kicad-python" - -# Proto files version should match kicad release -KICAD_TAG="9.0.6" -KICAD_PROTO_BASE="https://gitlab.com/kicad/code/kicad/-/raw/${KICAD_TAG}/api/proto" - -# List of proto files needed -PROTO_FILES=( - "board/board.proto" - "board/board_commands.proto" - "board/board_types.proto" - "common/commands/base_commands.proto" - "common/commands/editor_commands.proto" - "common/commands/project_commands.proto" - "common/envelope.proto" - "common/types/base_types.proto" - "common/types/enums.proto" - "common/types/project_settings.proto" - "schematic/schematic_commands.proto" - "schematic/schematic_types.proto" -) - -SRC_URI="$(pypi_sdist_url)" -for _p in "${PROTO_FILES[@]}"; do - SRC_URI+=" ${KICAD_PROTO_BASE}/${_p} -> kicad-${KICAD_TAG}-${_p//\//-}" -done -unset _p - -LICENSE="MIT" -SLOT=0 -KEYWORDS="~amd64" - -# Tests not included in PyPI sdist -RESTRICT="test" - -# Regenerate protobuf files at build time to match system protobuf version -# Use := slot operator to trigger rebuild when protobuf is upgraded -RDEPEND=" - >=dev-python/protobuf-5.29:=[${PYTHON_USEDEP}] - >=dev-python/pynng-0.8.0[${PYTHON_USEDEP}] - <dev-python/pynng-0.9.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/typing-extensions-4.13.2[${PYTHON_USEDEP}] - ' python3_{10..12}) -" -BDEPEND=" - ${RDEPEND} - dev-libs/protobuf[protoc(+)] -" - -src_prepare() { - # Remove build script config from pyproject.toml - sed -i '/\[tool.poetry.build\]/,/^$/d' pyproject.toml || die - rm -f setup.py build.py || die - - # Setup proto source directory - local proto_src="${WORKDIR}/proto" - mkdir -p "${proto_src}"/{board,common/commands,common/types,schematic} || die - - # Copy downloaded proto files to proper structure - local _p _f - for _p in "${PROTO_FILES[@]}"; do - _f="kicad-${KICAD_TAG}-${_p//\//-}" - cp "${DISTDIR}/${_f}" "${proto_src}/${_p}" || die - done - - einfo "Regenerating protobuf files with system protoc..." - - # Remove only pre-generated _pb2.py and _pb2.pyi files, keep __init__.py - find "${S}"/kipy/proto -name '*_pb2.py' -delete || die - find "${S}"/kipy/proto -name '*_pb2.pyi' -delete || die - rm -rf "${S}"/build/lib/kipy/proto || die - - # Compile all proto files (output to temp dir first) - local proto_out="${WORKDIR}/proto_out" - mkdir -p "${proto_out}" || die - - protoc \ - --proto_path="${proto_src}" \ - --python_out="${proto_out}" \ - --pyi_out="${proto_out}" \ - "${proto_src}"/board/*.proto \ - "${proto_src}"/common/*.proto \ - "${proto_src}"/common/commands/*.proto \ - "${proto_src}"/common/types/*.proto \ - "${proto_src}"/schematic/*.proto \ - || die "protoc failed" - - # Copy only _pb2.py and _pb2.pyi files to kipy/proto, preserving original __init__.py - find "${proto_out}" \( -name '*_pb2.py' -o -name '*_pb2.pyi' \) | while read -r f; do - local rel="${f#${proto_out}/}" - cp "${f}" "${S}/kipy/proto/${rel}" || die - done - - # Fix imports: protoc generates absolute imports (e.g., "from common.types import ...") - # but kipy expects them relative to kipy.proto (e.g., "from kipy.proto.common.types import ...") - find "${S}/kipy/proto" \( -name '*_pb2.py' -o -name '*_pb2.pyi' \) -exec \ - sed -i -E \ - -e 's/^(from|import) (common|board|schematic)([ .])/\1 kipy.proto.\2\3/g' \ - {} + || die "failed to fix protobuf imports" - - distutils-r1_src_prepare -} |
