• [gentoo-dev] [PATCH] java-pkg-simple.eclass: allow JAVA_MAIN_CLASS _and

    From Volkmar W. Pogatzki@21:1/5 to All on Tue Sep 27 13:50:01 2022
    The eclass did not handle JAVA_MAIN_CLASS if there was also a given META-INF/MANIFEST.MF.
    This change allows adding JAVA_AUTOMATIC_MODULE_NAME and/or
    JAVA_MAIN_CLASS to the MANIFEST.MF file if it exists or creates one if
    not.

    Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
    ---
    eclass/java-pkg-simple.eclass | 17 +++++++++--------
    1 file changed, 9 insertions(+), 8 deletions(-)

    diff --git a/eclass/java-pkg-simple.eclass b/eclass/java-pkg-simple.eclass index 6f7324240e3..6e38a07f66e 100644
    --- a/eclass/java-pkg-simple.eclass
    +++ b/eclass/java-pkg-simple.eclass
    @@ -415,21 +415,22 @@ java-pkg-simple_src_compile() {
    fi

    # package
    + [[ ! -d ${classes}/META-INF ]] && mkdir ${classes}/META-INF
    + if [[ -v JAVA_AUTOMATIC_MODULE_NAME ]]; then
    + echo "Automatic-Module-Name: ${JAVA_AUTOMATIC_MODULE_NAME}" \
    + >> ${classes}/META-INF/MANIFEST.MF || die "adding module name failed"
    + fi
    + if [[ -v JAVA_MAIN_CLASS ]]; then
    + echo "Main-Class: ${JAVA_MAIN_CLASS}" \
    + >> ${classes}/META-INF/MANIFEST.MF || die "adding main class failed"
    + fi
    local jar_args
    if [[ -e ${classes}/META-INF/MANIFEST.MF ]]; then
    jar_args="cfm ${JAVA_JAR_FILENAME} ${classes}/META-INF/MANIFEST.MF"
    - elif [[ ${JAVA_MAIN_CLASS} ]]; then
    - jar_args="cfe ${JAVA_JAR_FILENAME} ${JAVA