From a6d4a0c53c88bf47482b17665fe2675f4cc82bb2 Mon Sep 17 00:00:00 2001 From: Tor Hedin Brønner Date: Fri, 14 Dec 2018 09:54:41 +0100 Subject: valgrind: fix build on darwin We fixed a race condition in #51505 and #51107. This required running autoreconfHook to pick up the `coregrind-makefile-race.patch` patch. Unfortunately this broke darwin's postPatch fixes as autoreconfHook would run afterwards regenerating the fixed makefiles. Moving the postPatch fixes to preConfigure should resolve the issue. I left `postPatch = ""` in to avoid a rebuild on linux. --- pkgs/development/tools/analysis/valgrind/default.nix | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'pkgs/development/tools/analysis/valgrind/default.nix') diff --git a/pkgs/development/tools/analysis/valgrind/default.nix b/pkgs/development/tools/analysis/valgrind/default.nix index ca8d64f9132..d70ec0ed9ac 100644 --- a/pkgs/development/tools/analysis/valgrind/default.nix +++ b/pkgs/development/tools/analysis/valgrind/default.nix @@ -31,12 +31,8 @@ stdenv.mkDerivation rec { in '' echo "Don't derive our xnu version using uname -r." substituteInPlace configure --replace "uname -r" "echo ${OSRELEASE}" - '' - ); - postPatch = stdenv.lib.optionalString (stdenv.isDarwin) - # Apple's GCC doesn't recognize `-arch' (as of version 4.2.1, build 5666). - '' + # Apple's GCC doesn't recognize `-arch' (as of version 4.2.1, build 5666). echo "getting rid of the \`-arch' GCC option..." find -name Makefile\* -exec \ sed -i {} -e's/DARWIN\(.*\)-arch [^ ]\+/DARWIN\1/g' \; @@ -60,7 +56,10 @@ stdenv.mkDerivation rec { echo "substitute hardcoded /usr/bin/ld with ${cctools}/bin/ld" substituteInPlace coregrind/link_tool_exe_darwin.in \ --replace /usr/bin/ld ${cctools}/bin/ld - ''; + ''); + + # To prevent rebuild on linux when moving darwin's postPatch fixes to preConfigure + postPatch = ""; configureFlags = stdenv.lib.optional (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "x86_64-darwin") "--enable-only64bit"; -- cgit 1.4.1