aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--nix/default.nix5
-rw-r--r--nix/stdcxx.patch12
2 files changed, 17 insertions, 0 deletions
diff --git a/nix/default.nix b/nix/default.nix
index e4e12f43..9bae9d83 100644
--- a/nix/default.nix
+++ b/nix/default.nix
@@ -71,6 +71,11 @@ assert lib.assertMsg (!hidpiXWayland) "The option `hidpiXWayland` has been remov
src = lib.cleanSource ../.;
};
+ patches = [
+ # forces GCC to use -std=c++26
+ ./stdcxx.patch
+ ];
+
postPatch = ''
# Fix hardcoded paths to /usr installation
sed -i "s#/usr#$out#" src/render/OpenGL.cpp
diff --git a/nix/stdcxx.patch b/nix/stdcxx.patch
new file mode 100644
index 00000000..032e494d
--- /dev/null
+++ b/nix/stdcxx.patch
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cfbd431f..73e8e0c2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -64,6 +64,7 @@ endif()
+ include_directories(. "src/" "subprojects/udis86/" "protocols/")
+ set(CMAKE_CXX_STANDARD 26)
+ add_compile_options(
++ -std=c++26
+ -Wall
+ -Wextra
+ -Wno-unused-parameter