Gentoo Archives: gentoo-dev

From: "Volkmar W. Pogatzki" <gentoo@××××××××.net>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] [PATCH v3] java-pkg-simple.eclass: Automatic-Module-Name
Date: Sat, 16 Jul 2022 20:58:58
Message-Id: 20220716205839.16957-1-gentoo@pogatzki.net
1 The new variable JAVA_AUTOMATIC_MODULE_NAME can be defined in the
2 ebuild. Its value will be transferred to the MANIFEST.MF of the jar
3 file.
4
5 Closes: https://bugs.gentoo.org/857468
6 Signed-off-by: Volkmar W. Pogatzki <gentoo@××××××××.net>
7 ---
8 eclass/java-pkg-simple.eclass | 12 ++++++++++++
9 1 file changed, 12 insertions(+)
10
11 diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass
12 index 1e101a828c4..c0a6b4d21df 100644
13 --- a/eclass/java-pkg-simple.eclass
14 +++ b/eclass/java-pkg-simple.eclass
15 @@ -134,6 +134,12 @@ fi
16 # JAVA_MAIN_CLASS="org.gentoo.java.ebuilder.Main"
17 # @CODE
18
19 +# @ECLASS_VARIABLE: JAVA_AUTOMATIC_MODULE_NAME
20 +# @DEFAULT_UNSET
21 +# @DESCRIPTION:
22 +# The value of the Automatic-Module-Name entry, which is going to be added to
23 +# MANIFEST.MF.
24 +
25 # @ECLASS_VARIABLE: JAVADOC_ARGS
26 # @DEFAULT_UNSET
27 # @DESCRIPTION:
28 @@ -418,6 +424,12 @@ java-pkg-simple_src_compile() {
29 jar_args="cf ${JAVA_JAR_FILENAME}"
30 fi
31 jar ${jar_args} -C ${classes} . || die "jar failed"
32 + if [[ -v JAVA_AUTOMATIC_MODULE_NAME ]]; then
33 + cat > "${T}/add-to-MANIFEST.MF" <<< "Automatic-Module-Name: ${JAVA_AUTOMATIC_MODULE_NAME}" \
34 + || die "add-to-MANIFEST.MF failed"
35 + jar ufmv ${JAVA_JAR_FILENAME} "${T}/add-to-MANIFEST.MF" \
36 + || die "updating MANIFEST.MF failed"
37 + fi
38 }
39
40 # @FUNCTION: java-pkg-simple_src_install
41 --
42 2.35.1