diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-09-14 18:27:20 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2015-09-14 18:28:52 +0200 |
commit | b0fd35e17482d72772b245cb779bffcc198d2c4e (patch) | |
tree | 3e8e0f3bd48dce1996a1d3d72bca156121fef9dd /pkgs | |
parent | 7a1aa50908f8a509e9559142a55fe53ea74ddf6c (diff) | |
download | nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar.gz nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar.bz2 nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar.lz nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar.xz nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.tar.zst nixlib-b0fd35e17482d72772b245cb779bffcc198d2c4e.zip |
openjdk8: Add missing setup hooks
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/compilers/openjdk/8.nix | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix index 8afa770cdb27..bb1bba5d1c6f 100644 --- a/pkgs/development/compilers/openjdk/8.nix +++ b/pkgs/development/compilers/openjdk/8.nix @@ -1,7 +1,9 @@ { stdenv, fetchurl, cpio, file, which, unzip, zip, xorg, cups, freetype , alsaLib, bootjdk, cacert, perl, liberation_ttf, fontconfig, zlib +, setJavaClassPath +, minimal ? false +}: -, minimal ? false } : let update = "60"; build = "24"; @@ -98,14 +100,14 @@ let installPhase = '' mkdir -p $out/lib/openjdk $out/share $jre/lib/openjdk - cp -av build"/"*/images/j2sdk-image"/"* $out/lib/openjdk + cp -av build/*/images/j2sdk-image/* $out/lib/openjdk # Move some stuff to top-level. mv $out/lib/openjdk/include $out/include mv $out/lib/openjdk/man $out/share/man # jni.h expects jni_md.h to be in the header search path. - ln -s $out/include/linux"/"*_md.h $out/include/ + ln -s $out/include/linux/*_md.h $out/include/ # Remove some broken manpages. rm -rf $out/share/man/ja* @@ -124,7 +126,7 @@ let ln -s $out/lib/openjdk/bin $out/lib/openjdk/jre/bin # Set PaX markings - exes=$(file $out/lib/openjdk/bin"/"* $jre/lib/openjdk/jre/bin"/"* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//') + exes=$(file $out/lib/openjdk/bin/* $jre/lib/openjdk/jre/bin/* 2> /dev/null | grep -E 'ELF.*(executable|shared object)' | sed -e 's/: .*$//') echo "to mark: *$exes*" for file in $exes; do echo "marking *$file*" @@ -149,6 +151,25 @@ let ln -s $jre/lib/openjdk/jre/bin $jre/bin ''; + # FIXME: this is unnecessary once the multiple-outputs branch is merged. + preFixup = '' + prefix=$jre stripDirs "$stripDebugList" "''${stripDebugFlags:--S}" + patchELF $jre + propagatedNativeBuildInputs+=" $jre" + + # Propagate the setJavaClassPath setup hook from the JRE so that + # any package that depends on the JRE has $CLASSPATH set up + # properly. + mkdir -p $jre/nix-support + echo -n "${setJavaClassPath}" > $jre/nix-support/propagated-native-build-inputs + + # Set JAVA_HOME automatically. + mkdir -p $out/nix-support + cat <<EOF > $out/nix-support/setup-hook + if [ -z "\$JAVA_HOME" ]; then export JAVA_HOME=$out/lib/openjdk; fi + EOF + ''; + postFixup = '' # Build the set of output library directories to rpath against LIBDIRS="" |