36 lines
1.1 KiB
Nix
36 lines
1.1 KiB
Nix
{stdenv, fetchzip, ant-bootstrap, gnu-classpath_93, jamvm_1_5_1, jikes}: stdenv.mkDerivation rec {
|
|
pname = "ecj";
|
|
version = "3.2.1"; #Compiler meldet 3.2.1 bei 3.2.2 source
|
|
|
|
src = fetchzip {
|
|
url = "https://archive.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/eclipse-sourceBuild-srcIncluded-3.2.2.zip";
|
|
hash = "sha256-7FYd+SHyJ9FPYBRJIgHW5IgKbF8HhlKMlSXE8oeyuZk=";
|
|
stripRoot=false;
|
|
};
|
|
|
|
nativeBuildInputs = [ant-bootstrap jamvm_1_5_1 jikes];
|
|
|
|
env = {
|
|
JAVA_HOME="${gnu-classpath_93}";
|
|
CLASSPATH="${gnu-classpath_93}/share/classpath/glibj.zip";
|
|
ANT_OPTS="-Dbuild.compiler=jikes";
|
|
};
|
|
|
|
buildPhase = ''
|
|
cd jdtcoresrc
|
|
ant -f compilejdtcorewithjavac.xml
|
|
cd ..
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
cp -r ./jdtcoresrc/ecj.jar $out/bin/ecj.jar
|
|
cat << 'EOF' > $out/bin/ecj
|
|
#!/bin/bash
|
|
exec ${jamvm_1_5_1}/bin/jamvm -Xmx768M -cp $out/bin/ecj.jar org.eclipse.jdt.internal.compiler.batch.Main "$@"
|
|
EOF
|
|
sed -i "s|\$out|$out|g" $out/bin/ecj
|
|
chmod +x $out/bin/ecj
|
|
'';
|
|
}
|