[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#48766] [PATCH 05/14] guix: maven: Support fixing modules.
From: |
Julien Lepiller |
Subject: |
[bug#48766] [PATCH 05/14] guix: maven: Support fixing modules. |
Date: |
Tue, 1 Jun 2021 00:44:18 +0200 |
* guix/build/maven/pom.scm (fix-pom-dependencies): Support fixing
modules that do not exist.
* guix/build/maven-build-system.scm (fix-pom): Fix modules.
---
guix/build/maven-build-system.scm | 1 +
guix/build/maven/pom.scm | 19 ++++++++++++++++++-
2 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/guix/build/maven-build-system.scm
b/guix/build/maven-build-system.scm
index 374fa2fdb8..b3d97c81ea 100644
--- a/guix/build/maven-build-system.scm
+++ b/guix/build/maven-build-system.scm
@@ -65,6 +65,7 @@
(format #t "fixing ~a~%" pom-file)
(fix-pom-dependencies pom-file (map cdr inputs)
#:with-plugins? #t #:with-build-dependencies? #t
+ #:with-modules? #t
#:local-packages local-packages
#:excludes excludes))
diff --git a/guix/build/maven/pom.scm b/guix/build/maven/pom.scm
index 3a4ad7a216..ffb4515179 100644
--- a/guix/build/maven/pom.scm
+++ b/guix/build/maven/pom.scm
@@ -291,7 +291,8 @@ this repository contains."
(define* (fix-pom-dependencies pom-file inputs
#:key with-plugins? with-build-dependencies?
- (excludes '()) (local-packages '()))
+ with-modules? (excludes '())
+ (local-packages '()))
"Open @var{pom-file}, and override its content, rewritting its dependencies
to set their version to the latest version available in the @var{inputs}.
@@ -339,8 +340,24 @@ Returns nothing, but overrides the @var{pom-file} as a
side-effect."
`((http://maven.apache.org/POM/4.0.0:build ,(fix-build build))
,@(fix-pom rest))
(cons tag (fix-pom rest))))
+ (('http://maven.apache.org/POM/4.0.0:modules modules ...)
+ (if with-modules?
+ `((http://maven.apache.org/POM/4.0.0:modules ,(fix-modules
modules))
+ ,@(fix-pom rest))
+ (cons tag (fix-pom rest))))
(tag (cons tag (fix-pom rest)))))))
+ (define fix-modules
+ (match-lambda
+ ('() '())
+ ((tag rest ...)
+ (match tag
+ (('http://maven.apache.org/POM/4.0.0:module module)
+ (if (file-exists? (string-append (dirname pom-file) "/" module
"/pom.xml"))
+ `((http://maven.apache.org/POM/4.0.0:module ,module)
,@(fix-modules rest))
+ (fix-modules rest)))
+ (tag (cons tag (fix-modules rest)))))))
+
(define fix-dep-management
(match-lambda
('() '())
--
2.31.1
- [bug#48766] [PATCH] gnu: java-jmh: Switch to maven-build-system., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 01/14] guix: java-utils: Factorize pom.xml generation., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 04/14] guix: maven: Support fixing extensions., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 02/14] guix: maven: Simplify finding version and group information., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 03/14] guix: maven: Simplify finding local packages and modules., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 07/14] guix: maven: Use a temporary file to fix pom files., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 06/14] guix: maven: Look in local packages when searching for package version., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 05/14] guix: maven: Support fixing modules.,
Julien Lepiller <=
- [bug#48766] [PATCH 08/14] guix: java-utils: Look for actual jar files., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 10/14] gnu: java-commons-math3: Install to maven repository., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 11/14] gnu: maven-core: Hardcode versions we have in Guix., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 14/14] gnu: java-jmh: Switch to maven-build-system., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 13/14] gnu: java-jmh: Update to 1.32., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 09/14] gnu: Add java-jopt-simple-4., Julien Lepiller, 2021/05/31
- [bug#48766] [PATCH 12/14] gnu: maven-enforcer-parent-pom: Fix pom., Julien Lepiller, 2021/05/31