summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2010-10-05 13:45:53 +0000
committerPeter Simons <simons@cryp.to>2010-10-05 13:45:53 +0000
commit5649af8523e2f7ea038fce35fdacf69868a7cc86 (patch)
treeca4618cdfcbf854455dac15900591e3b5541c626 /pkgs/development
parent00dd2f39ed98aa2690e136182b3bb782b703882a (diff)
downloadnixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar.gz
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar.bz2
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar.lz
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar.xz
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.tar.zst
nixlib-5649af8523e2f7ea038fce35fdacf69868a7cc86.zip
pkgs/development/libraries/pcre: fixed build on Darwin
The gcc version used on Darwin fails to compile the C++ interface to the PCRE
library when optimizations are enabled. Building C++ code with -O0 remedies the
problem. This is unsatisfactory, though, because the resulting library is
likely to perform more poorly than it would if built with -O2 or -O3.

svn path=/nixpkgs/trunk/; revision=24072
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/libraries/pcre/default.nix5
1 files changed, 5 insertions, 0 deletions
diff --git a/pkgs/development/libraries/pcre/default.nix b/pkgs/development/libraries/pcre/default.nix
index fba3844bf8e4..c831f004c121 100644
--- a/pkgs/development/libraries/pcre/default.nix
+++ b/pkgs/development/libraries/pcre/default.nix
@@ -8,7 +8,12 @@ stdenv.mkDerivation {
     sha256 = "1zsqk352mx2zklf9bgpg9d88ckfdssbbbiyslhrycfckw8m3qpvr";
   };
 
+  # The compiler on Darwin crashes with an internal error while building the
+  # C++ interface. Disabling optimizations on that platform remedies the
+  # problem. In case we ever update the Darwin GCC version, the exception for
+  # that platform ought to be removed.
   configureFlags = ''
+    CPPFLAGS=-NDEBUG CFLAGS=-O3 CXXFLAGS=${if stdenv.isDarwin then "-O0" else "-O3"}
     ${if unicodeSupport then "--enable-unicode-properties" else ""}
     ${if !cplusplusSupport then "--disable-cpp" else ""}
   '';