diff --git a/702ec142.patch b/702ec142.patch new file mode 100644 index 0000000..4b7b24b --- /dev/null +++ b/702ec142.patch @@ -0,0 +1,129 @@ +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 +--- + 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 7f8314d..24bf8a2 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 d8d628a..3957e63 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 c4b388c..9c92b2d 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 b22f835..0e99e38 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 23ced74..9d6e428 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/libcomps-0.1.20.tar.gz b/libcomps-0.1.20.tar.gz deleted file mode 100644 index 3e6798e..0000000 --- a/libcomps-0.1.20.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e93299e34da26c14b210f48f324c0c2540515f79f9d748311139f77498317a18 -size 3710869 diff --git a/libcomps-0.1.21.tar.gz b/libcomps-0.1.21.tar.gz new file mode 100644 index 0000000..d0f26a4 --- /dev/null +++ b/libcomps-0.1.21.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84d7555ed795458f3799d57cceccb096634c38461c3db7cb1739d42c038b2785 +size 3711111 diff --git a/libcomps.changes b/libcomps.changes index ba6e422..7c75054 100644 --- a/libcomps.changes +++ b/libcomps.changes @@ -1,3 +1,26 @@ +------------------------------------------------------------------- +Wed Aug 27 09:53:32 UTC 2025 - Ana Guerrero + +- Add patch sphinx-build.patch now /usr/bin/sphinx-build uses alts. + +------------------------------------------------------------------- +Wed Jul 16 13:28:17 UTC 2025 - Dominique Leuenberger + +- Update to version 0.1.21: + + tests: Don't print parsing errors during tests + + tests: Unify formatting of current test announcements + + build: Restore compatiblity with libxml2-2.12.0 + + Fix build: use correct variable for category and env +- Drop libcomps-c99.patch: fixed upstream. +- Add 702ec142.patch: Upstream commit, support builds with cmake + 4.x. + +------------------------------------------------------------------- +Wed Jul 10 14:05:56 UTC 2024 - Martin Jambor + +- Add libcomps-c99.patch in order to avoid C99 violations which are + errors by default with GCC 14. [boo#1221700] + ------------------------------------------------------------------- Mon Dec 4 14:34:19 UTC 2023 - Ana Guerrero diff --git a/libcomps.spec b/libcomps.spec index 3f3a341..df954f4 100644 --- a/libcomps.spec +++ b/libcomps.spec @@ -1,7 +1,7 @@ # # spec file for package libcomps # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2025 SUSE LLC and contributors # Copyright (c) 2021 Neal Gompa . # # All modifications and additions to the file contributed by third parties @@ -19,7 +19,7 @@ %define major 0 %define minor 1 -%define patch 20 +%define patch 21 %define libname %{name}%{major} %define devname %{name}-devel @@ -31,6 +31,8 @@ License: GPL-2.0-or-later Group: Development/Libraries/C and C++ URL: https://github.com/rpm-software-management/libcomps Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +Patch0: %{url}/commit/702ec142.patch +Patch1: sphinx-build.patch BuildRequires: %{python_module setuptools} BuildRequires: check-devel diff --git a/sphinx-build.patch b/sphinx-build.patch new file mode 100644 index 0000000..db148b9 --- /dev/null +++ b/sphinx-build.patch @@ -0,0 +1,13 @@ +/usr/bin/sphinx-build points to alts now, it doesn't work if we call it +from the python interpreter +--- libcomps-0.1.21/libcomps/src/python/docs/CMakeLists.txt ++++ libcomps-0.1.21/libcomps/src/python/docs/CMakeLists.txt +@@ -27,7 +27,7 @@ + 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 POST_BUILD +- COMMAND ${PYTHON_EXECUTABLE} ${SPHINX_EXECUTABLE} -E -b html ++ COMMAND ${SPHINX_EXECUTABLE} -E -b html + "${CMAKE_CURRENT_SOURCE_DIR}/doc-sources/" + "${CMAKE_CURRENT_BINARY_DIR}/html/" + COMMENT "LDLP $ENV{LD_LIBRARY_PATH}")