summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2017-03-02 11:50:17 +0100
committerRicardo Wurmus <rekado@elephly.net>2017-05-15 22:33:13 +0200
commitd44bcd7ac7295dbcbf0bd103901f277deadb943e (patch)
tree1d75908cc1b304b452c222913b41304f03350652 /gnu
parentc48a145fbb613ac2b623f0a11278848923b312f1 (diff)
gnu: Add java-asm.
* gnu/packages/java.scm (java-asm): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/java.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 127f4521ad6..c68ff1477d3 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -2826,3 +2826,47 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))))
2826 `(("junit" ,java-junit))) 2826 `(("junit" ,java-junit)))
2827 (propagated-inputs 2827 (propagated-inputs
2828 `(("stringtemplate" ,stringtemplate3))))) 2828 `(("stringtemplate" ,stringtemplate3)))))
2829
2830(define-public java-asm
2831 (package
2832 (name "java-asm")
2833 (version "5.2")
2834 (source (origin
2835 (method url-fetch)
2836 (uri (string-append "http://download.forge.ow2.org/asm/"
2837 "asm-" version ".tar.gz"))
2838 (sha256
2839 (base32
2840 "0kxvmv5275rnjl7jv0442k3wjnq03ngkb7sghs78avf45pzm4qgr"))))
2841 (build-system ant-build-system)
2842 (arguments
2843 `(#:build-target "compile"
2844 #:test-target "test"
2845 ;; The tests require an old version of Janino, which no longer compiles
2846 ;; with the JDK7.
2847 #:tests? #f
2848 ;; We don't need these extra ant tasks, but the build system asks us to
2849 ;; provide a path anyway.
2850 #:make-flags (list (string-append "-Dobjectweb.ant.tasks.path=foo"))
2851 #:phases
2852 (modify-phases %standard-phases
2853 (add-before 'install 'build-jars
2854 (lambda* (#:key make-flags #:allow-other-keys)
2855 ;; We cannot use the "jar" target because it depends on a couple
2856 ;; of unpackaged, complicated tools.
2857 (mkdir "dist")
2858 (zero? (system* "jar"
2859 "-cf" (string-append "dist/asm-" ,version ".jar")
2860 "-C" "output/build/tmp" "."))))
2861 (replace 'install
2862 (install-jars "dist")))))
2863 (native-inputs
2864 `(("java-junit" ,java-junit)))
2865 (home-page "http://asm.ow2.org/")
2866 (synopsis "Very small and fast Java bytecode manipulation framework")
2867 (description "ASM is an all purpose Java bytecode manipulation and
2868analysis framework. It can be used to modify existing classes or dynamically
2869generate classes, directly in binary form. The provided common
2870transformations and analysis algorithms allow to easily assemble custom
2871complex transformations and code analysis tools.")
2872 (license license:bsd-3)))