--- a/CMakeLists.txt 2025-03-02 01:18:14.318624400 +0800 +++ b/CMakeLists.txt 2025-03-02 01:18:27.362966500 +0800 @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED (VERSION 2.8.12) +CMAKE_MINIMUM_REQUIRED (VERSION 3.12) PROJECT (createrepo_c C) include(GNUInstallDirs) --- a/src/python/CMakeLists.txt 2025-03-02 01:25:16.347289500 +0800 +++ b/src/python/CMakeLists.txt 2025-03-02 01:30:53.575112200 +0800 @@ -1,3 +1,4 @@ +CMAKE_MINIMUM_REQUIRED (VERSION 3.12) MACRO(PYTHON_UNSET) unset(PYTHON_LIBRARY) unset(PYTHON_INCLUDE_DIR) @@ -10,14 +11,12 @@ if (NOT SKBUILD) PYTHON_UNSET() SET(Python_ADDITIONAL_VERSIONS 3.0 CACHE INTERNAL "") - FIND_PACKAGE(PythonInterp 3 REQUIRED) - FIND_PACKAGE(PythonLibs 3 REQUIRED) + FIND_PACKAGE(Python3 COMPONENTS Interpreter Development REQUIRED) endif (NOT SKBUILD) -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) -INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH}) +INCLUDE_DIRECTORIES (${Python3_INCLUDE_DIRS}) -MESSAGE(STATUS "Python install dir is ${PYTHON_INSTALL_DIR}") +MESSAGE(STATUS "Python install dir is ${Python3_SITEARCH}") set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-strict-aliasing") set (CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fno-strict-aliasing") @@ -61,7 +60,7 @@ find_package(PythonExtensions REQUIRED) python_extension_module(_createrepo_c) ELSE () - TARGET_LINK_LIBRARIES(_createrepo_c ${PYTHON_LIBRARY}) + TARGET_LINK_LIBRARIES(_createrepo_c ${Python3_LIBRARIES}) ENDIF () IF (NOT SKBUILD) @@ -72,9 +71,9 @@ INSTALL(FILES createrepo_c/__init__.py DESTINATION src/python/createrepo_c) INSTALL(TARGETS _createrepo_c LIBRARY DESTINATION src/python/createrepo_c) ELSE () - INSTALL(FILES createrepo_c/__init__.py DESTINATION ${PYTHON_INSTALL_DIR}/createrepo_c) - INSTALL(TARGETS _createrepo_c LIBRARY DESTINATION ${PYTHON_INSTALL_DIR}/createrepo_c) + INSTALL(FILES createrepo_c/__init__.py DESTINATION ${Python3_SITEARCH}/createrepo_c) + INSTALL(TARGETS _createrepo_c LIBRARY DESTINATION ${Python3_SITEARCH}/createrepo_c) # Version has to be passed as last argument. - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/utils/setup_for_python_metadata.py install_egg_info --install-dir \$ENV{DESTDIR}/${PYTHON_INSTALL_DIR} ${VERSION})") + INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${Python3_EXECUTABLE} ${CMAKE_SOURCE_DIR}/utils/setup_for_python_metadata.py install_egg_info --install-dir \$ENV{DESTDIR}/${Python3_SITEARCH} ${VERSION})") ENDIF () --- a/tests/python/tests/run_unittests.sh.in 2025-03-02 01:50:04.391277100 +0800 +++ b/tests/python/tests/run_unittests.sh.in 2025-03-02 01:50:13.784612400 +0800 @@ -1 +1 @@ -LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/src/: PYTHONPATH=${CMAKE_BINARY_DIR}/src/python/ WITH_LIBMODULEMD=${WITH_LIBMODULEMD} ${PYTHON_EXECUTABLE} -m unittest discover -s ${CMAKE_CURRENT_SOURCE_DIR}/../ +LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/src/: PYTHONPATH=${CMAKE_BINARY_DIR}/src/python/ WITH_LIBMODULEMD=${WITH_LIBMODULEMD} ${Python3_EXECUTABLE} -m unittest discover -s ${CMAKE_CURRENT_SOURCE_DIR}/../ --- a/tests/python/tests/CMakeLists.txt 2025-03-02 01:49:53.007878700 +0800 +++ b/tests/python/tests/CMakeLists.txt 2025-03-02 02:15:53.271724600 +0800 @@ -1,2 +1,4 @@ +CMAKE_MINIMUM_REQUIRED(VERSION 3.12) +FIND_PACKAGE(Python3) CONFIGURE_FILE("run_unittests.sh.in" "${CMAKE_BINARY_DIR}/tests/python/tests/run_unittests.sh") ADD_TEST(test_python run_unittests.sh -s ${CMAKE_CURRENT_SOURCE_DIR})