Bug#1113328: nlopt: FTBFS with CMake 4

roehling at debian.org roehling at debian.org
Mon Sep 1 00:01:19 BST 2025


Source: nlopt
Version: 2.7.1-6
Severity: serious
User: cmake at packages.debian.org
Usertags: cmake-4
Tags: ftbfs, forky, sid

Dear maintainer,

During a test rebuild for CMake 4, nlopt failed to rebuild.

Log Summary:
-------------------------------------------------------------------------------
[...]
 python3-nlopt deb python optional arch=any
Checksums-Sha1:
 a27c2383250e98b194b4a3edc4a41dc7f2c341c1 2044180 nlopt_2.7.1.orig.tar.gz
 39258f942070eb6ddccdde92c06a420ef0cd5c30 15140 nlopt_2.7.1-6.debian.tar.xz
Checksums-Sha256:
 db88232fa5cef0ff6e39943fc63ab6074208831dc0031cf1545f6ecd31ae2a1a 2044180 nlopt_2.7.1.orig.tar.gz
 aab1403b5a5aaf53014d2e7dd2f638e28730f9a51b12ea77ae6326a0f51fc431 15140 nlopt_2.7.1-6.debian.tar.xz
Files:
 ed1a3000a1c8c248d51df126dfcfaa78 2044180 nlopt_2.7.1.orig.tar.gz
 c56a21c2c3faf587203ccec283e67559 15140 nlopt_2.7.1-6.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iIoEARYKADIWIQTumtb5BSD6EfafSCRHew2wJjpU2AUCZy+yNRQcc3RlZmFub3JA
ZGViaWFuLm9yZwAKCRBHew2wJjpU2ITXAP9JIDB555DdIdraWJn2epIS9RpcuLq6
CGEECkE/1z6k/gD9G8PcV5icXQVIPyfxjZXLheg3+0GVQ9iYBM9rDMfO2gs=
=K5KM
-----END PGP SIGNATURE-----

dpkg-source: warning: cannot verify inline signature for ./nlopt_2.7.1-6.dsc: no acceptable signature found
dpkg-source: info: extracting nlopt in /build/reproducible-path/nlopt-2.7.1
dpkg-source: info: unpacking nlopt_2.7.1.orig.tar.gz
dpkg-source: info: unpacking nlopt_2.7.1-6.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying set_cxx_soname.patch
dpkg-source: info: applying docs_skip_mdx_math.patch
dpkg-source: info: applying fix-octave-install-path.patch
dpkg-source: info: applying octave-private-libraries.patch
dpkg-source: info: applying mkdocs-1.3.patch
dpkg-source: info: applying python3.13.patch

Check disk space
----------------

Sufficient free space for build

User Environment
----------------

APT_CONFIG=/var/lib/sbuild/apt.conf
HOME=/sbuild-nonexistent
LANG=C.UTF-8
LC_ALL=C.UTF-8
LOGNAME=sbuild
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/sh
USER=sbuild

dpkg-buildpackage
-----------------

Command: dpkg-buildpackage --sanitize-env -us -uc -b
dpkg-buildpackage: info: source package nlopt
dpkg-buildpackage: info: source version 2.7.1-6
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Stefano Rivera <stefanor at debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
 debian/rules clean
dh clean  --buildsystem=cmake --with python3
   dh_auto_clean -O--buildsystem=cmake
   dh_autoreconf_clean -O--buildsystem=cmake
   dh_clean -O--buildsystem=cmake
 debian/rules binary
dh binary  --buildsystem=cmake --with python3
   dh_update_autotools_config -O--buildsystem=cmake
   dh_autoreconf -O--buildsystem=cmake
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/build/reproducible-path/nlopt-2.7.1'
py3versions: no X-Python3-Version in control file, using supported versions
dh_auto_configure -a -- -DNLOPT_FORTRAN=ON -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.13 -DCMAKE_SKIP_INSTALL_RPATH=TRUE
	cd obj-aarch64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb PKG_CONFIG=/usr/bin/pkg-config cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DFETCHCONTENT_FULLY_DISCONNECTED=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON "-GUnix Makefiles" -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_LIBDIR=lib/aarch64-linux-gnu -DNLOPT_FORTRAN=ON -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.13 -DCMAKE_SKIP_INSTALL_RPATH=TRUE ..
CMake Error at CMakeLists.txt:15 (cmake_minimum_required):
  Compatibility with CMake < 3.5 has been removed from CMake.

  Update the VERSION argument <min> value.  Or, use the <min>...<max> syntax
  to tell CMake that the project requires at least <min> but has been updated
  to work with policies introduced by <max> or earlier.

  Or, add -DCMAKE_POLICY_VERSION_MINIMUM=3.5 to try configuring anyway.


-- Configuring incomplete, errors occurred!
	cd obj-aarch64-linux-gnu && tail -v -n \+0 CMakeCache.txt
