diff --git a/dev-embedded/esp-idf-kconfig/Manifest b/dev-embedded/esp-idf-kconfig/Manifest index c6363fd295..c5ae501b47 100644 --- a/dev-embedded/esp-idf-kconfig/Manifest +++ b/dev-embedded/esp-idf-kconfig/Manifest @@ -1,2 +1,3 @@ DIST esp_idf_kconfig-2.5.0.tar.gz 139805 BLAKE2B 95ecaeb14c87d9c2d8c90186b2e0d5211a7dc645af110f6f5a19b348e8ae13bfc0c9b1c56be78084603a5c564d3d695548024207d8a2aa683538001ecd0f765e SHA512 60056124904caef31b90b77301431e54b7d490a7c73537ab8c936d261eba879022953c876769fc7c32b5d83c40dcf0cacc5b9f00a471704903d8df646114b8d6 DIST esp_idf_kconfig-2.5.1.tar.gz 140118 BLAKE2B 9faddf102415a0b26ab698ed4b8336e8e5508c681166676b55655f990a8f271f9c62a86f979fedcbe76d4aee3d07909bb0e8c82044ed5115d141926f614426d0 SHA512 e31cf1b3405105d471f4ce3ae31af3943a3e72f48828a5a2e9dc584854d778beccbfd42d7fa29e903e4a3fad0c9080306bf0afe46930d26d1023cb31f437c3c7 +DIST esp_idf_kconfig-2.5.2.tar.gz 140746 BLAKE2B 3ab5d56956004a633118930b05b05a296d2be882a790709b1de845728f8c83492a1d28df6cbf0e437c39a9663b74771ea6c412dd0c157927676dbf2df8f142c3 SHA512 e2619ae2471ef8071125158d42342b12e769fdfa55a9a035d987b7a25201240211a2189146c4f71e80c8e645f93abdeb0baafa301e352432687a1ee1812174ee diff --git a/dev-embedded/esp-idf-kconfig/esp-idf-kconfig-2.5.2.ebuild b/dev-embedded/esp-idf-kconfig/esp-idf-kconfig-2.5.2.ebuild new file mode 100644 index 0000000000..1217061923 --- /dev/null +++ b/dev-embedded/esp-idf-kconfig/esp-idf-kconfig-2.5.2.ebuild @@ -0,0 +1,26 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{{11..14},13t} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Kconfig tooling for esp-idf" +HOMEPAGE="https://github.com/espressif/esp-idf-kconfig" + +LICENSE="Apache-2.0" +SLOT="0" + +KEYWORDS="~amd64" + +RESTRICT="test" + +PATCHES=( "${FILESDIR}/${P}-rename-kconfiglib.patch" ) + +src_prepare() { + default + rm -r docs || die +} diff --git a/dev-embedded/esp-idf-kconfig/files/esp-idf-kconfig-2.5.2-rename-kconfiglib.patch b/dev-embedded/esp-idf-kconfig/files/esp-idf-kconfig-2.5.2-rename-kconfiglib.patch new file mode 100644 index 0000000000..7a21175298 --- /dev/null +++ b/dev-embedded/esp-idf-kconfig/files/esp-idf-kconfig-2.5.2-rename-kconfiglib.patch @@ -0,0 +1,160 @@ +# Needed to avoid conflicts with dev-python/kconfiglib +# See https://github.com/espressif/esp-idf-kconfig/issues/13 for context +diff --git c/esp_idf_kconfig/gen_kconfig_doc.py w/esp_idf_kconfig/gen_kconfig_doc.py +index 87d0c1a..cb83260 100644 +--- c/esp_idf_kconfig/gen_kconfig_doc.py ++++ w/esp_idf_kconfig/gen_kconfig_doc.py +@@ -11,7 +11,7 @@ + # SPDX-License-Identifier: Apache-2.0 + import re + +-import kconfiglib.core as kconfiglib ++import espkconfiglib.core as kconfiglib + + # Indentation to be used in the generated file + INDENT = " " +diff --git c/kconfiglib/__init__.py w/espkconfiglib/__init__.py +similarity index 100% +rename from kconfiglib/__init__.py +rename to espkconfiglib/__init__.py +diff --git c/kconfiglib/core.py w/espkconfiglib/core.py +similarity index 99% +rename from kconfiglib/core.py +rename to espkconfiglib/core.py +index 7753b6f..e4dabee 100644 +--- c/kconfiglib/core.py ++++ w/espkconfiglib/core.py +@@ -2,7 +2,7 @@ + # SPDX-FileCopyrightText: 2024-2026 Espressif Systems (Shanghai) CO LTD + # SPDX-FileCopyrightText: 2011-2019, Ulf Magnusson + # SPDX-License-Identifier: ISC +-# This file is copied from kconfiglib project: ++# This file is copied from espkconfiglib project: + # https://github.com/ulfalizer/Kconfiglib/commit/061e71f7d78cb057762d88de088055361863deff + import errno + import importlib +@@ -2524,7 +2524,7 @@ class Kconfig(object): + returns node that was parsed as a last one in this function. + probably will be deprecated as the call logic is different from the original. + """ +- from kconfiglib.kconfig_parser import Parser ++ from espkconfiglib.kconfig_parser import Parser + + parser = Parser(kconfig=self) + +diff --git c/kconfiglib/kconfig_grammar.py w/espkconfiglib/kconfig_grammar.py +similarity index 99% +rename from kconfiglib/kconfig_grammar.py +rename to espkconfiglib/kconfig_grammar.py +index a446b08..112a9b5 100644 +--- c/kconfiglib/kconfig_grammar.py ++++ w/espkconfiglib/kconfig_grammar.py +@@ -29,7 +29,7 @@ from pyparsing import infix_notation + from pyparsing import one_of + + if TYPE_CHECKING: +- from kconfiglib.kconfig_parser import Parser ++ from espkconfiglib.kconfig_parser import Parser + + + class KconfigBlock(Token): +diff --git c/kconfiglib/kconfig_parser.py w/espkconfiglib/kconfig_parser.py +similarity index 99% +rename from kconfiglib/kconfig_parser.py +rename to espkconfiglib/kconfig_parser.py +index a7c4801..08349ee 100644 +--- c/kconfiglib/kconfig_parser.py ++++ w/espkconfiglib/kconfig_parser.py +@@ -17,7 +17,7 @@ from pyparsing import ParseResults + from pyparsing import line as pyparsing_line + from pyparsing import lineno + +-from kconfiglib.kconfig_grammar import KconfigGrammar ++from espkconfiglib.kconfig_grammar import KconfigGrammar + + from .core import AND + from .core import BOOL +diff --git c/kconfgen/core.py w/kconfgen/core.py +index 5e9e660..5709b5a 100755 +--- c/kconfgen/core.py ++++ w/kconfgen/core.py +@@ -27,7 +27,7 @@ from typing import Set + from typing import Tuple + + import esp_idf_kconfig.gen_kconfig_doc as gen_kconfig_doc +-import kconfiglib.core as kconfiglib ++import espkconfiglib.core as kconfiglib + from esp_idf_kconfig import __version__ + + +diff --git c/kconfserver/core.py w/kconfserver/core.py +index fead552..8693663 100644 +--- c/kconfserver/core.py ++++ w/kconfserver/core.py +@@ -13,7 +13,7 @@ import tempfile + from json import JSONDecodeError + + import kconfgen.core as kconfgen +-import kconfiglib.core as kconfiglib ++import espkconfiglib.core as kconfiglib + from esp_idf_kconfig import __version__ + + # Min/Max supported protocol versions +diff --git c/menuconfig/core.py w/menuconfig/core.py +index 1d71292..2fa6cdd 100755 +--- c/menuconfig/core.py ++++ w/menuconfig/core.py +@@ -2,7 +2,7 @@ + # SPDX-FileCopyrightText: 2024-2025 Espressif Systems (Shanghai) CO LTD + # SPDX-FileCopyrightText: 2018-2019, Nordic Semiconductor ASA and Ulf Magnusson + # SPDX-License-Identifier: ISC +-# This file is copied from kconfiglib project: ++# This file is copied from espkconfiglib project: + # https://github.com/ulfalizer/Kconfiglib/commit/061e71f7d78cb057762d88de088055361863deff + """ + Overview +@@ -193,25 +193,25 @@ import sys + import textwrap + from typing import Union + +-from kconfiglib.core import AND +-from kconfiglib.core import BOOL +-from kconfiglib.core import BOOL_TO_STR +-from kconfiglib.core import COMMENT +-from kconfiglib.core import HEX +-from kconfiglib.core import INT +-from kconfiglib.core import MENU +-from kconfiglib.core import OR +-from kconfiglib.core import STRING +-from kconfiglib.core import TYPE_TO_STR +-from kconfiglib.core import Choice +-from kconfiglib.core import MenuNode +-from kconfiglib.core import Symbol +-from kconfiglib.core import expr_str +-from kconfiglib.core import expr_value +-from kconfiglib.core import split_expr +-from kconfiglib.core import standard_config_filename +-from kconfiglib.core import standard_kconfig +-from kconfiglib.core import standard_sc_expr_str ++from espkconfiglib.core import AND ++from espkconfiglib.core import BOOL ++from espkconfiglib.core import BOOL_TO_STR ++from espkconfiglib.core import COMMENT ++from espkconfiglib.core import HEX ++from espkconfiglib.core import INT ++from espkconfiglib.core import MENU ++from espkconfiglib.core import OR ++from espkconfiglib.core import STRING ++from espkconfiglib.core import TYPE_TO_STR ++from espkconfiglib.core import Choice ++from espkconfiglib.core import MenuNode ++from espkconfiglib.core import Symbol ++from espkconfiglib.core import expr_str ++from espkconfiglib.core import expr_value ++from espkconfiglib.core import split_expr ++from espkconfiglib.core import standard_config_filename ++from espkconfiglib.core import standard_kconfig ++from espkconfiglib.core import standard_sc_expr_str + + _IS_WINDOWS = os.name == "nt" # Are we running on Windows? +