public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/plee-the-bear] rawhide: Fix FTBFS with GCC 16 and Boost 1.88
@ 2026-07-14 19:05 Michal Schorm
  0 siblings, 0 replies; only message in thread
From: Michal Schorm @ 2026-07-14 19:05 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/plee-the-bear
            Branch : rawhide
            Commit : 40a2b36c1eb0fd264eff494fec48d0b1c76a73af
            Author : Michal Schorm <mschorm@redhat.com>
            Date   : 2026-07-14T15:17:14+02:00
            Stats  : +43/-1 in 2 file(s)
            URL    : https://src.fedoraproject.org/rpms/plee-the-bear/c/40a2b36c1eb0fd264eff494fec48d0b1c76a73af?branch=rawhide

            Log:
            Fix FTBFS with GCC 16 and Boost 1.88

GCC 16 fix:
The bear-engine headers (from 'bear-factory-devel') use
'namespace concept' which clashes with the C++20 'concept' keyword.
GCC 16 defaults to C++23, causing the 'concept' identifier to be
parsed as a keyword. Set '-DCMAKE_CXX_STANDARD=17' to match the
workaround already used by 'bear-factory' itself.

Boost 1.88 fix:
The deprecated header 'boost/filesystem/convenience.hpp' was removed
in Boost 1.88. Replace it and 'boost/filesystem/path.hpp' with the
all-inclusive 'boost/filesystem.hpp'.

Resolves: rhbz#2434925

Co-Authored-By: Claude AI <noreply@anthropic.com>

---
diff --git a/plee-the-bear-boost-1.88.patch b/plee-the-bear-boost-1.88.patch
new file mode 100644
index 0000000..535d9c9
--- /dev/null
+++ b/plee-the-bear-boost-1.88.patch
@@ -0,0 +1,34 @@
+Fix FTBFS with Boost 1.88: replace removed headers.
+
+The deprecated header 'boost/filesystem/convenience.hpp' was removed in
+Boost 1.88. Replace it and 'boost/filesystem/path.hpp' with the
+all-inclusive 'boost/filesystem.hpp' which provides all the functions
+actually used ('exists()', 'create_directory()', 'remove_all()',
+'is_directory()', 'directory_iterator').
+
+diff -ruN plee-the-bear-0.7.1.orig/lib/src/ptb/frame/code/frame_profile_name.cpp plee-the-bear-0.7.1/lib/src/ptb/frame/code/frame_profile_name.cpp
+--- plee-the-bear-0.7.1.orig/lib/src/ptb/frame/code/frame_profile_name.cpp	2026-07-14 14:25:44.715590866 +0200
++++ plee-the-bear-0.7.1/lib/src/ptb/frame/code/frame_profile_name.cpp	2026-07-14 14:26:54.433719748 +0200
+@@ -26,8 +26,7 @@
+ #include <boost/bind.hpp>
+ #include <libintl.h>
+ 
+-#include <boost/filesystem/path.hpp>
+-#include <boost/filesystem/convenience.hpp>
++#include <boost/filesystem.hpp>
+ 
+ #include <claw/system_info.hpp>
+ 
+diff -ruN plee-the-bear-0.7.1.orig/lib/src/ptb/frame/code/frame_profiles.cpp plee-the-bear-0.7.1/lib/src/ptb/frame/code/frame_profiles.cpp
+--- plee-the-bear-0.7.1.orig/lib/src/ptb/frame/code/frame_profiles.cpp	2026-07-14 14:25:44.715631312 +0200
++++ plee-the-bear-0.7.1/lib/src/ptb/frame/code/frame_profiles.cpp	2026-07-14 14:26:54.433856023 +0200
+@@ -28,8 +28,7 @@
+ #include <libintl.h>
+ #include <boost/bind.hpp>
+ 
+-#include <boost/filesystem/path.hpp>
+-#include <boost/filesystem/convenience.hpp>
++#include <boost/filesystem.hpp>
+ 
+ /*----------------------------------------------------------------------------*/
+ /**

diff --git a/plee-the-bear.spec b/plee-the-bear.spec
index 75f7f9d..eae605d 100644
--- a/plee-the-bear.spec
+++ b/plee-the-bear.spec
@@ -1,6 +1,6 @@
 Name:           plee-the-bear
 Version:        0.7.1
-Release:        24%{?dist}
+Release:        25%{?dist}
 Summary:        2D platform game
 # Code and artwork respectively
 # Automatically converted from old format: GPLv3 and CC-BY-SA - review is highly recommended.
@@ -8,6 +8,7 @@ License:        GPL-3.0-only AND LicenseRef-Callaway-CC-BY-SA
 URL:            https://github.com/j-jorge/plee-the-bear/
 Source0:        https://github.com/j-jorge/plee-the-bear/archive/%{version}.tar.gz
 Patch3:         ptb-docbook2man.patch
+Patch4:         plee-the-bear-boost-1.88.patch
 
 BuildRequires:  gcc-c++
 BuildRequires:  bear-factory-devel
@@ -42,6 +43,7 @@ Plee the Bear is a 2D platform game in the spirit of 1990s console games.
 # we put them in a private-libdir, and use a wrapper to set LD_LIBRARY_PATH
 %cmake \
         -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
+        -DCMAKE_CXX_STANDARD=17 \
         -DCMAKE_BUILD_TYPE=release \
         -DPTB_LIBRARY_PATH=%{_libdir} \
         -DPTB_INSTALL_CUSTOM_LIBRARY_DIR=%{_lib} \
@@ -132,6 +134,12 @@ EOF
 
 
 %changelog
+* Tue Jul 14 2026 Michal Schorm <mschorm@redhat.com> - 0.7.1-25
+- Fix FTBFS with GCC 16: set 'CMAKE_CXX_STANDARD=17' to avoid C++20
+  'concept' keyword clash in bear-engine headers (rhbz#2434925)
+- Fix FTBFS with Boost 1.88: replace removed 'boost/filesystem/convenience.hpp'
+  and 'boost/filesystem/path.hpp' with the all-inclusive 'boost/filesystem.hpp'
+
 * Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.1-24
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-07-14 19:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-07-14 19:05 [rpms/plee-the-bear] rawhide: Fix FTBFS with GCC 16 and Boost 1.88 Michal Schorm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox