From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36495) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d71lb-0003Ki-8e for guix-patches@gnu.org; Sat, 06 May 2017 11:37:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d71lZ-0002bX-Rm for guix-patches@gnu.org; Sat, 06 May 2017 11:37:07 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:60064) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1d71lZ-0002bJ-NI for guix-patches@gnu.org; Sat, 06 May 2017 11:37:05 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1d71lZ-0002JV-Hj for guix-patches@gnu.org; Sat, 06 May 2017 11:37:05 -0400 Subject: bug#26803: [PATCH 06/36] gnu: Add java-asm. Resent-Message-ID: From: Ricardo Wurmus Date: Sat, 6 May 2017 17:35:47 +0200 Message-Id: <20170506153617.3074-6-rekado@elephly.net> In-Reply-To: <20170506153617.3074-1-rekado@elephly.net> References: <20170506153617.3074-1-rekado@elephly.net> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 26803@debbugs.gnu.org Cc: Ricardo Wurmus * gnu/packages/java.scm (java-asm): New variable. --- gnu/packages/java.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 2ff9a11a0..2df07bc38 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1262,3 +1262,47 @@ It has its foundation in the org.codehaus.plexus.utils.interpolation package within plexus-utils, but has been separated in order to allow these two libraries to vary independently of one another.") (license license:asl2.0))) + +(define-public java-asm + (package + (name "java-asm") + (version "5.2") + (source (origin + (method url-fetch) + (uri (string-append "http://download.forge.ow2.org/asm/" + "asm-" version ".tar.gz")) + (sha256 + (base32 + "0kxvmv5275rnjl7jv0442k3wjnq03ngkb7sghs78avf45pzm4qgr")))) + (build-system ant-build-system) + (arguments + `(#:build-target "compile" + #:test-target "test" + ;; The tests require an old version of Janino, which no longer compiles + ;; with the JDK7. + #:tests? #f + ;; We don't need these extra ant tasks, but the build system asks us to + ;; provide a path anyway. + #:make-flags (list (string-append "-Dobjectweb.ant.tasks.path=foo")) + #:phases + (modify-phases %standard-phases + (add-before 'install 'build-jars + (lambda* (#:key make-flags #:allow-other-keys) + ;; We cannot use the "jar" target because it depends on a couple + ;; of unpackaged, complicated tools. + (mkdir "dist") + (zero? (system* "jar" + "-cf" (string-append "dist/asm-" ,version ".jar") + "-C" "output/build/tmp" ".")))) + (replace 'install + (install-jars "dist"))))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "http://asm.ow2.org/") + (synopsis "Very small and fast Java bytecode manipulation framework") + (description "ASM is an all purpose Java bytecode manipulation and +analysis framework. It can be used to modify existing classes or dynamically +generate classes, directly in binary form. The provided common +transformations and analysis algorithms allow to easily assemble custom +complex transformations and code analysis tools.") + (license license:bsd-3))) -- 2.12.2