Gentoo Archives: gentoo-commits

From: "Miroslav Šulc" <fordfrog@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/java-ebuilder:master commit in: src/main/java/org/gentoo/java/ebuilder/maven/
Date: Thu, 27 Aug 2020 17:24:13
Message-Id: 1597824460.e024794b5f61201fc1db11fdfc40fa05b03125ed.fordfrog@gentoo
1 commit: e024794b5f61201fc1db11fdfc40fa05b03125ed
2 Author: zongyu <zzy2529420793 <AT> gmail <DOT> com>
3 AuthorDate: Wed Aug 19 08:02:07 2020 +0000
4 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
5 CommitDate: Wed Aug 19 08:07:40 2020 +0000
6 URL: https://gitweb.gentoo.org/proj/java-ebuilder.git/commit/?id=e024794b
7
8 recognize and write JAVA_NEEDS_TOOLS automatically
9
10 Signed-off-by: zongyu <zzy2529420793 <AT> gmail.com>
11
12 .../gentoo/java/ebuilder/maven/MavenEbuilder.java | 3 +++
13 .../gentoo/java/ebuilder/maven/MavenProject.java | 31 ++++++++++++++++++++++
14 2 files changed, 34 insertions(+)
15
16 diff --git a/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java b/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java
17 index b16a64e..c1e84d1 100644
18 --- a/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java
19 +++ b/src/main/java/org/gentoo/java/ebuilder/maven/MavenEbuilder.java
20 @@ -749,6 +749,7 @@ public class MavenEbuilder {
21 // JAVA_CLASSPATH_EXTRA
22 // JAVA_TEST_GENTOO_CLASSPATH
23 // JAVA_ENCODING (unless it differs in projects)
24 + // JAVA_NEED_TOOLS
25 // Compile (jars, doc):
26 // JAVA_SRC_DIR
27 // JAVA_RESOURCE_DIRS
28 @@ -878,6 +879,8 @@ public class MavenEbuilder {
29 writer.println('"');
30 }
31
32 + writer.print(mavenProject.getExtraJars(config.getStdoutWriter()));
33 +
34 writer.print("JAVA_SRC_DIR=\"");
35 writer.print(replaceWithVars(config.getWorkdir().relativize(
36 mavenProject.getSourceDirectory()).toString(), config));
37
38 diff --git a/src/main/java/org/gentoo/java/ebuilder/maven/MavenProject.java b/src/main/java/org/gentoo/java/ebuilder/maven/MavenProject.java
39 index 794f992..b7553b0 100644
40 --- a/src/main/java/org/gentoo/java/ebuilder/maven/MavenProject.java
41 +++ b/src/main/java/org/gentoo/java/ebuilder/maven/MavenProject.java
42 @@ -423,6 +423,37 @@ public class MavenProject {
43 this.sourceVersion = sourceVersion;
44 }
45
46 + /**
47 + * deal with scope == "system" dependencies
48 + *
49 + * @return lines of ebuild variables
50 + */
51 + @SuppressWarnings("unchecked")
52 + public String getExtraJars(final PrintWriter writer) {
53 + String ret = "";
54 + List<MavenDependency> systemDependencies = getDependencies(new String[]{"system"});
55 +
56 + for (final MavenDependency dependency : systemDependencies) {
57 + switch (dependency.getGroupId()) {
58 + case "com.sun":
59 + switch (dependency.getArtifactId()) {
60 + case "tools":
61 + ret += "JAVA_NEEDS_TOOLS=1\n";
62 + break;
63 + default:
64 + writer.println("Equivalent variable for " +
65 + dependency.getArtifactId() + " not found.");
66 + }
67 + break;
68 + default:
69 + writer.println("Equivalent variable for " +
70 + dependency.getGroupId() + " not found.");
71 + }
72 + }
73 +
74 + return ret;
75 + }
76 +
77 /**
78 * Getter for {@link #targetVersion}.
79 *