summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2012-05-25 13:49:01 +0000
committerLluís Batlle i Rossell <viric@vicerveza.homeunix.net>2012-05-25 13:49:01 +0000
commit44b2d2121210c8fe3bbd9aa2d3242b39d14e1449 (patch)
treed1da8f21925bcfdf0dd3977a675c96fc78b23f80 /pkgs/development
parente38bf5459263396e61752a2192451c2ffa1dfbab (diff)
downloadnixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar.gz
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar.bz2
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar.lz
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar.xz
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.tar.zst
nixlib-44b2d2121210c8fe3bbd9aa2d3242b39d14e1449.zip
Mingw changes to gcc.
Removing a gcc flag, --enable-version-specific-runtime-libs, that put gcc libs
in a speparate directory instead of /lib; this broke the installation of
libgcc_s.a for the case of "--enable-shared" in mingw-w64. And we already have all gccs in directories apart.

I also add the option --enable-fully-dynamic-string, which is used in the
prebuilt mingw64 toolchain; this way nixpkgs creates ABI-compatible binaries
with mingw64 upstream. (told by jon_y on irc ##mingw)


svn path=/nixpkgs/trunk/; revision=34242
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/compilers/gcc/4.6/default.nix9
1 files changed, 6 insertions, 3 deletions
diff --git a/pkgs/development/compilers/gcc/4.6/default.nix b/pkgs/development/compilers/gcc/4.6/default.nix
index ae626e21804e..c94a9285b29b 100644
--- a/pkgs/development/compilers/gcc/4.6/default.nix
+++ b/pkgs/development/compilers/gcc/4.6/default.nix
@@ -127,14 +127,17 @@ let version = "4.6.3";
           " --enable-threads=win32" +
           " --enable-sjlj-exceptions" +
           " --enable-hash-synchronization" +
-          " --enable-version-specific-runtime-libs" +
           " --disable-libssp" +
           " --disable-nls" +
           " --with-dwarf2" +
           # I think noone uses shared gcc libs in mingw, so we better do the same.
-          # In any case, g++ linking is broken by default with shared libs,
+          # In any case, mingw32 g++ linking is broken by default with shared libs,
           # unless adding "-lsupc++" to any linking command. I don't know why.
-          " --disable-shared"
+          " --disable-shared" +
+          (if cross.config == "x86_64-w64-mingw32" then
+            # To keep ABI compatibility with upstream mingw-w64
+            " --enable-fully-dynamic-string"
+            else "")
           else (if cross.libc == "uclibc" then
             # In uclibc cases, libgomp needs an additional '-ldl'
             # and as I don't know how to pass it, I disable libgomp.