summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVolkmar W. Pogatzki <gentoo@pogatzki.net>2023-12-03 11:28:31 +0100
committerMiroslav Šulc <fordfrog@gentoo.org>2024-01-11 10:48:48 +0100
commit0126d6a3c2ef4dd488ceac132b8c5dca2490e96f (patch)
tree8c3b82c097808df610e081fe04bc79553fe1ec13
parentdev-java/json: drop 20220320 (diff)
downloadgentoo-0126d6a3c2ef4dd488ceac132b8c5dca2490e96f.tar.gz
gentoo-0126d6a3c2ef4dd488ceac132b8c5dca2490e96f.tar.bz2
gentoo-0126d6a3c2ef4dd488ceac132b8c5dca2490e96f.zip
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@pogatzki.net> Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>
-rw-r--r--eclass/java-utils-2.eclass40
1 files changed, 40 insertions, 0 deletions
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