diff options
author | Tobias Hammerschmidt <tobias.hammerschmidt@gmx.de> | 2008-04-11 21:32:00 +0000 |
---|---|---|
committer | Tobias Hammerschmidt <tobias.hammerschmidt@gmx.de> | 2008-04-11 21:32:00 +0000 |
commit | 085dc5bc74e6494695d982fb8437bba423316f00 (patch) | |
tree | ab3ef3cbbf580d917eea9c6d6fcc31bbc5bc4757 /pkgs/development/tools/build-managers/apache-ant | |
parent | 2f52d0920433e266414b8162c6867260f3578ba5 (diff) |
added ant-contrib, expression works but is really really ugly - maybe someone else can have a look at it?
svn path=/nixpkgs/trunk/; revision=11588
Diffstat (limited to 'pkgs/development/tools/build-managers/apache-ant')
-rw-r--r-- | pkgs/development/tools/build-managers/apache-ant/builder.sh | 44 | ||||
-rw-r--r-- | pkgs/development/tools/build-managers/apache-ant/default.nix | 17 |
2 files changed, 50 insertions, 11 deletions
diff --git a/pkgs/development/tools/build-managers/apache-ant/builder.sh b/pkgs/development/tools/build-managers/apache-ant/builder.sh index 42d5e67d154b3..068925b4755a0 100644 --- a/pkgs/development/tools/build-managers/apache-ant/builder.sh +++ b/pkgs/development/tools/build-managers/apache-ant/builder.sh @@ -1,21 +1,53 @@ source $stdenv/setup -mkdir -p $out/bin +tar jxf $src || exit 1 +mkdir -p $out + +mv apache-ant-*/* $out || exit 1 + +# add ant-contrib +cp $antContrib/*.jar $out/lib + +# remove crap in the root directory + +for file in $out/* +do + if test -f $file ; then + rm $file + fi +done +rm -rf $out/docs + +# prevent the use of hacky scripts. This will be handled in Nix. +rm $out/bin/* || exit 1 + +# add ant script. This script is to be invoked with all +# appropiate variables and will try to be clever or user-friendly. cat >> $out/bin/ant <<EOF #! /bin/sh export JAVA_HOME=$jdk export JAVACMD=$jdk/bin/java -export ANT_OPTS="" -export ANT_ARGS="" export LANG="en_US" -$ant/bin/core-ant \$@ +export ANT_HOME=$out + +if [ -z "\$LOCALCLASSPATH" ] ; then + LOCALCLASSPATH=\$ANT_HOME/lib/ant-launcher.jar +else + LOCALCLASSPATH=\$ANT_HOME/lib/ant-launcher.jar:\$LOCALCLASSPATH +fi + +if [ -n "\$JIKESPATH" ]; then + exec "\$JAVACMD" \$NIX_ANT_OPTS \$ANT_OPTS -classpath "\$LOCALCLASSPATH" -Dant.home="\${ANT_HOME}" -Djikes.class.path="\$JIKESPATH" org.apache.tools.ant.launch.Launcher \$ANT_ARGS -lib "$CLASSPATH" "\$@" +else + exec "\$JAVACMD" \$NIX_ANT_OPTS \$ANT_OPTS -classpath "\$LOCALCLASSPATH" -Dant.home="\${ANT_HOME}" org.apache.tools.ant.launch.Launcher \$ANT_ARGS -lib "$CLASSPATH" "\$@" + fi +fi EOF chmod a+x $out/bin/ant -ln -s $ant/lib $ant/etc $out/ - +ln -s $out/bin/ant $out/bin/antRun diff --git a/pkgs/development/tools/build-managers/apache-ant/default.nix b/pkgs/development/tools/build-managers/apache-ant/default.nix index 2532db69f97f1..a9e35d5d70bc3 100644 --- a/pkgs/development/tools/build-managers/apache-ant/default.nix +++ b/pkgs/development/tools/build-managers/apache-ant/default.nix @@ -1,16 +1,23 @@ -{stdenv, fetchurl, jdk, name}: +{fetchurl, stdenv, jdk, name}: let { body = stdenv.mkDerivation { name = name; + builder = ./builder.sh; - buildInputs = [ant jdk]; - inherit ant jdk; + buildInputs = [antContrib jdk]; + + inherit antContrib jdk; + + src = fetchurl { + url = http://apache.surfnet.nl/ant/binaries/apache-ant-1.6.5-bin.tar.bz2; + md5 = "26031ee1a2fd248ad0cc2e7f17c44c39"; + }; }; - ant = - (import ./core-apache-ant.nix) { + antContrib = + (import ./ant-contrib.nix) { inherit fetchurl stdenv; }; } |