about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2016-04-13 18:46:06 +0200
committerMichael Raskin <7c6f434c@mail.ru>2016-04-13 18:46:14 +0200
commitcd5b677576ecab782edcf3f5066c399be7b56e44 (patch)
tree5bdaceb976839b166bc3c68309b422e928b88cd3
parent14b8bdc01fd7352a565535d2b07bea6bbce6173f (diff)
downloadnixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar.gz
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar.bz2
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar.lz
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar.xz
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.tar.zst
nixlib-cd5b677576ecab782edcf3f5066c399be7b56e44.zip
gcc49 (gcj): do not create separate lib output (cyclical dependency), fix ecj1 linking. Does not affect the hash of normal gcc49
-rw-r--r--pkgs/development/compilers/gcc/4.9/default.nix14
1 files changed, 12 insertions, 2 deletions
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index d478196af518..74612ae77548 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -218,7 +218,7 @@ stdenv.mkDerivation ({
 
   inherit patches;
 
-  outputs = [ "out" "lib" "man" "info" ];
+  outputs = if langJava then ["out" "man" "info"] else [ "out" "lib" "man" "info" ];
   setOutputFlags = false;
   NIX_NO_SELF_RPATH = true;
 
@@ -315,7 +315,11 @@ stdenv.mkDerivation ({
        FLAGS_FOR_TARGET=-F$SDKROOT/System/Library/Frameworks \
       )
     fi
-  '';
+  ''
+  + stdenv.lib.optionalString langJava ''
+    export lib=$out;
+  ''
+  ;
 
   dontDisableStatic = true;
 
@@ -538,4 +542,10 @@ stdenv.mkDerivation ({
 // optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
 
 // optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
+
+// optionalAttrs (langJava) {
+     postFixup = ''
+       target="$(echo "$out/libexec/gcc"/*/*/ecj*)"
+       patchelf --set-rpath "$(patchelf --print-rpath "$target"):$out/lib" "$target"
+     '';}
 )