summaryrefslogtreecommitdiff
path: root/gnu/packages/maven.scm
diff options
context:
space:
mode:
authorJulien Lepiller <julien@lepiller.eu>2022-02-08 10:26:22 +0100
committerJulien Lepiller <julien@lepiller.eu>2022-02-28 10:56:08 +0100
commite0a6b259695e61ecfadbe11f0bf09aa5a8fdb42b (patch)
tree1b214abc38405ff833719490f2d8c18c798d17ab /gnu/packages/maven.scm
parent38c0830e858a50ef1b7a41166a283758268be856 (diff)
downloadguix-patches-e0a6b259695e61ecfadbe11f0bf09aa5a8fdb42b.tar
guix-patches-e0a6b259695e61ecfadbe11f0bf09aa5a8fdb42b.tar.gz
gnu: Add maven-slf4j-provider.
* gnu/packages/maven.scm (maven-slf4-provider): New variable.
Diffstat (limited to 'gnu/packages/maven.scm')
-rw-r--r--gnu/packages/maven.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index 02eaad410c..63bc6479c9 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -1772,6 +1772,40 @@ artifactId=maven-core" ,(package-version maven-core-bootstrap))))
("maven-core-boot" ,maven-core-bootstrap)
,@(package-native-inputs maven-core-bootstrap)))))
+(define-public maven-slf4j-provider
+ (package
+ (inherit maven-artifact)
+ (name "maven-slf4j-provider")
+ (arguments
+ `(#:jar-name "maven-slf4j-provider.jar"
+ #:source-dir "maven-slf4j-provider/src/main/java"
+ #:tests? #f; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'unpack-slf4j
+ (lambda* (#:key inputs #:allow-other-keys)
+ (mkdir-p "generated-sources")
+ (with-directory-excursion "generated-sources"
+ (invoke "tar" "xf" (assoc-ref inputs "java-slf4j-simple-source"))
+ (for-each delete-file (find-files "." "StaticLoggerBinder.java")))
+ (for-each
+ (lambda (simple)
+ (for-each
+ (lambda (java)
+ (copy-file java
+ (string-append
+ "maven-slf4j-provider/src/main/java/org/slf4j/impl/"
+ (basename java))))
+ (find-files (string-append simple "/src/main/java/") "\\.java$")))
+ (find-files "generated-sources" "slf4j-simple" #:directories? #t))))
+ (replace 'install
+ (install-from-pom "maven-slf4j-provider/pom.xml")))))
+ (inputs
+ `(("java-slf4j-api" ,java-slf4j-api)
+ ("java-slf4j-simple-source" ,(package-source java-slf4j-simple))
+ ("maven-shared-utils" ,maven-shared-utils)))
+ (native-inputs (list unzip))))
+
(define-public maven-embedder
(package
(inherit maven-artifact)