==> CMakeCache.txt <==
# This is the CMakeCache file.
# For build in directory: /build/reproducible-path/nlopt-2.7.1/obj-aarch64-linux-gnu
# It was generated by CMake: /usr/bin/cmake
# You can edit this file to change values found and used by cmake.
# If you do not want to change any of the values, simply exit the editor.
# If you do want to change a value, simply edit, save, and exit the editor.
# The syntax for the file is as follows:
# KEY:TYPE=VALUE
# KEY is the name of a variable in the cache.
# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
# VALUE is the current value for the KEY.

########################
# EXTERNAL cache entries
########################

//No help, variable specified on the command line.
CMAKE_BUILD_TYPE:UNINITIALIZED=None

//No help, variable specified on the command line.
CMAKE_EXPORT_NO_PACKAGE_REGISTRY:UNINITIALIZED=ON

//No help, variable specified on the command line.
CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY:UNINITIALIZED=ON

//Value Computed by CMake.
CMAKE_FIND_PACKAGE_REDIRECTS_DIR:STATIC=/build/reproducible-path/nlopt-2.7.1/obj-aarch64-linux-gnu/CMakeFiles/pkgRedirects

//No help, variable specified on the command line.
CMAKE_FIND_USE_PACKAGE_REGISTRY:UNINITIALIZED=OFF

//No help, variable specified on the command line.
CMAKE_INSTALL_LIBDIR:UNINITIALIZED=lib/aarch64-linux-gnu

//No help, variable specified on the command line.
CMAKE_INSTALL_LOCALSTATEDIR:UNINITIALIZED=/var

//No help, variable specified on the command line.
CMAKE_INSTALL_PREFIX:UNINITIALIZED=/usr

//No help, variable specified on the command line.
CMAKE_INSTALL_RUNSTATEDIR:UNINITIALIZED=/run

//No help, variable specified on the command line.
CMAKE_INSTALL_SYSCONFDIR:UNINITIALIZED=/etc

//No help, variable specified on the command line.
CMAKE_SKIP_INSTALL_ALL_DEPENDENCY:UNINITIALIZED=ON

//No help, variable specified on the command line.
CMAKE_SKIP_INSTALL_RPATH:UNINITIALIZED=TRUE

//No help, variable specified on the command line.
CMAKE_VERBOSE_MAKEFILE:UNINITIALIZED=ON

//No help, variable specified on the command line.
FETCHCONTENT_FULLY_DISCONNECTED:UNINITIALIZED=ON

//No help, variable specified on the command line.
NLOPT_FORTRAN:UNINITIALIZED=ON

//No help, variable specified on the command line.
PYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.13


########################
# INTERNAL cache entries
########################

//This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=/build/reproducible-path/nlopt-2.7.1/obj-aarch64-linux-gnu
//Major version of cmake used to create the current loaded cache
CMAKE_CACHE_MAJOR_VERSION:INTERNAL=4
//Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=1
//Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=1
//Path to CMake executable.
CMAKE_COMMAND:INTERNAL=/usr/bin/cmake
//Path to cpack program executable.
CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack
//Path to ctest program executable.
CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest
//Name of external makefile project generator.
CMAKE_EXTRA_GENERATOR:INTERNAL=
//Name of generator.
CMAKE_GENERATOR:INTERNAL=Unix Makefiles
//Generator instance identifier.
CMAKE_GENERATOR_INSTANCE:INTERNAL=
//Name of generator platform.
CMAKE_GENERATOR_PLATFORM:INTERNAL=
//Name of generator toolset.
CMAKE_GENERATOR_TOOLSET:INTERNAL=
//Source directory with the top level CMakeLists.txt file for this
// project
CMAKE_HOME_DIRECTORY:INTERNAL=/build/reproducible-path/nlopt-2.7.1
//Name of CMakeLists files to read
CMAKE_LIST_FILE_NAME:INTERNAL=CMakeLists.txt
//number of local generators
CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
//Path to CMake installation.
CMAKE_ROOT:INTERNAL=/usr/share/cmake-4.1

dh_auto_configure: error: cd obj-aarch64-linux-gnu && DEB_PYTHON_INSTALL_LAYOUT=deb PKG_CONFIG=/usr/bin/pkg-config cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DFETCHCONTENT_FULLY_DISCONNECTED=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run -DCMAKE_SKIP_INSTALL_ALL_DEPENDENCY=ON "-GUnix Makefiles" -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_LIBDIR=lib/aarch64-linux-gnu -DNLOPT_FORTRAN=ON -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.13 -DCMAKE_SKIP_INSTALL_RPATH=TRUE .. returned exit code 1
make[1]: *** [debian/rules:15: override_dh_auto_configure] Error 2
make[1]: Leaving directory '/build/reproducible-path/nlopt-2.7.1'
make: *** [debian/rules:12: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-08-30T09:53:15Z

-------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/artifact/2405438/

The most likely cause of build failures is the removed backwards compatibility for
CMake versions earlier than 3.5. You can find additional information in my
debian-devel announcement:

https://lists.debian.org/debian-devel/2025/04/msg00310.html

About the archive rebuild: The build was made on debusine.debian.net,
using sbuild.

You can find the build task here:
https://debusine.debian.net/work-request/154235/

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Thanks,
Timo



More information about the debian-science-maintainers mailing list