nixpkgs: remove ancient 'ecj' package
Nobody has stepped up to keep maintaining this and it's several years old, and the last strict Java 7 dependency, as it won't work with newer versions without an update. Signed-off-by: Austin Seipp <aseipp@pobox.com>
This commit is contained in:
parent
ebbf7078e2
commit
dc40fca23f
|
@ -62,16 +62,7 @@ depending on the JDK at runtime.</para>
|
||||||
|
|
||||||
<para>It is possible to use a different Java compiler than
|
<para>It is possible to use a different Java compiler than
|
||||||
<command>javac</command> from the OpenJDK. For instance, to use the
|
<command>javac</command> from the OpenJDK. For instance, to use the
|
||||||
Eclipse Java Compiler:
|
GNU Java Compiler:
|
||||||
|
|
||||||
<programlisting>
|
|
||||||
buildInputs = [ jre ant ecj ];
|
|
||||||
</programlisting>
|
|
||||||
|
|
||||||
(Note that here you don’t need the full JDK as an input, but just the
|
|
||||||
JRE.) The ECJ has a stdenv setup hook that sets some environment
|
|
||||||
variables to cause Ant to use ECJ, but this doesn’t work with all Ant
|
|
||||||
files. Similarly, you can use the GNU Java Compiler:
|
|
||||||
|
|
||||||
<programlisting>
|
<programlisting>
|
||||||
buildInputs = [ gcj ant ];
|
buildInputs = [ gcj ant ];
|
||||||
|
|
|
@ -1,59 +0,0 @@
|
||||||
{ stdenv, fetchurl, unzip, ant, jdk7, makeWrapper }:
|
|
||||||
|
|
||||||
let
|
|
||||||
version = "3.7.2";
|
|
||||||
date = "201202080800";
|
|
||||||
in
|
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
|
||||||
name = "ecj-${version}";
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://eclipse.ialto.org/eclipse/downloads/drops/R-${version}-${date}/ecjsrc-${version}.jar";
|
|
||||||
sha256 = "0swyysbyfmv068x8q1c5jqpwk5zb4xahg17aypx5rwb660f8fpbm";
|
|
||||||
};
|
|
||||||
|
|
||||||
buildInputs = [ unzip ant jdk7 makeWrapper ];
|
|
||||||
|
|
||||||
unpackPhase = ''
|
|
||||||
mkdir "${name}"
|
|
||||||
cd "${name}"
|
|
||||||
unzip "$src"
|
|
||||||
'';
|
|
||||||
|
|
||||||
# Use whatever compiler Ant knows.
|
|
||||||
buildPhase = "ant build";
|
|
||||||
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -pv $out/share/java
|
|
||||||
cp -v *.jar $out/share/java
|
|
||||||
|
|
||||||
mkdir -pv $out/bin
|
|
||||||
makeWrapper ${jdk7.jre}/bin/java $out/bin/ecj \
|
|
||||||
--add-flags "-cp $out/share/java/ecj.jar org.eclipse.jdt.internal.compiler.batch.Main"
|
|
||||||
|
|
||||||
# Add a setup hook that causes Ant to use the ECJ.
|
|
||||||
mkdir -p $out/nix-support
|
|
||||||
cat <<EOF > $out/nix-support/setup-hook
|
|
||||||
export NIX_ANT_ARGS="-Dbuild.compiler=org.eclipse.jdt.core.JDTCompilerAdapter \$NIX_ANT_ARGS"
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
|
|
||||||
meta = {
|
|
||||||
description = "The Eclipse Compiler for Java (ECJ)";
|
|
||||||
|
|
||||||
longDescription = ''
|
|
||||||
ECJ is an incremental Java compiler. Implemented as an Eclipse
|
|
||||||
builder, it is based on technology evolved from VisualAge for Java
|
|
||||||
compiler. In particular, it allows users to run and debug code which
|
|
||||||
still contains unresolved errors.
|
|
||||||
'';
|
|
||||||
|
|
||||||
homepage = http://www.eclipse.org/jdt/core/index.php;
|
|
||||||
|
|
||||||
# http://www.eclipse.org/legal/epl-v10.html (free software, copyleft)
|
|
||||||
license = stdenv.lib.licenses.epl10;
|
|
||||||
|
|
||||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -7332,8 +7332,6 @@ with pkgs;
|
||||||
|
|
||||||
sourceFromHead = callPackage ../build-support/source-from-head-fun.nix {};
|
sourceFromHead = callPackage ../build-support/source-from-head-fun.nix {};
|
||||||
|
|
||||||
ecj = callPackage ../development/eclipse/ecj { };
|
|
||||||
|
|
||||||
jruby = callPackage ../development/interpreters/jruby { };
|
jruby = callPackage ../development/interpreters/jruby { };
|
||||||
|
|
||||||
jython = callPackage ../development/interpreters/jython {};
|
jython = callPackage ../development/interpreters/jython {};
|
||||||
|
|
Loading…
Reference in a new issue