diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2017-09-28 21:51:00 +0200 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2017-09-28 21:52:28 +0200 |
commit | 80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d (patch) | |
tree | 02a1ac59ed95ab0232ab21d8ad37230f07a2953d /pkgs/development/compilers/gcc | |
parent | 144914121c158d2b3c738b74cd4b2e127c1d04f5 (diff) | |
download | nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar.gz nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar.bz2 nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar.lz nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar.xz nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.tar.zst nixlib-80c57fd96a8f4aa9b7ef69a01f50f4c264c49f7d.zip |
gcj, gccgo: port fixes for 4.9 to 6
Tested that pdftk builds on linux again, and gccgo6 builds hello-world. The default gcc doesn't rebuild.
Diffstat (limited to 'pkgs/development/compilers/gcc')
-rw-r--r-- | pkgs/development/compilers/gcc/6/default.nix | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 2c8a9696e693..47cb93c19953 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -217,7 +217,8 @@ stdenv.mkDerivation ({ inherit patches; - outputs = [ "out" "lib" "man" "info" ]; + outputs = if langJava || langGo then ["out" "man" "info"] + else [ "out" "lib" "man" "info" ]; setOutputFlags = false; NIX_NO_SELF_RPATH = true; @@ -323,7 +324,11 @@ stdenv.mkDerivation ({ export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET" - ''; + '' + + stdenv.lib.optionalString (langJava || langGo) '' + export lib=$out; + '' + ; dontDisableStatic = true; @@ -565,4 +570,10 @@ stdenv.mkDerivation ({ // optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; } // optionalAttrs (enableMultilib) { dontMoveLib64 = true; } + +// optionalAttrs (langJava) { + postFixup = '' + target="$(echo "$out/libexec/gcc"/*/*/ecj*)" + patchelf --set-rpath "$(patchelf --print-rpath "$target"):$out/lib" "$target" + '';} ) |