diff options
author | Reily Siegel <mail@reilysiegel.com> | 2022-01-18 13:17:24 -0500 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2022-01-24 10:38:14 +0100 |
commit | 0f2df54f8397560e6e8473e2982c66af01d9cd0a (patch) | |
tree | 217b9c71b962095c96b33222834d0266682b07c8 /guix/build/clojure-utils.scm | |
parent | 09b4d74bd352d40b45e081eaa094b086a42dad3d (diff) | |
download | guix-patches-0f2df54f8397560e6e8473e2982c66af01d9cd0a.tar guix-patches-0f2df54f8397560e6e8473e2982c66af01d9cd0a.tar.gz |
build-system/clojure: Support compiling Java.
* guix/build/clojure-build-system.scm (compile-java): New variable.
(build): Copy classes compiled from Java and optionally Java sources to
the final jar.
(%standard-phases): Add compile-java phase before build.
* guix/build/clojure-utils.scm (%java-source-dirs): New variable.
(%java-compile-dir): New variable.
* guix/build-system/clojure.scm (clojure-build): Include %java-source-dirs and
%java-compile-dir.
(builder): Include %java-source-dirs and %java-compile-dir.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'guix/build/clojure-utils.scm')
-rw-r--r-- | guix/build/clojure-utils.scm | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/guix/build/clojure-utils.scm b/guix/build/clojure-utils.scm index 8817cab52a..c5322141d3 100644 --- a/guix/build/clojure-utils.scm +++ b/guix/build/clojure-utils.scm @@ -32,8 +32,10 @@ install-doc %source-dirs + %java-source-dirs %test-dirs %compile-dir + %java-compile-dir package-name->jar-names %main-class %omit-source? @@ -101,6 +103,10 @@ DOC-REGEX can be compiled or uncompiled." "A default list of source directories." '("src/")) +(define-with-docs %java-source-dirs + "A default list of java source directories." + '()) + (define-with-docs %test-dirs "A default list of test directories." '("test/")) @@ -109,6 +115,10 @@ DOC-REGEX can be compiled or uncompiled." "Default directory for holding class files." "classes/") +(define-with-docs %java-compile-dir + "Default directory for holding java class files." + "java-classes/") + (define (package-name->jar-names name) "Given NAME, a package name like \"foo-0.9.1b\", return the list of default jar names: (\"foo-0.9.1b.jar\" \"foo.jar\")." |