Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1788100 - libcomps fails to build with Python 3.9
Summary: libcomps fails to build with Python 3.9
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: libcomps
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Marek Blaha
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON39
TreeView+ depends on / blocked
 
Reported: 2020-01-06 12:21 UTC by Miro Hrončok
Modified: 2020-01-17 18:12 UTC (History)
8 users (show)

Fixed In Version: cmake-3.16.1-2.fc32
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-01-17 18:12:52 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Miro Hrončok 2020-01-06 12:21:49 UTC
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.

Comment 1 Marek Blaha 2020-01-07 08:11:55 UTC
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

Comment 2 Miro Hrončok 2020-01-17 18:12:52 UTC
Current libcomps build fine with updated cmake: https://src.fedoraproject.org/rpms/cmake/c/8d55c35ecb54c581f2823c563d5d562aec02c2b9?branch=master


Note You need to log in before you can comment on or make changes to this bug.