#1112753 barrier: FTBFS with CMake 4

#1112753#5
Date:
2025-08-31 22:36:29 UTC
From:
To:
Dear maintainer,

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

Log Summary:
-------------------------------------------------------------------------------
[...]
Files:
 11896572037f29c94c476dc448889d0c 138560 barrier_2.4.0+dfsg.orig-gulrak-filesystem.tar.xz
 dcd26c7df58ac8f3454eba8870f88bc0 890764 barrier_2.4.0+dfsg.orig.tar.xz
 17cec4a226b67d640ffcebdde134288e 5820 barrier_2.4.0+dfsg-4.debian.tar.xz
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCQAdFiEEjbPlhoZdK0orGFpcUAHhsJqjdEsFAmSwzwcACgkQUAHhsJqj
dEvxrxAAyyodRcd4CM/zDpUonOet5XjsV0KrGjoHDY/kf6UpSDJcOti3/krZ4pIa
rQyKctA/vaJ1D6ks1biWclpN8opZB6PWiY23zXWmKAseSfcjiXyA2YTxFsk6YI81
NmjczehLtqJkAmLMkmY0+1I4nEiuk6W8qBn7qg1yB7v6wmtBCRUcGzMfxeLA0Ibq
ykn43aPHVVBfZQDKZYZffnOZxXl87dCNGXlEP5NBFrkWxQNtE+oyZlGfwIaH1CaE
aa41+8CBIEq0kP4SAwou+te9K5AGiCNDx/iL+NZffoECpTYgGlbT3dUZBpEpFFT6
a4BD7SAEe4foFSzWb47w9ZBfY7Ilpxm59yChO8bxc6CNu6n1B2Ye8q7PIHD0SYP9
EZDIxzKKqWTlJCfeKS/hTbZaQl0nroh7691f0lEWoWdAiZOH4dqiv9BQ++wO/WR/
00c5xPlC+m/msggEssWgz2ZMYkqks82fgpzcN2Euoe7S92qN9RbBG5wQ+aLJiyUz
c0NjnHztePvnlN2L0lGz4WCOVvY+me6SB3jabebYOxaTfevVsnz6rk5z5WIaLA+j
G7/YYVukqQ2VSDbaWK170U7N8LfeF3RhnFsDVQE/U1BIUiyCgap+omrqL/6Z3Vbv
V35pIZpN9bMt7WtBpf+W9aqMpuD4OkV3twtYAOshPj9vJBPjP8M=
=NLX3
-----END PGP SIGNATURE-----

dpkg-source: warning: cannot verify inline signature for ./barrier_2.4.0+dfsg-4.dsc: no acceptable signature found
dpkg-source: info: extracting barrier in /build/reproducible-path/barrier-2.4.0+dfsg
dpkg-source: info: unpacking barrier_2.4.0+dfsg.orig.tar.xz
dpkg-source: info: unpacking barrier_2.4.0+dfsg.orig-gulrak-filesystem.tar.xz
dpkg-source: info: unpacking barrier_2.4.0+dfsg-4.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying include-gulrak.patch
dpkg-source: info: applying fix-includes.patch
dpkg-source: info: applying allow_gtest_exclusion.patch
dpkg-source: info: applying add-missing-includes-for-gcc13.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 barrier
dpkg-buildpackage: info: source version 2.4.0+dfsg-4
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Unit 193 <unit193@debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture arm64
 debian/rules clean
dh clean --builddirectory=builddir
   dh_auto_clean -O--builddirectory=builddir
   dh_autoreconf_clean -O--builddirectory=builddir
   dh_clean -O--builddirectory=builddir
 debian/rules binary
dh binary --builddirectory=builddir
   dh_update_autotools_config -O--builddirectory=builddir
   dh_autoreconf -O--builddirectory=builddir
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/build/reproducible-path/barrier-2.4.0+dfsg'
dh_auto_configure --builddirectory=builddir -- -DBARRIER_USE_EXTERNAL_GTEST=ON -DBARRIER_BUILD_TESTS=no
	cd builddir && 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 -DBARRIER_USE_EXTERNAL_GTEST=ON -DBARRIER_BUILD_TESTS=no ..
CMake Error at CMakeLists.txt:18 (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.
------------------------------------------------------------------------------- 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/2389196/ 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/152422/ 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
#1112753#14
Date:
2025-09-01 11:51:07 UTC
From:
To:
I have downgraded the bug to non-RC severity temporarily and reverted
CMake in unstable to version 3.31.6. I plan to re-upgrade in about a
month's time. I realize that despite my April announcement, the upload
to unstable came rather surprising, and I don't want to cause
unnecessary pain.

Also, the build log URL has an unfortunate mistake. The correct URL
should include the workspace, i.e.,

https://debusine.debian.net/debian/developers/artifact/XXXX

CMake 4 will also be available in experimental again, so it can be
used to verify that the bug is fixed.

Cheers
Timo

#1112753#21
Date:
2026-04-25 12:29:21 UTC
From:
To:
Hi,

I prepared an attached debdiff for the current unstable source package,
barrier 2.4.0+dfsg-4.

The debdiff adds two patches in debian/patches:

- cmake4-compat.patch
  - raise cmake_minimum_required from 3.4 to 3.5 in:
    - CMakeLists.txt
    - cmake/Version.cmake
    - src/gui/CMakeLists.txt

- guiunittests-cxx17.patch
  - add:
    - target_compile_features(guiunittests PRIVATE cxx_std_17)

The C++17 change is needed because current unstable gtest rejects older
language modes for guiunittests.

Validation performed:

- dpkg-buildpackage -S -us -uc
- clean amd64 sbuild in unstable

The clean amd64 build completed the Debian test sequence successfully:

- builddir/bin/guiunittests: 58 tests passed
- xvfb-run -a builddir/bin/integtests: 20 tests passed
- builddir/bin/unittests: 135 tests passed

While investigating this, I also checked the older #1057544 failure path
again. After fixing the CMake 4 and guiunittests issues above, the xvfb-run
integtests path no longer reproduced that older failure on amd64.

Regards,
James