nixpkgs/pkgs/development/eclipse/ecj/default.nix

58 lines
1.4 KiB
Nix
Raw Normal View History

2014-01-03 15:24:37 +00:00
{ stdenv, fetchurl, unzip, ant, jdk }:
let
2012-08-25 17:39:19 +00:00
version = "3.7.2";
date = "201202080800";
in
2014-01-03 15:15:46 +00:00
stdenv.mkDerivation rec {
name = "ecj-${version}";
2014-01-03 15:15:46 +00:00
src = fetchurl {
url = "http://eclipse.ialto.org/eclipse/downloads/drops/R-${version}-${date}/ecjsrc-${version}.jar";
sha256 = "0swyysbyfmv068x8q1c5jqpwk5zb4xahg17aypx5rwb660f8fpbm";
};
2014-01-03 15:24:37 +00:00
buildInputs = [ unzip ant jdk ];
2014-01-03 15:15:46 +00:00
unpackPhase = ''
mkdir "${name}"
cd "${name}"
unzip "$src"
'';
2014-01-03 15:15:46 +00:00
# Use whatever compiler Ant knows.
buildPhase = "ant build";
2014-01-03 15:15:46 +00:00
installPhase = ''
2014-01-03 15:24:37 +00:00
mkdir -pv $out/lib/java
cp -v *.jar $out/lib/java
2014-01-03 15:24:37 +00:00
mkdir -pv $out/bin
cat > $out/bin/ecj <<EOF
#! /bin/sh
exec ${jdk.jre}/bin/java -cp $out/lib/java/ecj.jar org.eclipse.jdt.internal.compiler.batch.Main "\$@"
EOF
2014-01-03 15:24:37 +00:00
chmod u+x $out/bin/ecj
2014-01-03 15:15:46 +00:00
'';
2014-01-03 15:15:46 +00:00
meta = {
description = "The Eclipse Compiler for Java (ECJ)";
2014-01-03 15:15:46 +00:00
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.
'';
2014-01-03 15:15:46 +00:00
homepage = http://www.eclipse.org/jdt/core/index.php;
2014-01-03 15:15:46 +00:00
# http://www.eclipse.org/legal/epl-v10.html (free software, copyleft)
license = "EPLv1.0";
2014-01-03 15:24:37 +00:00
platforms = stdenv.lib.platforms.linux;
2014-01-03 15:15:46 +00:00
};
}