libcomps fails to build with Python 3.9.0a2. /builddir/build/BUILD/libcomps-libcomps-0.1.14/libcomps/src/python Building for python3 -- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) (Required is at least version "3.0") -- Found PythonInterp: /usr/bin/python3 (found suitable version "3.9", minimum required is "3.0") /builddir/build/BUILD/libcomps-libcomps-0.1.14/libcomps/src/python/src Building for python3 CMake Warning (dev) at src/python/pycopy.cmake:20 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:25 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:25 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:25 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:25 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:35 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at src/python/pycopy.cmake:41 (add_custom_command): Policy CMP0040 is not set: The target in the TARGET signature of add_custom_command() must exist and must be defined in the current directory. Run "cmake --help-policy CMP0040" for policy details. Use the cmake_policy command to set the policy and suppress this warning. No TARGET 'py3-copy' has been created in this directory. Call Stack (most recent call first): src/python/src/CMakeLists.txt:73 (include) This warning is for project developers. Use -Wno-dev to suppress it. -- Found Sphinx: /usr/bin/sphinx-build /builddir/build/BUILD/libcomps-libcomps-0.1.14/libcomps/src/python/docs Building for python3 CMake Warning (dev) at tests/CMakeLists.txt:90 (target_link_libraries): Policy CMP0039 is not set: Utility targets may not have link dependencies. Run "cmake --help-policy CMP0039" for policy details. Use the cmake_policy command to set the policy and suppress this warning. Utility target "test_parse_run" should not be used as the target of a target_link_libraries call. This warning is for project developers. Use -Wno-dev to suppress it. CMake Warning (dev) at tests/CMakeLists.txt:91 (target_link_libraries): Policy CMP0039 is not set: Utility targets may not have link dependencies. Run "cmake --help-policy CMP0039" for policy details. Use the cmake_policy command to set the policy and suppress this warning. Utility target "test_comps_run" should not be used as the target of a target_link_libraries call. This warning is for project developers. Use -Wno-dev to suppress it. -- Found Doxygen: /usr/bin/doxygen (found version "1.8.16") found components: doxygen dot CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: PYTHON_LIBRARY (ADVANCED) linked by target "pycomps" in directory /builddir/build/BUILD/libcomps-libcomps-0.1.14/libcomps/src/python/src -- Configuring incomplete, errors occurred! See also "/builddir/build/BUILD/libcomps-libcomps-0.1.14/build-py3/CMakeFiles/CMakeOutput.log". I must admit that I don't understand that error at all. For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.9/fedora-rawhide-x86_64/01139166-libcomps/ For all our attempts to build libcomps with Python 3.9, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.9/package/libcomps/ Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.9: https://copr.fedorainfracloud.org/coprs/g/python/python3.9/ Let us know here if you have any questions. Python 3.9 will be included in Fedora 33, but the initial bootstrapping has already started. A build failure this early in the bootstrap sequence blocks us very much.
The Cmake files in this project are really messy and definitely deserve some work. Anyway, this PR at least fixes Python 3.9 builds: https://github.com/rpm-software-management/libcomps/pull/64
Current libcomps build fine with updated cmake: https://src.fedoraproject.org/rpms/cmake/c/8d55c35ecb54c581f2823c563d5d562aec02c2b9?branch=master