commit: 0126d6a3c2ef4dd488ceac132b8c5dca2490e96f Author: Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net> AuthorDate: Sun Dec 3 10:28:31 2023 +0000 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> CommitDate: Thu Jan 11 09:48:48 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0126d6a3
java-utils-2.eclass: new JAVADOC_CLASSPATH, JAVADOC_SRC_DIRS Several multi-jar packages built with java-pkg-simple.eclass use a workaround to avoid passing arguments to ejavadoc. That workaround runs another java-pkg-simple_src_compile which builds an unneeded jar file usually called "ignoreme.jar". This patch defines the JAVADOC_SRC_DIRS eclass variable needed by the java-pkg-simple.eclass to decide whether to call ejavadoc or not. The other new eclass variable is JAVADOC_CLASSPATH. It can be used for multi-jar packages to pass dependencies's classpath to ejavadoc. Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net> Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org> eclass/java-utils-2.eclass | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/eclass/java-utils-2.eclass b/eclass/java-utils-2.eclass index 31b8ab8df60a..814b4957d52c 100644 --- a/eclass/java-utils-2.eclass +++ b/eclass/java-utils-2.eclass @@ -218,6 +218,46 @@ JAVA_PKG_COMPILERS_CONF=${JAVA_PKG_COMPILERS_CONF:="/etc/java-config-2/build/com # ebuild foo.ebuild compile # @CODE +# @ECLASS_VARIABLE: JAVADOC_CLASSPATH +# @DEFAULT_UNSET +# @DESCRIPTION: +# Comma or space separated list of java packages that are needed for generating +# javadocs. Can be used to avoid overloading the compile classpath in multi-jar +# packages if there are jar files which have different dependencies. +# +# @CODE +# Example: +# JAVADOC_CLASSPATH=" +# jna-4 +# jsch +# " +# @CODE + +# @ECLASS_VARIABLE: JAVADOC_SRC_DIRS +# @DEFAULT_UNSET +# @DESCRIPTION: +# An array of directories relative to ${S} which contain the sources of +# the application. It needs to sit in global scope; if put in src_compile() +# it would not work. +# It is needed by the java-pkg-simple.eclass to decide whether to call ejavadoc +# or not. If this variable is defined then java-pkg-simple_src_compile will not +# call ejavadoc automatically. ejavadoc has then to be called explicitly from +# the ebuild. It is meant for usage in multi-jar packages in order to avoid an +# extra compilation run only for producing the javadocs. +# +# @CODE +# Example: +# JAVADOC_SRC_DIRS=( +# "${PN}-core" +# "${PN}-jsch" +# "${PN}-pageant" +# "${PN}-sshagent" +# "${PN}-usocket-jna" +# "${PN}-usocket-nc" +# "${PN}-connector-factory" +# ) +# @CODE + # TODO document me JAVA_PKG_QA_VIOLATIONS=0