about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBobby Rong <rjl931189261@126.com>2024-01-07 13:09:15 +0800
committerBobby Rong <rjl931189261@126.com>2024-01-07 14:05:39 +0800
commit09686ed7f85fcdc9bceee2e25f2ad9a38563cc16 (patch)
tree9e5744e45d5f96a2d9ebb73168be9e749019448c
parent91fd5cfa79626e2b74414357cb84a006c00b3b6a (diff)
evolution-data-server: Fix darwin build
Probably caused by the clang 16 bump.

/tmp/nix-build-evolution-data-server-3.50.3.drv-0/evolution-data-server-3.50.3/src/addressbook/libebook-contacts/e-phone-number-private.cpp:186:7: error: no member named 'auto_ptr' in namespace 'std'
        std::auto_ptr<EPhoneNumber> parsed_number(new EPhoneNumber);
        ~~~~~^
-rw-r--r--pkgs/desktops/gnome/core/evolution-data-server/default.nix4
1 files changed, 4 insertions, 0 deletions
diff --git a/pkgs/desktops/gnome/core/evolution-data-server/default.nix b/pkgs/desktops/gnome/core/evolution-data-server/default.nix
index eab06d72f7e62..a6fccb8713b3e 100644
--- a/pkgs/desktops/gnome/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome/core/evolution-data-server/default.nix
@@ -147,6 +147,10 @@ stdenv.mkDerivation rec {
       --replace "-Wl,--no-undefined" ""
     substituteInPlace src/services/evolution-alarm-notify/e-alarm-notify.c \
       --replace "G_OS_WIN32" "__APPLE__"
+  '' + lib.optionalString stdenv.cc.isClang ''
+    # https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/513
+    substituteInPlace src/addressbook/libebook-contacts/e-phone-number-private.cpp \
+      --replace "std::auto_ptr" "std::unique_ptr"
   '';
 
   postInstall = lib.optionalString stdenv.isDarwin ''