>From 977facdd8e70f4d8c0016e39ca87f53060464099 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 30 Jan 2015 16:57:13 +0100 Subject: [PATCH] gnu: Add Ant. * gnu/packages/java.scm (ant-minimal): New variable. --- gnu/packages/java.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 4a86f63..80ef21a 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -48,6 +48,55 @@ #:use-module (gnu packages zip) #:use-module (gnu packages texinfo)) +(define-public ant-minimal + (package + (name "ant-minimal") + (version "1.9.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://www.apache.org/dist/ant/source/apache-ant-" + version "-src.tar.gz")) + (sha256 + (base32 + "09kf5s1ir0rdrclsy174bsvbdcbajza9fja490w4mmvcpkw3zpak")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; Tests require hamcrest-core, which needs Ant to build. + #:phases + (alist-cons-after + 'unpack 'remove-scripts + ;; Remove bat / cmd scripts for DOS as well as the antRun and runant + ;; wrappers. + (lambda _ + (for-each delete-file + (find-files "src/script" + "(.*\\.(bat|cmd)|runant.*|antRun.*)"))) + (alist-replace + 'build + (lambda _ + (setenv "JAVA_HOME" + (assoc-ref %build-inputs "icedtea6")) + ;; disable tests to avoid dependecy on hamcrest-core + (substitute* "build.xml" + (("depends=\"jars,test-jar\"") "depends=\"jars\"")) + (system* "bash" "bootstrap.sh" + (string-append "-Ddist.dir=" + (assoc-ref %outputs "out")))) + (alist-delete + 'configure + (alist-delete 'install %standard-phases)))))) + (native-inputs + `(("icedtea6" ,icedtea6))) + (home-page "http://ant.apache.org") + (synopsis "Build tool for Java") + (description + "Ant is a platform-independent build tool for Java. It is similar to +make but is implemented using the Java language, requires the Java platform, +and is best suited to building Java projects. Ant uses XML to describe the +build process and its dependencies, whereas Make uses Makefile format.") + (license license:asl2.0))) + (define-public icedtea6 (package (name "icedtea6") -- 2.1.0