about summary refs log tree commit diff
path: root/pkgs/development/libraries/waylandpp
diff options
context:
space:
mode:
authorSergei Trofimovich <slyich@gmail.com>2024-01-13 08:30:44 +0000
committerSergei Trofimovich <slyich@gmail.com>2024-01-13 08:32:37 +0000
commiteaebf2363adc296de3a88cb7d06559430b9aa277 (patch)
treed6e8365f1a1571c775418c576841e613b07db720 /pkgs/development/libraries/waylandpp
parent9b19f5e77dd906cb52dade0b7bd280339d2a1f3d (diff)
waylandpp: pull `gcc-13` fix pending upstream inclusion
Without the change downstream projects like `kodi` fail to build on
`gcc-13` as:

    [  6%] Building CXX object build/events/windows/CMakeFiles/events_windows.dir/GUIViewStateEventLog.cpp.o
    In file included from /build/source/xbmc/windowing/wayland/Connection.h:13,
                     from /build/source/xbmc/windowing/wayland/Connection.cpp:9:
    /nix/store/ygbnddg737vq1992xnn57k5j6xjwfkml-waylandpp-1.0.0-dev/include/wayland-client.hpp:167:73: error: 'std::uint32_t' has not been declared
      167 |                            const std::vector<detail::argument_t>& args, std::uint32_t version = 0);
          |                                                                         ^~~
    In file included from /nix/store/ygbnddg737vq1992xnn57k5j6xjwfkml-waylandpp-1.0.0-dev/include/wayland-client.hpp:768:
    /nix/store/ygbnddg737vq1992xnn57k5j6xjwfkml-waylandpp-1.0.0-dev/include/wayland-client-protocol.hpp:169:25: error: 'uint32_t' in namespace 'std' does not name a type; did you mean 'wint_t'?
      169 |   static constexpr std::uint32_t bind_since_version = 1;
          |                         ^~~~~~~~
          |                         wint_t
Diffstat (limited to 'pkgs/development/libraries/waylandpp')
-rw-r--r--pkgs/development/libraries/waylandpp/default.nix13
1 files changed, 13 insertions, 0 deletions
diff --git a/pkgs/development/libraries/waylandpp/default.nix b/pkgs/development/libraries/waylandpp/default.nix
index c0b48ea17c6f5..551712f89f5f3 100644
--- a/pkgs/development/libraries/waylandpp/default.nix
+++ b/pkgs/development/libraries/waylandpp/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , makeFontsConf
 , pkg-config
@@ -24,6 +25,18 @@ stdenv.mkDerivation rec {
     hash = "sha256-Dw2RnLLyhykikHps1in+euHksO+ERbATbfmbUFOJklg=";
   };
 
+  patches = [
+    # Pull fixes for gcc-13 compatibility:
+    #   https://github.com/NilsBrause/waylandpp/pull/71
+    # Without the change `kodi` fails to find `uint32_t` in `waylandpp`
+    # headers.
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url = "https://github.com/NilsBrause/waylandpp/commit/3c441910aa25f57df2a4db55f75f5d99cea86620.patch";
+      hash = "sha256-bxHMP09zCwUKD0M63C1FqQySAN9hr+7t/DyFDRwdtCo=";
+    })
+  ];
+
   cmakeFlags = [
     "-DCMAKE_INSTALL_DATADIR=${placeholder "dev"}"
   ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [