Bug#1112959: glm: FTBFS with CMake 4

roehling at debian.org roehling at debian.org
Sun Aug 31 23:54:33 BST 2025


Source: glm
Version: 0.9.9.8+ds-9
Severity: serious
User: cmake at packages.debian.org
Usertags: cmake-4
Tags: ftbfs, forky, sid

Dear maintainer,

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

Log Summary:
-------------------------------------------------------------------------------
[...]
Standards-Version: 4.7.2
Vcs-Browser: https://salsa.debian.org/science-team/glm
Vcs-Git: https://salsa.debian.org/science-team/glm.git
Testsuite: autopkgtest
Testsuite-Triggers: c++-compiler, cmake, g++, pkg-config
Build-Depends: debhelper-compat (= 13), dpkg-build-api (= 1)
Build-Depends-Indep: cmake (>= 3.20), cmark <!nodoc>, doxygen <!nodoc>
Package-List:
 libglm-dev deb libdevel optional arch=all
 libglm-doc deb doc optional arch=all
Checksums-Sha1:
 38aeae4cc9edd02eb7a410d54a12651171d70dab 2957152 glm_0.9.9.8+ds.orig.tar.xz
 a41ae8cbd9ceea6f84f74e6d89df9362794459fa 15020 glm_0.9.9.8+ds-9.debian.tar.xz
Checksums-Sha256:
 0e678af38374a9d49dbd19f206bbc31564ddcd91449fe48ea8967a51ab3ccd69 2957152 glm_0.9.9.8+ds.orig.tar.xz
 f0f10af2859c18d39ee52d6b592361f8d9b963dffb1aefe0629a26e201e55b3d 15020 glm_0.9.9.8+ds-9.debian.tar.xz
Files:
 55f524b4da5a1b3da5942e9587b668b7 2957152 glm_0.9.9.8+ds.orig.tar.xz
 cdd33453955e9f6eede4fb7f01369dcc 15020 glm_0.9.9.8+ds-9.debian.tar.xz
Dgit: 047de6ed89f18a4e41fba5e042e217e242a83dda debian archive/debian/0.9.9.8+ds-9 https://git.dgit.debian.org/glm

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

iHUEARYKAB0WIQS6VuNIvZRFHt7JcAdKkgiiRVB3pwUCZ/aalQAKCRBKkgiiRVB3
p7/NAQCM8789aHOevmb73DJA/K0pbRmNOL5L2Jr/KmOxLO2kHwEApQcfONZK2vOZ
Wl4WkQlLQcJfO2s1Cvff0TPXsn7ntwQ=
=/JRs
-----END PGP SIGNATURE-----

dpkg-source: warning: cannot verify inline signature for ./glm_0.9.9.8+ds-9.dsc: no acceptable signature found
dpkg-source: info: extracting glm in /build/reproducible-path/glm-0.9.9.8+ds
dpkg-source: info: unpacking glm_0.9.9.8+ds.orig.tar.xz
dpkg-source: info: unpacking glm_0.9.9.8+ds-9.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying 00-tests-no-ipa-modref.patch
dpkg-source: info: applying cmake-install-target.patch
dpkg-source: info: applying doxygen-long-names.patch
dpkg-source: info: applying doxygen-strip-absolute-paths.patch
dpkg-source: info: applying manual-markdown-fixes.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 glm
dpkg-buildpackage: info: source version 0.9.9.8+ds-9
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Andrea Pappacoda <tachi at debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
 debian/rules clean
dh clean
   debian/rules execute_after_dh_auto_clean
make[1]: Entering directory '/build/reproducible-path/glm-0.9.9.8+ds'
rm -f -r doc/html/ manual.html
make[1]: Leaving directory '/build/reproducible-path/glm-0.9.9.8+ds'
   dh_clean
 debian/rules binary
dh binary
   dh_update_autotools_config
   dh_autoreconf
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/build/reproducible-path/glm-0.9.9.8+ds'
dh_auto_configure -- -DGLM_TEST_ENABLE=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 -DGLM_TEST_ENABLE=true ..
CMake Error at CMakeLists.txt:2 (cmake_policy):
  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/glm-0.9.9.8+ds/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/glm-0.9.9.8+ds/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_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.
GLM_TEST_ENABLE:UNINITIALIZED=true


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

//This is the directory where this CMakeCache.txt was created
CMAKE_CACHEFILE_DIR:INTERNAL=/build/reproducible-path/glm-0.9.9.8+ds/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/glm-0.9.9.8+ds
//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 -DGLM_TEST_ENABLE=true .. returned exit code 1
make[1]: *** [debian/rules:13: override_dh_auto_configure] Error 2
make[1]: Leaving directory '/build/reproducible-path/glm-0.9.9.8+ds'
make: *** [debian/rules:4: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2025-08-29T20:12:31Z

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

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/2392973/

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/152976/

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