commit:     7f5126275eb7178328b1ff4bea732e062222746b
Author:     Yuan Liao <liaoyuan <AT> gmail <DOT> com>
AuthorDate: Wed Jun 23 21:38:30 2021 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sat Apr 15 08:13:53 2023 +0000
URL:        https://gitweb.gentoo.org/proj/java-ebuilder.git/commit/?id=7f512627

Add support for ebuild variables in MAVEN_PROVIDES

Signed-off-by: Yuan Liao <liaoyuan <AT> gmail.com>
Closes: https://github.com/gentoo/java-ebuilder/pull/11
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 src/main/java/org/gentoo/java/ebuilder/portage/PortageParser.java | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/main/java/org/gentoo/java/ebuilder/portage/PortageParser.java 
b/src/main/java/org/gentoo/java/ebuilder/portage/PortageParser.java
index ff4acf3..8026542 100644
--- a/src/main/java/org/gentoo/java/ebuilder/portage/PortageParser.java
+++ b/src/main/java/org/gentoo/java/ebuilder/portage/PortageParser.java
@@ -394,6 +394,9 @@ public class PortageParser {
                 groupId, artifactId, mavenVersion, eclasses));
 
         for (String providedId: mavenProvide) {
+            // Allow declarations like MAVEN_PROVIDES="groupId:${PN}:${PV}"
+            providedId = providedId.replaceAll("\\$(\\{PN\\}|PN)", pkg).
+                    replaceAll("\\$(\\{PV\\}|PV)", pv);
             final String[] parts = providedId.split(":");
             cacheItems.add(new CacheItem(category, pkg, version, slot, useFlag,
                     parts[0], parts[1], parts[2], eclasses));

Reply via email to