From 20ed34abb64fafb394d0082d9dbdc18bffc15d8d Mon Sep 17 00:00:00 2001 From: Moritz Haase Date: Mon, 18 Aug 2025 08:44:13 +0200 Subject: libcomps: upgrade 0.1.21 -> 0.1.22 The project did not publish release notes, but the list of changes is available at [0]. The new release brings a fix for [1] and ships the patch to build with CMake 4+. [0]: https://github.com/rpm-software-management/libcomps/compare/0.1.21...0.1.22 [1]: https://bugzilla.redhat.com/show_bug.cgi?id=2331665 (From OE-Core rev: c780e8a17d80de4d2845092874153a4bb29f7493) Signed-off-by: Moritz Haase Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 24 ++++ ...0001-libcomps-Support-builds-with-CMake-4.patch | 132 --------------------- ...-set-PYTHON_INSTALL_DIR-by-running-python.patch | 27 ----- meta/recipes-devtools/libcomps/libcomps_0.1.21.bb | 24 ---- meta/recipes-devtools/libcomps/libcomps_0.1.22.bb | 23 ++++ 5 files changed, 47 insertions(+), 183 deletions(-) create mode 100644 meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch delete mode 100644 meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch delete mode 100644 meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch delete mode 100644 meta/recipes-devtools/libcomps/libcomps_0.1.21.bb create mode 100644 meta/recipes-devtools/libcomps/libcomps_0.1.22.bb (limited to 'meta/recipes-devtools') diff --git a/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch b/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch new file mode 100644 index 0000000000..6fc0a4177f --- /dev/null +++ b/meta/recipes-devtools/libcomps/libcomps/0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch @@ -0,0 +1,24 @@ +From 159ad0e19f4c5d7fe357378c00db19c1106e62c4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Fri, 30 Dec 2016 18:22:09 +0200 +Subject: [PATCH] Do not set PYTHON_INSTALL_DIR by running python. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + libcomps/src/python/src/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libcomps/src/python/src/CMakeLists.txt b/libcomps/src/python/src/CMakeLists.txt +index d22b84e..ad67309 100644 +--- a/libcomps/src/python/src/CMakeLists.txt ++++ b/libcomps/src/python/src/CMakeLists.txt +@@ -85,7 +85,7 @@ IF (SKBUILD) + INSTALL(FILES libcomps/__init__.py DESTINATION libcomps/src/python/src/libcomps) + INSTALL(TARGETS pycomps LIBRARY DESTINATION libcomps/src/python/src/libcomps) + ELSE () +- EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from sysconfig import get_path; stdout.write(get_path('platlib'))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) ++ #EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from sysconfig import get_path; stdout.write(get_path('platlib'))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) + + INSTALL(FILES ${pycomps_SRCDIR}/libcomps/__init__.py DESTINATION ${PYTHON_INSTALL_DIR}/libcomps) + #INSTALL(FILES ${pycomps_SRCDIR}/tests/__test.py DESTINATION diff --git a/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch b/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch deleted file mode 100644 index 9a90e05888..0000000000 --- a/meta/recipes-devtools/libcomps/libcomps/0001-libcomps-Support-builds-with-CMake-4.patch +++ /dev/null @@ -1,132 +0,0 @@ -From 702ec1423fb9b53244b902923fd87ef19b63a7f5 Mon Sep 17 00:00:00 2001 -From: Moritz Haase -Date: Mon, 23 Jun 2025 08:32:18 +0200 -Subject: [PATCH] libcomps: Support builds with CMake 4+ - -- Bump minimum required version to 3.10, the lowest one CMake 4+ don't complain - about. It's also possible to use 3.5, but that results in a deprecation - warning. The 'cmake_minimum_required()' invocation has been moved before the - initial 'project()' call as CMake complained about the wrong order. - -- Set policy CMP0148 [0] to OLD to unblock build without additional changes. - Eventually, the usage of the 'PythonInterp' and 'PythonLibs' find modules will - be need to be updated to use 'Python3' instead. - -- Set policy CMP0175 [1] to NEW and fix warnings. - -- Fix the 'No TARGET ... has been created in this directory' error in - 'src/python'. - -- Fix 'Utility target must not be used as the target of a - target_link_libraries call' errors (see [2]). - -- Mark the 'check' library as required when tests are enabled to prevent test - targets from linking a non-existing library in case it's not installed. - -[0]: https://cmake.org/cmake/help/latest/policy/CMP0148.html -[1]: https://cmake.org/cmake/help/latest/policy/CMP0175.html -[2]: https://cmake.org/cmake/help/latest/policy/CMP0039.html - -Upstream-Status: Backport [702ec1423fb9b53244b902923fd87ef19b63a7f5] -Signed-off-by: Moritz Haase ---- - README.md | 3 +-- - libcomps/CMakeLists.txt | 7 +++++-- - libcomps/src/python/docs/CMakeLists.txt | 3 ++- - libcomps/src/python/pycopy.cmake | 7 ++++--- - libcomps/tests/CMakeLists.txt | 2 -- - 5 files changed, 12 insertions(+), 10 deletions(-) - -diff --git a/README.md b/README.md -index 7f8314dd3f70d131c4d399f069d3d7bb77dcff02..24bf8a226d50b7b9b5372f98b52650ff4467c3d6 100644 ---- a/README.md -+++ b/README.md -@@ -27,7 +27,7 @@ for python bindings: - - for C library tests: - --* check http://check.sourceforge.net/ -+* check https://github.com/libcheck/check - - for documentation build: - -@@ -128,4 +128,3 @@ Here's the most direct way to get your work merged into the project. - - 1. Push the branch to your fork - 1. Send a pull request for your branch -- -diff --git a/libcomps/CMakeLists.txt b/libcomps/CMakeLists.txt -index d8d628af1a8b863b6173ff11615a59aa58d8235e..3957e63a311fc42c85516c0e66fc6f598194cb8f 100644 ---- a/libcomps/CMakeLists.txt -+++ b/libcomps/CMakeLists.txt -@@ -1,5 +1,8 @@ -+cmake_minimum_required (VERSION 3.10) - project(libcomps C) --cmake_minimum_required (VERSION 2.8.10) -+ -+cmake_policy(SET CMP0148 OLD) -+cmake_policy(SET CMP0175 NEW) - - include (GNUInstallDirs) - include (${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake) -@@ -32,7 +35,7 @@ include_directories("${PROJECT_SOURCE_DIR}/src") - #include_directories("${PROJECT_SOURCE_DIR}/src/libcomps") - - if (ENABLE_TESTS) -- find_library(CHECK_LIBRARY NAMES check) -+ find_library(CHECK_LIBRARY REQUIRED NAMES check) - endif() - find_library(EXPAT_LIBRARY NAMES expat) - -diff --git a/libcomps/src/python/docs/CMakeLists.txt b/libcomps/src/python/docs/CMakeLists.txt -index c4b388cb4a4bb2d962a625a448efcfee14ef71b3..9c92b2dacf4a2cb76f461b8038217cc8e895a369 100644 ---- a/libcomps/src/python/docs/CMakeLists.txt -+++ b/libcomps/src/python/docs/CMakeLists.txt -@@ -26,7 +26,8 @@ add_dependencies(pydocs pycomps) - include(../pycopy.cmake) - add_custom_command(TARGET pydocs PRE_BUILD COMMAND set -E $ENV{LD_LIBRARY_PATH} "${LIBCOMPS_OUT}:$ENV{LD_LIBRARY_PATH}") - --add_custom_command(TARGET pydocs COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html -+add_custom_command(TARGET pydocs POST_BUILD -+ COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html - "${CMAKE_CURRENT_SOURCE_DIR}/doc-sources/" - "${CMAKE_CURRENT_BINARY_DIR}/html/" - COMMENT "LDLP $ENV{LD_LIBRARY_PATH}") -diff --git a/libcomps/src/python/pycopy.cmake b/libcomps/src/python/pycopy.cmake -index b22f83595c09b4af8f1c2e49ddbd7755f4c97f0b..0e99e38d791ffd13496bd8fbbf61cd7701e543b7 100644 ---- a/libcomps/src/python/pycopy.cmake -+++ b/libcomps/src/python/pycopy.cmake -@@ -6,9 +6,10 @@ math (EXPR len "${len} - 1") - - #set(pycopy "py${pversion}-copy") - --#if (NOT TARGET ${pycopy}) -+if (NOT TARGET ${pycopy}) -+ add_custom_target(${pycopy} DEPENDS pycomps) -+endif() - --#add_custom_target(${pycopy} DEPENDS pycomps) - set (pycomps_SRCDIR "${PROJECT_SOURCE_DIR}/src/python/src/") - set (pycomps_TESTDIR "${PROJECT_SOURCE_DIR}/src/python/tests/") - set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/python${pversion}") -@@ -16,7 +17,7 @@ set (pycomps_LIBPATH ${PYCOMPS_LIB_PATH})#"${PROJECT_BINARY_DIR}/src/python/src/ - #add_custom_command(TARGET pycopy PRE_BUILD COMMAND ${CMAKE_COMMAND} -E - # make_directory "${CP_DST}") - --add_custom_command(TARGET ${pycopy} COMMAND ${CMAKE_COMMAND} -E -+add_custom_command(TARGET ${pycopy} POST_BUILD COMMAND ${CMAKE_COMMAND} -E - make_directory ${pycomps_LIBPATH}/libcomps/comps/) - - foreach(x RANGE 0 ${len}) -diff --git a/libcomps/tests/CMakeLists.txt b/libcomps/tests/CMakeLists.txt -index 23ced7450afa02977c63f9374a4fee33ae596d98..9d6e428e18d5a234c7be74d957c25961dea30050 100644 ---- a/libcomps/tests/CMakeLists.txt -+++ b/libcomps/tests/CMakeLists.txt -@@ -87,7 +87,5 @@ add_custom_target(test_parse_run - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS test_parse - COMMENT "Running comps_parse test") --target_link_libraries(test_parse_run libcomps) --target_link_libraries(test_comps_run libcomps) - - add_dependencies(ctest test_comps_run test_parse_run) diff --git a/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch b/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch deleted file mode 100644 index 6cd052889a..0000000000 --- a/meta/recipes-devtools/libcomps/libcomps/0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 32447a79e24f8e7e9e0150eb747f34116d63ef38 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Fri, 30 Dec 2016 18:22:09 +0200 -Subject: [PATCH 2/2] Do not set PYTHON_INSTALL_DIR by running python. - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin ---- - libcomps/src/python/src/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libcomps/src/python/src/CMakeLists.txt b/libcomps/src/python/src/CMakeLists.txt -index f813af4..9eebb6c 100644 ---- a/libcomps/src/python/src/CMakeLists.txt -+++ b/libcomps/src/python/src/CMakeLists.txt -@@ -85,7 +85,7 @@ IF (SKBUILD) - INSTALL(FILES libcomps/__init__.py DESTINATION libcomps/src/python/src/libcomps) - INSTALL(TARGETS pycomps LIBRARY DESTINATION libcomps/src/python/src/libcomps) - ELSE () -- EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from sysconfig import get_path; stdout.write(get_path('platlib'))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) -+ #EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from sys import stdout; from sysconfig import get_path; stdout.write(get_path('platlib'))" OUTPUT_VARIABLE PYTHON_INSTALL_DIR) - - INSTALL(FILES ${pycomps_SRCDIR}/libcomps/__init__.py DESTINATION ${PYTHON_INSTALL_DIR}/libcomps) - #INSTALL(FILES ${pycomps_SRCDIR}/tests/__test.py DESTINATION --- -2.25.1 - diff --git a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb b/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb deleted file mode 100644 index 9429c703e1..0000000000 --- a/meta/recipes-devtools/libcomps/libcomps_0.1.21.bb +++ /dev/null @@ -1,24 +0,0 @@ -SUMMARY = "Libcomps is alternative for yum.comps library (which is for managing rpm package groups)." -HOMEPAGE = "https://github.com/rpm-software-management/libcomps" -DESCRIPTION = "Libcomps is alternative for yum.comps library. It's written in pure C as library and there's bindings for python2 and python3." -LICENSE = "GPL-2.0-only" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;protocol=https \ - file://0001-libcomps-Support-builds-with-CMake-4.patch \ - file://0002-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ - " - -SRCREV = "2e973ce22698dd64f472180e3a689755268fb06b" - -inherit cmake setuptools3-base - -DEPENDS = "expat libxml2 zlib" - -EXTRA_OECMAKE = "-DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} \ - -DENABLE_DOCS=OFF \ - -DENABLE_TESTS=OFF" - -OECMAKE_SOURCEPATH = "${S}/libcomps" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/libcomps/libcomps_0.1.22.bb b/meta/recipes-devtools/libcomps/libcomps_0.1.22.bb new file mode 100644 index 0000000000..796b78ef65 --- /dev/null +++ b/meta/recipes-devtools/libcomps/libcomps_0.1.22.bb @@ -0,0 +1,23 @@ +SUMMARY = "Libcomps is alternative for yum.comps library (which is for managing rpm package groups)." +HOMEPAGE = "https://github.com/rpm-software-management/libcomps" +DESCRIPTION = "Libcomps is alternative for yum.comps library. It's written in pure C as library and there's bindings for python2 and python3." +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +SRC_URI = "git://github.com/rpm-software-management/libcomps.git;branch=master;tag=${PV};protocol=https \ + file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \ + " + +SRCREV = "3f0d19b3c3273db4bf0497f08f22317835c1d426" + +inherit cmake setuptools3-base + +DEPENDS = "expat libxml2 zlib" + +EXTRA_OECMAKE = "-DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} \ + -DENABLE_DOCS=OFF \ + -DENABLE_TESTS=OFF" + +OECMAKE_SOURCEPATH = "${S}/libcomps" + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf