summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2016-04-01 13:36:59 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2016-04-01 13:36:59 +0200
commit13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656 (patch)
tree862a600ed709b763a798fbb02f47fd6691dde1ae
parentc20a54570a6d6753753d9379d44992ed6743b09b (diff)
downloadnixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar.gz
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar.bz2
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar.lz
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar.xz
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.tar.zst
nixpkgs-13a1c7b8c1ae5c4558aa5dc3a173fb15d55d4656.zip
useOldCXXAbi: Change into a setup hook
Stdenv adapters considered weird.
-rw-r--r--pkgs/build-support/setup-hooks/use-old-cxx-abi.sh1
-rw-r--r--pkgs/games/steam/chrootenv.nix4
-rw-r--r--pkgs/stdenv/adapters.nix6
-rw-r--r--pkgs/top-level/all-packages.nix2
4 files changed, 5 insertions, 8 deletions
diff --git a/pkgs/build-support/setup-hooks/use-old-cxx-abi.sh b/pkgs/build-support/setup-hooks/use-old-cxx-abi.sh
new file mode 100644
index 00000000000..53335d7a9a7
--- /dev/null
+++ b/pkgs/build-support/setup-hooks/use-old-cxx-abi.sh
@@ -0,0 +1 @@
+export NIX_CFLAGS_COMPILE+=" -D_GLIBCXX_USE_CXX11_ABI=0"
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index 35b3611812b..8bb73fc5cef 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -25,8 +25,8 @@ buildFHSUserEnv {
     ]
     ++ lib.optional withJava jdk
     ++ lib.optional withPrimus (primus.override {
-      stdenv = useOldCXXAbi stdenv;
-      stdenv_i686 = useOldCXXAbi pkgsi686Linux.stdenv;
+      stdenv = overrideInStdenv stdenv [ useOldCXXAbi ];
+      stdenv_i686 = overrideInStdenv pkgsi686Linux.stdenv [ useOldCXXAbi ];
     })
     ;
 
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index 8398c45400e..87d3938f13d 100644
--- a/pkgs/stdenv/adapters.nix
+++ b/pkgs/stdenv/adapters.nix
@@ -242,10 +242,4 @@ rec {
       else pkgs.stdenv;
   };
 
-  /* Modify a stdenv so a build uses pre-C++11 ABI by default. */
-  useOldCXXAbi = stdenv: stdenv //
-    { mkDerivation = args: stdenv.mkDerivation (args // {
-        NIX_CFLAGS_COMPILE = toString (args.NIX_CFLAGS_COMPILE or "") + " -D_GLIBCXX_USE_CXX11_ABI=0";
-      });
-    };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index cca23969c83..22303669f9c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -325,6 +325,8 @@ in
 
   separateDebugInfo = makeSetupHook { } ../build-support/setup-hooks/separate-debug-info.sh;
 
+  useOldCXXAbi = makeSetupHook { } ../build-support/setup-hooks/use-old-cxx-abi.sh;
+
 
   ### TOOLS