more java...
This commit is contained in:
parent
c2c92aa452
commit
a88128d90a
33
ant.nix
33
ant.nix
@ -1,33 +0,0 @@
|
|||||||
{stdenv, fetchzip, jdk8, junit, breakpointHook}: stdenv.mkDerivation rec {
|
|
||||||
pname = "ant";
|
|
||||||
version = "1.7.0";
|
|
||||||
|
|
||||||
src = fetchzip {
|
|
||||||
url = "https://archive.apache.org/dist/ant/source/apache-ant-1.7.0-src.tar.gz";
|
|
||||||
hash = "sha256-IFAA0jVdnK5a6ElnPd8K24N4i2XyvlhfPmJlu2wrPgM=";
|
|
||||||
};
|
|
||||||
|
|
||||||
#patches = [./mysql.patch];
|
|
||||||
|
|
||||||
nativeBuildInputs = [jdk8];
|
|
||||||
buildInputs = [breakpointHook];
|
|
||||||
#buildInputs = [autoreconfHook ncurses breakpointHook];
|
|
||||||
#env = {
|
|
||||||
# ACLOCAL_PATH="${libtool}/share/aclocal";
|
|
||||||
# NIX_CFLAGS_COMPILE="-fpermissive";
|
|
||||||
#};
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
#cp ${junit}/junit-4.1.jar ./lib/junit.jar
|
|
||||||
export CLASSPATH="${junit}/junit-4.1.jar"
|
|
||||||
./build.sh
|
|
||||||
#bash ./gradlew build
|
|
||||||
#bash ./gradlew install -Pgradle_installPath=$out
|
|
||||||
'';
|
|
||||||
|
|
||||||
#configureFlags = ["--with-plugins=innobase"];
|
|
||||||
|
|
||||||
#postInstall = ''
|
|
||||||
# ln -s $out/libexec/mysqld $out/bin/mysqld
|
|
||||||
#'';
|
|
||||||
}
|
|
||||||
24
gradle/ant.patch
Normal file
24
gradle/ant.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
diff --git a/build.xml b/build.xml
|
||||||
|
index bfb55e9..838464c 100644
|
||||||
|
--- a/build.xml
|
||||||
|
+++ b/build.xml
|
||||||
|
@@ -603,7 +603,8 @@
|
||||||
|
deprecation="${deprecation}"
|
||||||
|
target="${javac.target}"
|
||||||
|
source="${javac.source}"
|
||||||
|
- optimize="${optimize}" >
|
||||||
|
+ optimize="${optimize}"
|
||||||
|
+ bootclasspath="${bootclasspath}" >
|
||||||
|
<classpath refid="classpath"/>
|
||||||
|
|
||||||
|
<selector id="conditional-patterns">
|
||||||
|
@@ -1406,7 +1407,8 @@
|
||||||
|
debug="${debug}"
|
||||||
|
target="${javac.target}"
|
||||||
|
source="${javac.source}"
|
||||||
|
- deprecation="${deprecation}" >
|
||||||
|
+ deprecation="${deprecation}"
|
||||||
|
+ bootclasspath="${bootclasspath}" >
|
||||||
|
<classpath refid="tests-classpath"/>
|
||||||
|
|
||||||
|
<selector refid="conditional-patterns"/>
|
||||||
27
gradle/ant_1_6_5.nix
Normal file
27
gradle/ant_1_6_5.nix
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{stdenv, fetchzip, ecj, jamvm_1_5_4, gnu-classpath_98, ant-bootstrap}: stdenv.mkDerivation rec {
|
||||||
|
pname = "ant";
|
||||||
|
version = "1.6.5";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://archive.apache.org/dist/ant/source/apache-ant-1.6.5-src.tar.gz";
|
||||||
|
hash = "sha256-UJaFPX3KtFa06B4eDu2ZNMO+GreTtdEYbhGrKr3soUI=";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [./ant.patch];
|
||||||
|
|
||||||
|
nativeBuildInputs = [jamvm_1_5_4 ant-bootstrap];
|
||||||
|
env = {
|
||||||
|
JAVA_HOME="${gnu-classpath_98}";
|
||||||
|
CLASSPATH="${ecj}/bin/ecj.jar";
|
||||||
|
ANT_OPTS="-Dbuild.compiler=org.eclipse.jdt.core.JDTCompilerAdapter -Dbootclasspath=${gnu-classpath_98}/share/classpath/glibj.zip";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
ant
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -r ./dist/* $out/
|
||||||
|
'';
|
||||||
|
}
|
||||||
25
gradle/ant_1_7_0.nix
Normal file
25
gradle/ant_1_7_0.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{stdenv, fetchzip, jdk6, junit, breakpointHook}: stdenv.mkDerivation rec {
|
||||||
|
pname = "ant";
|
||||||
|
version = "1.7.0";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://archive.apache.org/dist/ant/source/apache-ant-1.7.0-src.tar.gz";
|
||||||
|
hash = "sha256-IFAA0jVdnK5a6ElnPd8K24N4i2XyvlhfPmJlu2wrPgM=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [jdk6];
|
||||||
|
buildInputs = [breakpointHook];
|
||||||
|
env = {
|
||||||
|
JAVA_HOME="${jdk6}";
|
||||||
|
CLASSPATH="${junit}/junit-4.1.jar";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
./build.sh
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -r ./dist/* $out/
|
||||||
|
'';
|
||||||
|
}
|
||||||
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchFromGitHub, temurin-jre-bin-8, ant}: stdenv.mkDerivation rec {
|
{stdenv, fetchFromGitHub, jdk6, ant_1_7_0}: stdenv.mkDerivation rec {
|
||||||
pname = "gradle";
|
pname = "gradle";
|
||||||
version = "0.0.2";
|
version = "0.0.2";
|
||||||
|
|
||||||
@ -11,15 +11,14 @@
|
|||||||
|
|
||||||
#patches = [./mysql.patch];
|
#patches = [./mysql.patch];
|
||||||
|
|
||||||
nativeBuildInputs = [temurin-jre-bin-8 ant];
|
nativeBuildInputs = [jdk6 ant_1_7_0];
|
||||||
#buildInputs = [autoreconfHook ncurses breakpointHook];
|
#buildInputs = [autoreconfHook ncurses breakpointHook];
|
||||||
#env = {
|
env = {
|
||||||
# ACLOCAL_PATH="${libtool}/share/aclocal";
|
JAVA_HOME="${jdk6}";
|
||||||
# NIX_CFLAGS_COMPILE="-fpermissive";
|
};
|
||||||
#};
|
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
./gradlew
|
ant
|
||||||
#bash ./gradlew build
|
#bash ./gradlew build
|
||||||
#bash ./gradlew install -Pgradle_installPath=$out
|
#bash ./gradlew install -Pgradle_installPath=$out
|
||||||
'';
|
'';
|
||||||
25
gradle/junit.nix
Normal file
25
gradle/junit.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{stdenv, fetchFromGitHub, jdk6, ant_1_6_5}: stdenv.mkDerivation rec {
|
||||||
|
pname = "junit";
|
||||||
|
version = "4.0.0";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "junit-team";
|
||||||
|
repo = pname;
|
||||||
|
rev = "5139a1be36da4ed64a860de82e7d74f2e5405037";
|
||||||
|
hash = "sha256-ZDu3rQ5y0D7pREmnJjUwiWDbTv+TgJPMZjJ4LVczoLU=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [jdk6 ant_1_6_5];
|
||||||
|
env = {
|
||||||
|
JAVA_HOME="${jdk6}";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildPhase = ''
|
||||||
|
ant
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -r ./junit4.1/* $out/
|
||||||
|
'';
|
||||||
|
}
|
||||||
@ -7,8 +7,6 @@
|
|||||||
hash = "sha256-UJaFPX3KtFa06B4eDu2ZNMO+GreTtdEYbhGrKr3soUI=";
|
hash = "sha256-UJaFPX3KtFa06B4eDu2ZNMO+GreTtdEYbhGrKr3soUI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
#patches = [./mysql.patch];
|
|
||||||
|
|
||||||
nativeBuildInputs = [gnu-classpath_93 jamvm_1_5_1];
|
nativeBuildInputs = [gnu-classpath_93 jamvm_1_5_1];
|
||||||
env = {
|
env = {
|
||||||
JAVA_HOME="${gnu-classpath_93}";
|
JAVA_HOME="${gnu-classpath_93}";
|
||||||
@ -18,18 +16,10 @@
|
|||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
./build.sh
|
./build.sh
|
||||||
#bash ./gradlew build
|
|
||||||
#bash ./gradlew install -Pgradle_installPath=$out
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir $out
|
mkdir $out
|
||||||
cp -r ./dist/* $out/
|
cp -r ./dist/* $out/
|
||||||
'';
|
'';
|
||||||
|
|
||||||
#configureFlags = ["--with-plugins=innobase"];
|
|
||||||
|
|
||||||
#postInstall = ''
|
|
||||||
# ln -s $out/libexec/mysqld $out/bin/mysqld
|
|
||||||
#'';
|
|
||||||
}
|
}
|
||||||
|
|||||||
60
jdk/dlj-bundle-builder.sh
Normal file
60
jdk/dlj-bundle-builder.sh
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
source $stdenv/setup
|
||||||
|
|
||||||
|
echo "Unpacking distribution"
|
||||||
|
unzip ${src} || true
|
||||||
|
|
||||||
|
# set the dynamic linker of unpack200, necessary for construct script
|
||||||
|
echo "patching unpack200"
|
||||||
|
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" --set-rpath "" */bin/unpack200
|
||||||
|
|
||||||
|
echo "constructing JDK and JRE installations"
|
||||||
|
if test -z "$installjdk"; then
|
||||||
|
sh ${construct} . tmp-linux-jdk tmp-linux-jre
|
||||||
|
mkdir -p $out
|
||||||
|
cp -R tmp-linux-jre/* $out
|
||||||
|
else
|
||||||
|
sh ${construct} . $out tmp-linux-jre
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "removing files at top level of installation"
|
||||||
|
for file in $out/*
|
||||||
|
do
|
||||||
|
if test -f $file ; then
|
||||||
|
rm $file
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
rm -rf $out/docs
|
||||||
|
|
||||||
|
# construct the rpath
|
||||||
|
rpath=
|
||||||
|
for i in $libraries; do
|
||||||
|
rpath=$rpath${rpath:+:}$i/lib
|
||||||
|
done
|
||||||
|
|
||||||
|
if test -z "$installjdk"; then
|
||||||
|
jrePath=$out
|
||||||
|
else
|
||||||
|
jrePath=$out/jre
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$jce"; then
|
||||||
|
unzip $jce
|
||||||
|
cp -v jce/*.jar $jrePath/lib/security
|
||||||
|
fi
|
||||||
|
|
||||||
|
rpath=$rpath${rpath:+:}$jrePath/lib/$architecture/jli
|
||||||
|
|
||||||
|
# set all the dynamic linkers
|
||||||
|
find $out -type f -perm -0100 \
|
||||||
|
-exec patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||||
|
--set-rpath "$rpath" {} \;
|
||||||
|
|
||||||
|
find $out -name "*.so" -exec patchelf --set-rpath "$rpath" {} \;
|
||||||
|
|
||||||
|
if test -z "$pluginSupport"; then
|
||||||
|
rm -f $out/bin/javaws
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir $jrePath/lib/$architecture/plugins
|
||||||
|
ln -s $jrePath/lib/$architecture/libnpjp2.so $jrePath/lib/$architecture/plugins
|
||||||
|
|
||||||
@ -1,4 +1,4 @@
|
|||||||
{stdenv, fetchzip, ant_1_6, gnu-classpath_93, jamvm_1_5_1, jikes}: stdenv.mkDerivation rec {
|
{stdenv, fetchzip, ant-bootstrap, gnu-classpath_93, jamvm_1_5_1, jikes}: stdenv.mkDerivation rec {
|
||||||
pname = "ecj";
|
pname = "ecj";
|
||||||
version = "3.2.1"; #Compiler meldet 3.2.1 bei 3.2.2 source
|
version = "3.2.1"; #Compiler meldet 3.2.1 bei 3.2.2 source
|
||||||
|
|
||||||
@ -8,7 +8,7 @@
|
|||||||
stripRoot=false;
|
stripRoot=false;
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ant_1_6 jamvm_1_5_1 jikes];
|
nativeBuildInputs = [ant-bootstrap jamvm_1_5_1 jikes];
|
||||||
|
|
||||||
env = {
|
env = {
|
||||||
JAVA_HOME="${gnu-classpath_93}";
|
JAVA_HOME="${gnu-classpath_93}";
|
||||||
|
|||||||
@ -15,10 +15,10 @@
|
|||||||
|
|
||||||
configureFlags = ["--disable-gtk-peer" "--disable-gconf-peer" "--disable-plugin" "--disable-gjdoc"];
|
configureFlags = ["--disable-gtk-peer" "--disable-gconf-peer" "--disable-plugin" "--disable-gjdoc"];
|
||||||
|
|
||||||
/*postInstall = ''
|
postInstall = ''
|
||||||
mkdir -p $out/jre/lib
|
#mkdir -p $out/jre/lib
|
||||||
ln -s $out/share/classpath/tools.zip $out/lib/tools.jar
|
#ln -s $out/share/classpath/tools.zip $out/lib/tools.jar
|
||||||
ln -s $out/share/classpath/glibj.zip $out/jre/lib/rt.jar
|
#ln -s $out/share/classpath/glibj.zip $out/jre/lib/rt.jar
|
||||||
|
|
||||||
cat << 'EOF' > $out/bin/javac
|
cat << 'EOF' > $out/bin/javac
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
@ -32,5 +32,5 @@ EOF
|
|||||||
exec jamvm "$@"
|
exec jamvm "$@"
|
||||||
EOF
|
EOF
|
||||||
chmod +x $out/bin/java
|
chmod +x $out/bin/java
|
||||||
'';*/
|
'';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,7 +20,7 @@ alsa-lib, cups, motif, wget, cpio, fastjar, libxslt, xorg, zlib, libjpeg, libpng
|
|||||||
xorg.libX11.dev xorg.libXt.dev xorg.libXinerama.dev xorg.libXcomposite.dev xorg.libXrender.dev xorg.libXtst breakpointHook];
|
xorg.libX11.dev xorg.libXt.dev xorg.libXinerama.dev xorg.libXcomposite.dev xorg.libXrender.dev xorg.libXtst breakpointHook];
|
||||||
|
|
||||||
env = {
|
env = {
|
||||||
# BUILD_CORBA="false";
|
BUILD_CORBA="false";
|
||||||
# BUILD_JAXP="false";
|
# BUILD_JAXP="false";
|
||||||
BUILD_JAXWS="false";
|
BUILD_JAXWS="false";
|
||||||
# NO_DOCS="true";
|
# NO_DOCS="true";
|
||||||
@ -82,7 +82,7 @@ alsa-lib, cups, motif, wget, cpio, fastjar, libxslt, xorg, zlib, libjpeg, libpng
|
|||||||
# cp -r ./dist/* $out/
|
# cp -r ./dist/* $out/
|
||||||
#'';
|
#'';
|
||||||
|
|
||||||
configureFlags = ["--with-ecj" "--with-java=${jamvm}/bin/jamvm" "--with-jdk-home=${gnu-classpath}" "--without-rhino" "--disable-downloading" "--disable-tests" "--enable-nss"];
|
configureFlags = ["--with-ecj" "--with-java=${jamvm}/bin/jamvm" "--with-jdk-home=${gnu-classpath}" "--without-rhino" "--disable-downloading" "--disable-tests" "--disable-bootstrap-tools"];
|
||||||
|
|
||||||
#postInstall = ''
|
#postInstall = ''
|
||||||
# ln -s $out/libexec/mysqld $out/bin/mysqld
|
# ln -s $out/libexec/mysqld $out/bin/mysqld
|
||||||
|
|||||||
273
jdk/jdk6-construct.sh
Normal file
273
jdk/jdk6-construct.sh
Normal file
@ -0,0 +1,273 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# construct.sh
|
||||||
|
# example construction of JRE and JDK directories from the DLJ bundles
|
||||||
|
#
|
||||||
|
# Copyright © 2006 Sun Microsystems, Inc.
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
# a copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be
|
||||||
|
# included in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||||
|
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||||
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||||
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Sun, Sun Microsystems, the Sun logo and Java, Java HotSpot,
|
||||||
|
# and JVM trademarks or registered trademarks of Sun Microsystems,
|
||||||
|
# Inc. in the U.S. and other countries.
|
||||||
|
|
||||||
|
|
||||||
|
program=`basename $0`
|
||||||
|
|
||||||
|
usage () {
|
||||||
|
echo "usage: ${program} path/to/unbundle-jdk path/to/linux-jdk path/to/linux-jre"
|
||||||
|
}
|
||||||
|
|
||||||
|
getargs() {
|
||||||
|
undir=$1
|
||||||
|
jdkdir=$2
|
||||||
|
jredir=$3
|
||||||
|
if [ ! -d $undir ]; then
|
||||||
|
echo "${program}: unbundle directory not found: $undir"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
# make sure javahome is the JDK
|
||||||
|
javahome=`echo $undir/*/db/demo`
|
||||||
|
if [ ! -d $javahome ]; then
|
||||||
|
echo "${program}: unbundle directory incorrect: $undir"
|
||||||
|
echo " expecting $undir/jdk1.5.0_xx"
|
||||||
|
exit 2
|
||||||
|
else
|
||||||
|
javahome=$(dirname $(dirname $javahome))
|
||||||
|
fi
|
||||||
|
# verify JDK dir
|
||||||
|
jdkdirp=`dirname $jdkdir`
|
||||||
|
jdkbase=`basename $jdkdir`
|
||||||
|
if [ ! -d $jdkdirp ]; then
|
||||||
|
echo "${program}: parent directory for JDK does not exist: $jdkdirp"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
savedir=`pwd`
|
||||||
|
cd $jdkdirp
|
||||||
|
jdkdirp=`pwd`
|
||||||
|
cd $savedir
|
||||||
|
jdkdir=$jdkdirp/$jdkbase
|
||||||
|
# verify JRE dir
|
||||||
|
jredirp=`dirname $jredir`
|
||||||
|
jrebase=`basename $jredir`
|
||||||
|
if [ ! -d $jredirp ]; then
|
||||||
|
echo "${program}: parent directory for JRE does not exist: $jredirp"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
savedir=`pwd`
|
||||||
|
cd $jredirp
|
||||||
|
jredirp=`pwd`
|
||||||
|
cd $savedir
|
||||||
|
jredir=$jredirp/$jrebase
|
||||||
|
}
|
||||||
|
|
||||||
|
checkfiles() {
|
||||||
|
if [ -r $jdkdir ]; then
|
||||||
|
echo "${program}: directory for JDK already exists: $jdkdir"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
if [ -r $jredir ]; then
|
||||||
|
echo "${program}: directory for JRE already exists: $jredir"
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
copytree() {
|
||||||
|
echo "copying over the JDK tree..."
|
||||||
|
cp -a $javahome $jdkdir
|
||||||
|
}
|
||||||
|
|
||||||
|
linkrel() {
|
||||||
|
target=$1
|
||||||
|
link=$2
|
||||||
|
# make a softlink from the $link to the $target
|
||||||
|
# make this a relative link
|
||||||
|
targetb=(`echo $target | tr '/' ' '`)
|
||||||
|
linkb=(`echo $link | tr '/' ' '`)
|
||||||
|
(( n = ${#targetb[*]} ))
|
||||||
|
(( m = ${#linkb[*]} ))
|
||||||
|
c=$n # common length
|
||||||
|
if [ $m -lt $c ]; then
|
||||||
|
(( c = m ))
|
||||||
|
fi
|
||||||
|
for (( i = 0 ; i < c ; i++ )); do
|
||||||
|
if [ ${targetb[$i]} != ${linkb[$i]} ]; then
|
||||||
|
# echo components differ, stopping
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
rel=""
|
||||||
|
for (( j = i + 1; j < m ; j++ )); do
|
||||||
|
if [ -z $rel ]; then
|
||||||
|
rel=".."
|
||||||
|
else
|
||||||
|
rel="$rel/.."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
for (( j = i; j < n ; j++ )); do
|
||||||
|
if [ -z $rel ]; then
|
||||||
|
rel=${targetb[$j]}
|
||||||
|
else
|
||||||
|
rel="$rel/${targetb[$j]}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
ln -s $rel $link
|
||||||
|
}
|
||||||
|
|
||||||
|
createjre() {
|
||||||
|
echo "creating JRE directory..."
|
||||||
|
# absolute link
|
||||||
|
# ln -s $jdkdir/jre $jredir
|
||||||
|
# relative link
|
||||||
|
linkrel $jdkdir/jre $jredir
|
||||||
|
}
|
||||||
|
|
||||||
|
unpackjars() {
|
||||||
|
echo "unpacking jars..."
|
||||||
|
unpack200=$jdkdir/bin/unpack200
|
||||||
|
if [ ! -x $unpack200 ]; then
|
||||||
|
echo "${program}: file missing $unpack200"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
cd $jdkdir
|
||||||
|
PACKED_JARS=`find . -name '*.pack'`
|
||||||
|
for i in $PACKED_JARS; do
|
||||||
|
# echo $i
|
||||||
|
jdir=`dirname $i`
|
||||||
|
jbase=`basename $i .pack`
|
||||||
|
if ! $unpack200 $jdkdir/$jdir/$jbase.pack $jdkdir/$jdir/$jbase.jar; then
|
||||||
|
echo "${program}: error unpacking $jdkdir/$jdir/$jbase.jar"
|
||||||
|
fi
|
||||||
|
if [ ! -r $jdkdir/$jdir/$jbase.jar ]; then
|
||||||
|
echo "${program}: missing $jdkdir/$jdir/$jbase.jar"
|
||||||
|
else
|
||||||
|
echo " $jdir/$jbase.jar"
|
||||||
|
# remove pack file
|
||||||
|
rm $jdkdir/$jdir/$jbase.pack
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
preparecds() {
|
||||||
|
# if this is a client installation...
|
||||||
|
compiler="`$jdkdir/bin/java -client -version 2>&1 | tail -n +3 | cut -d' ' -f1-4`"
|
||||||
|
if [ "X$compiler" = "XJava HotSpot(TM) Client VM" ]; then
|
||||||
|
# create the CDS archive
|
||||||
|
echo "creating the class data sharing archive..."
|
||||||
|
if ! $jdkdir/bin/java -client -Xshare:dump > /dev/null 2>&1; then
|
||||||
|
echo "returned error code $?"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
jreman () {
|
||||||
|
echo "setting up the JRE man pages..."
|
||||||
|
# note this list is slightly different for OpenSolaris bundles
|
||||||
|
jreman=/tmp/jre.man.txt
|
||||||
|
cat <<EOF > $jreman
|
||||||
|
man/ja_JP.eucJP/man1/java.1
|
||||||
|
man/ja_JP.eucJP/man1/javaws.1
|
||||||
|
man/ja_JP.eucJP/man1/keytool.1
|
||||||
|
man/ja_JP.eucJP/man1/orbd.1
|
||||||
|
man/ja_JP.eucJP/man1/pack200.1
|
||||||
|
man/ja_JP.eucJP/man1/policytool.1
|
||||||
|
man/ja_JP.eucJP/man1/rmid.1
|
||||||
|
man/ja_JP.eucJP/man1/rmiregistry.1
|
||||||
|
man/ja_JP.eucJP/man1/servertool.1
|
||||||
|
man/ja_JP.eucJP/man1/tnameserv.1
|
||||||
|
man/ja_JP.eucJP/man1/unpack200.1
|
||||||
|
man/man1/java.1
|
||||||
|
man/man1/javaws.1
|
||||||
|
man/man1/keytool.1
|
||||||
|
man/man1/orbd.1
|
||||||
|
man/man1/pack200.1
|
||||||
|
man/man1/policytool.1
|
||||||
|
man/man1/rmid.1
|
||||||
|
man/man1/rmiregistry.1
|
||||||
|
man/man1/servertool.1
|
||||||
|
man/man1/tnameserv.1
|
||||||
|
man/man1/unpack200.1
|
||||||
|
EOF
|
||||||
|
# create jre/man directory
|
||||||
|
# mkdir $jdkdir/jre/man
|
||||||
|
# move the real JRE man pages to jre/man
|
||||||
|
# link the JDK JRE man pages to jre/man
|
||||||
|
# real JDK man pages stay where they are
|
||||||
|
for m in `cat $jreman`; do
|
||||||
|
manpath=`dirname $jdkdir/jre/$m`
|
||||||
|
mkdir -p $manpath
|
||||||
|
mv $jdkdir/$m $jdkdir/jre/$m
|
||||||
|
linkrel $jdkdir/jre/$m $jdkdir/$m
|
||||||
|
done
|
||||||
|
# link in Japanese man pages
|
||||||
|
ln -s ja_JP.eucJP $jdkdir/jre/man/ja
|
||||||
|
rm $jreman
|
||||||
|
}
|
||||||
|
|
||||||
|
elimdups() {
|
||||||
|
echo "eliminating duplication between the JDK and JDK/jre..."
|
||||||
|
jdkcomm=/tmp/jdk.bin.comm.txt
|
||||||
|
cat <<EOF > $jdkcomm
|
||||||
|
bin/ControlPanel
|
||||||
|
bin/java
|
||||||
|
bin/javaws
|
||||||
|
bin/keytool
|
||||||
|
bin/orbd
|
||||||
|
bin/pack200
|
||||||
|
bin/policytool
|
||||||
|
bin/rmid
|
||||||
|
bin/rmiregistry
|
||||||
|
bin/servertool
|
||||||
|
bin/tnameserv
|
||||||
|
bin/unpack200
|
||||||
|
EOF
|
||||||
|
# note there is little point in linking these common files
|
||||||
|
# COPYRIGHT
|
||||||
|
# LICENSE
|
||||||
|
# THIRDPARTYLICENSEREADME.txt
|
||||||
|
# And this file is unique to the JDK
|
||||||
|
# README.html
|
||||||
|
# And these files are unique to the JDK/jre/
|
||||||
|
# CHANGES
|
||||||
|
# README
|
||||||
|
# Welcome.html
|
||||||
|
for p in `cat $jdkcomm`; do
|
||||||
|
rm $jdkdir/$p
|
||||||
|
# this is a relative link
|
||||||
|
ln -s ../jre/$p $jdkdir/$p
|
||||||
|
done
|
||||||
|
rm $jdkcomm
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -eq 3 ] ; then
|
||||||
|
getargs $1 $2 $3
|
||||||
|
checkfiles
|
||||||
|
copytree
|
||||||
|
createjre
|
||||||
|
unpackjars
|
||||||
|
preparecds
|
||||||
|
jreman
|
||||||
|
elimdups
|
||||||
|
else
|
||||||
|
usage
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
|
||||||
84
jdk/jdk6-linux.nix
Normal file
84
jdk/jdk6-linux.nix
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
{ swingSupport ? true
|
||||||
|
, stdenv
|
||||||
|
, requireFile
|
||||||
|
, fetchurl
|
||||||
|
, unzip
|
||||||
|
, makeWrapper
|
||||||
|
, xorg ? null
|
||||||
|
, installjdk ? true
|
||||||
|
, pluginSupport ? false
|
||||||
|
, installjce ? false
|
||||||
|
}:
|
||||||
|
|
||||||
|
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
||||||
|
assert swingSupport -> xorg != null;
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The JRE libraries are in directories that depend on the CPU.
|
||||||
|
*/
|
||||||
|
architecture =
|
||||||
|
if stdenv.system == "i686-linux" then
|
||||||
|
"i386"
|
||||||
|
else if stdenv.system == "x86_64-linux" then
|
||||||
|
"amd64"
|
||||||
|
else
|
||||||
|
abort "jdk requires i686-linux or x86_64 linux";
|
||||||
|
|
||||||
|
jce =
|
||||||
|
if installjce then
|
||||||
|
requireFile {
|
||||||
|
name = "jce_policy-6.zip";
|
||||||
|
url = http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html;
|
||||||
|
sha256 = "0qljzfxbikm8br5k7rkamibp1vkyjrf6blbxpx6hn4k46f62bhnh";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
null;
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name =
|
||||||
|
if installjdk then "jdk-1.6.0_45b06" else "jre-1.6.0_45b06";
|
||||||
|
|
||||||
|
src =
|
||||||
|
if stdenv.system == "i686-linux" then
|
||||||
|
requireFile {
|
||||||
|
name = "jdk-6u45-linux-i586.bin";
|
||||||
|
url = http://www.oracle.com/technetwork/java/javase/downloads/jdk6downloads-1902814.html;
|
||||||
|
sha256 = "0mx3d2qlal5zyz1a7ld1yk2rs8pf9sjxs2jzasais3nq30jmlfym";
|
||||||
|
}
|
||||||
|
else if stdenv.system == "x86_64-linux" then
|
||||||
|
fetchurl {
|
||||||
|
url = "https://files.befatorinc.de/api/public/dl/JXObGHCx";
|
||||||
|
sha256 = "1s0j1pdr6y8c816d9i86rx4zp12nbhmas1rxksp0r53cn7m3ljbb";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
abort "jdk requires i686-linux or x86_64 linux";
|
||||||
|
|
||||||
|
builder = ./dlj-bundle-builder.sh;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If jdk5 is added, make sure to use the original construct script.
|
||||||
|
* This copy removes references to kinit, klist, ktab, which seem to be
|
||||||
|
* gone in jdk6.
|
||||||
|
*/
|
||||||
|
construct = ./jdk6-construct.sh;
|
||||||
|
inherit installjdk;
|
||||||
|
|
||||||
|
buildInputs = [unzip makeWrapper];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* libXt is only needed on amd64
|
||||||
|
*/
|
||||||
|
libraries =
|
||||||
|
[stdenv.cc.libc] ++
|
||||||
|
(if swingSupport then [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt] else []);
|
||||||
|
|
||||||
|
inherit swingSupport pluginSupport architecture jce;
|
||||||
|
inherit (xorg) libX11;
|
||||||
|
|
||||||
|
mozillaPlugin = if installjdk then "/jre/lib/${architecture}/plugins" else "/lib/${architecture}/plugins";
|
||||||
|
|
||||||
|
#meta.license = lib.licenses.unfree;
|
||||||
|
}
|
||||||
36
junit.nix
36
junit.nix
@ -1,36 +0,0 @@
|
|||||||
{stdenv, fetchFromGitHub, jdk6, ant_1_6}: stdenv.mkDerivation rec {
|
|
||||||
pname = "junit";
|
|
||||||
version = "4.0.0";
|
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "junit-team";
|
|
||||||
repo = pname;
|
|
||||||
rev = "5139a1be36da4ed64a860de82e7d74f2e5405037";
|
|
||||||
hash = "sha256-ZDu3rQ5y0D7pREmnJjUwiWDbTv+TgJPMZjJ4LVczoLU=";
|
|
||||||
};
|
|
||||||
|
|
||||||
patches = [./junit.patch];
|
|
||||||
|
|
||||||
nativeBuildInputs = [jdk6 ant_1_6];
|
|
||||||
#env = {
|
|
||||||
# ACLOCAL_PATH="${libtool}/share/aclocal";
|
|
||||||
# NIX_CFLAGS_COMPILE="-fpermissive";
|
|
||||||
#};
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
ant
|
|
||||||
#bash ./gradlew build
|
|
||||||
#bash ./gradlew install -Pgradle_installPath=$out
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir $out
|
|
||||||
cp -r ./junit4.1/* $out/
|
|
||||||
'';
|
|
||||||
|
|
||||||
#configureFlags = ["--with-plugins=innobase"];
|
|
||||||
|
|
||||||
#postInstall = ''
|
|
||||||
# ln -s $out/libexec/mysqld $out/bin/mysqld
|
|
||||||
#'';
|
|
||||||
}
|
|
||||||
23
overlay.nix
23
overlay.nix
@ -139,18 +139,21 @@ bommels = pkgs.lib.makeScope pkgs.newScope (self: rec {
|
|||||||
jikes = self.callPackage ./jdk/jikes.nix { };
|
jikes = self.callPackage ./jdk/jikes.nix { };
|
||||||
gnu-classpath_93 = self.callPackage ./jdk/gnu-classpath_93.nix { inherit jikes; };
|
gnu-classpath_93 = self.callPackage ./jdk/gnu-classpath_93.nix { inherit jikes; };
|
||||||
jamvm_1_5_1 = self.callPackage ./jdk/jamvm_1_5_1.nix { inherit gnu-classpath_93; };
|
jamvm_1_5_1 = self.callPackage ./jdk/jamvm_1_5_1.nix { inherit gnu-classpath_93; };
|
||||||
ant_1_6 = self.callPackage ./jdk/ant_1_6.nix { inherit gnu-classpath_93 jamvm_1_5_1; };
|
ant-bootstrap = self.callPackage ./jdk/ant_1_6.nix { inherit gnu-classpath_93 jamvm_1_5_1; };
|
||||||
ecj = self.callPackage ./jdk/ecj.nix { inherit ant_1_6 gnu-classpath_93 jamvm_1_5_1 jikes; };
|
ecj = self.callPackage ./jdk/ecj.nix { inherit ant-bootstrap gnu-classpath_93 jamvm_1_5_1 jikes; };
|
||||||
xalan = self.callPackage ./jdk/xalan.nix { inherit ant_1_6 gnu-classpath_93 jamvm_1_5_1 ecj; };
|
#xalan = self.callPackage ./jdk/xalan.nix { inherit ant_1_6 gnu-classpath_93 jamvm_1_5_1 ecj; };
|
||||||
xerces = self.callPackage ./jdk/xerces.nix { inherit ant_1_6 gnu-classpath_93 jamvm_1_5_1 ecj; };
|
#xerces = self.callPackage ./jdk/xerces.nix { inherit ant_1_6 gnu-classpath_93 jamvm_1_5_1 ecj; };
|
||||||
gnu-classpath_98 = self.callPackage ./jdk/gnu-classpath_98.nix { inherit ecj jamvm_1_5_1; };
|
gnu-classpath_98 = self.callPackage ./jdk/gnu-classpath_98.nix { inherit ecj jamvm_1_5_1; };
|
||||||
jamvm_1_5_4 = self.callPackage ./jdk/jamvm_1_5_4.nix { inherit gnu-classpath_98; };
|
jamvm_1_5_4 = self.callPackage ./jdk/jamvm_1_5_4.nix { inherit gnu-classpath_98; };
|
||||||
gnu-classpath = self.callPackage ./jdk/gnu-classpath.nix { inherit autoreconfHook ecj jamvm_1_5_4 gnu-classpath_98; };
|
#gnu-classpath = self.callPackage ./jdk/gnu-classpath.nix { inherit autoreconfHook ecj jamvm_1_5_4 gnu-classpath_98; };
|
||||||
jamvm = self.callPackage ./jdk/jamvm.nix { inherit gnu-classpath xerces autoreconfHook; };
|
#jamvm = self.callPackage ./jdk/jamvm.nix { inherit gnu-classpath xerces autoreconfHook; };
|
||||||
jdk6 = self.callPackage ./jdk/jdk6-bootstrap.nix { inherit ant_1_6 gnu-classpath jamvm; };
|
#jdk6 = self.callPackage ./jdk/jdk6-bootstrap.nix { inherit ant_1_6 gnu-classpath jamvm; };
|
||||||
junit = self.callPackage ./junit.nix { inherit ant_1_6 jdk6; };
|
jdk6 = self.callPackage ./jdk/jdk6-linux.nix { };
|
||||||
ant = self.callPackage ./ant.nix { inherit junit; };
|
|
||||||
gradle_0_0_2 = self.callPackage ./gradle_0_0_2.nix { inherit ant; };
|
ant_1_6_5 = self.callPackage ./gradle/ant_1_6_5.nix { inherit ecj jamvm_1_5_4 gnu-classpath_98 ant-bootstrap; };
|
||||||
|
junit = self.callPackage ./gradle/junit.nix { inherit ant_1_6_5 jdk6; };
|
||||||
|
ant_1_7_0 = self.callPackage ./gradle/ant_1_7_0.nix { inherit jdk6 junit; };
|
||||||
|
gradle_0_0_2 = self.callPackage ./gradle/gradle_0_0_2.nix { inherit jdk6 ant_1_7_0; };
|
||||||
gradle = self.callPackage ./gradle.nix { inherit gradle_0_0_2; };
|
gradle = self.callPackage ./gradle.nix { inherit gradle_0_0_2; };
|
||||||
elasticsearch-service = self.callPackage ./elasticsearch-service.nix { inherit gradle; };
|
elasticsearch-service = self.callPackage ./elasticsearch-service.nix { inherit gradle; };
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user