diff options
author | Volkmar W. Pogatzki <gentoo@pogatzki.net> | 2022-03-22 18:08:01 +0100 |
---|---|---|
committer | Florian Schmaus <flow@gentoo.org> | 2022-03-29 10:26:53 +0200 |
commit | f05681e1984f759b0e7235b9ea373b9d27a8cff4 (patch) | |
tree | ebcc5012553df7ab73034aac925c55964467adaf /dev-java/batik | |
parent | app-text/pelican: version bump to 4.7.2 (diff) | |
download | gentoo-f05681e1984f759b0e7235b9ea373b9d27a8cff4.tar.gz gentoo-f05681e1984f759b0e7235b9ea373b9d27a8cff4.tar.bz2 gentoo-f05681e1984f759b0e7235b9ea373b9d27a8cff4.zip |
dev-java/batik: Bump to 1.14
Closes: https://bugs.gentoo.org/710208
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Closes: https://github.com/gentoo/gentoo/pull/24382
Signed-off-by: Florian Schmaus <flow@gentoo.org>
Diffstat (limited to 'dev-java/batik')
-rw-r--r-- | dev-java/batik/Manifest | 1 | ||||
-rw-r--r-- | dev-java/batik/batik-1.14.ebuild | 191 | ||||
-rw-r--r-- | dev-java/batik/files/batik-1.14-modules | 33 | ||||
-rw-r--r-- | dev-java/batik/files/batik-squiggle.desktop | 9 | ||||
-rw-r--r-- | dev-java/batik/metadata.xml | 4 |
5 files changed, 238 insertions, 0 deletions
diff --git a/dev-java/batik/Manifest b/dev-java/batik/Manifest index d7732ad2c392..33f7b1515575 100644 --- a/dev-java/batik/Manifest +++ b/dev-java/batik/Manifest @@ -1 +1,2 @@ +DIST batik-src-1.14.tar.gz 17647867 BLAKE2B 9385e77e739ece921012310a53953a6e258a5d748987e85dd20783ca248ae55619db6472b7590a45fe40a1b51c693478a37a7dbe1a958b42392c525e5f228815 SHA512 689c52f58f8f0456c89bd18745d2d92e7590b9054bea71b96be87d44977057d583e78504cbf14afc3e0c585d2383dac3009c7c421de868c847db045e921da8fb DIST batik-src-1.9.tar.gz 16748072 BLAKE2B 4e23c0de3d56ba130c5bc9ef80a01549e8c11ab4db3b1ac5dae8525cf0a3a8b7f4df3161c12f1f0df9c74229aaf2034fb6c9c2f91b7fc7407a0af580d144e606 SHA512 96a5c16bd3d61ea33ed5013fd0b00f1724470d9b667f0f84ef4a29dcaaa19b1cc8ffcc92dc49767f4e29d77a47f99df5afca479336ac5619778b51a6fb6cd952 diff --git a/dev-java/batik/batik-1.14.ebuild b/dev-java/batik/batik-1.14.ebuild new file mode 100644 index 000000000000..f4be7b642036 --- /dev/null +++ b/dev-java/batik/batik-1.14.ebuild @@ -0,0 +1,191 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Skeleton command: +# java-ebuilder --generate-ebuild --workdir . --pom pom.xml --download-uri mirror://apache/xmlgraphics/batik/source/batik-src-1.14.tar.gz --slot 1.14 --keywords "~amd64 ~ppc64 ~x86" --ebuild batik-1.14.ebuild + +EAPI=8 + +JAVA_PKG_IUSE="doc source test" +MAVEN_ID="org.apache.xmlgraphics:batik:1.14" +JAVA_TESTING_FRAMEWORKS="junit-4" + +inherit desktop java-pkg-2 java-pkg-simple xdg-utils + +DESCRIPTION="XML Graphics Batik" +HOMEPAGE="https://xmlgraphics.apache.org/batik/" +SRC_URI="mirror://apache/xmlgraphics/batik/source/batik-src-${PV}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="1.14" +KEYWORDS="~amd64 ~ppc64 ~x86" + +CP_DEPEND=" + dev-java/jacl:0 + dev-java/jython:2.7 + dev-java/rhino:1.6 + dev-java/xalan:0 + dev-java/xml-commons-external:1.3 + dev-java/xmlgraphics-commons:2 +" + +DEPEND="${CP_DEPEND} + >=virtual/jdk-1.8:*" + +RDEPEND="${CP_DEPEND} + >=virtual/jre-1.8:*" + +DOCS=( {CHANGES,NOTICE,README} ) + +S="${WORKDIR}/batik-${PV}" + +src_prepare() { + default + java-pkg_clean +} + +src_compile() { + + # We loop over the modules list and compile the jar files. + while read module ; do \ + + echo "compiling $module" + + JAVA_SRC_DIR="" + JAVA_RESOURCE_DIRS="" + JAVA_JAR_FILENAME="$module.jar" + JAVA_MAIN_CLASS="" + + # Not all of the modules have resources. + if [[ -d $module/src/main/resources ]]; then \ + JAVA_RESOURCE_DIRS="$module/src/main/resources" + fi + + # Don't let sed die on modules without MainClass. + JAVA_MAIN_CLASS=$( sed -n 's:.*<mainClass>\(.*\)</mainClass>:\1:p' $module/pom.xml ) + + # Some modules don't have source code. + if [[ -d $module/src/main/java/org ]]; then \ + JAVA_SRC_DIR="$module/src/main/java" + java-pkg-simple_src_compile + else + # This case applies to batik-rasterizer. + if [[ -d $module/src/main/resources/org ]]; then \ + jar -cfe $module.jar "${JAVA_MAIN_CLASS}" -C "$module/src/main/resources" . || die + # Else for batik-rasterizer-ext, batik-squiggle and batik-squiggle-ext + else + jar -cfe $module.jar "${JAVA_MAIN_CLASS}" -C . README || die + zip -d $module.jar "README" + fi + fi + + JAVA_GENTOO_CLASSPATH_EXTRA+=":$module.jar" + + rm -fr target || die + + # Modules batik-rasterizer-ext and batik-squiggle-ext, upstream puts their jar files in the extensions + # directory, see batik-extension/src/main/resources/org/apache/batik/extensions/README.txt + # We keep them in the mudules list for later but omit them by 'grep -v'. + # The same for batik-test-old which depends on fop-transcoder-allinone which itself depends on batik. + # batik-1.14-modules is the "Reactor Build Order" extracted from the output of "mvn dependency:tree". + done < <(grep -v '\(batik-rasterizer-ext\|batik-squiggle-ext\|batik-test-old\)' "${FILESDIR}"/batik-1.14-modules) + + if use doc; then + + JAVA_SRC_DIR="" + JAVA_JAR_FILENAME="ignoreme.jar" + + while read module ; do \ + + # Some modules don't have source code + if [[ -d $module/src/main/java/org ]]; then \ + JAVA_SRC_DIR+=( "$module/src/main/java" ) + fi + + done < "${FILESDIR}"/batik-1.14-modules + + java-pkg-simple_src_compile + fi +} + +src_test() { + + JAVA_TEST_GENTOO_CLASSPATH="junit-4" + + while read module ; do \ + + echo "testing $module" + + JAVA_TEST_SRC_DIR="" + JAVA_TEST_RESOURCE_DIRS="" + JAVA_TEST_RUN_ONLY="" + + if [[ -d $module/src/test/resources ]]; then \ + JAVA_TEST_RESOURCE_DIRS="$module/src/test/resources" + fi + + # https://github.com/apache/xmlgraphics-batik/blob/refs/tags/batik-1_14/batik-util/pom.xml#L74-L75 + if [[ $module == batik-util ]]; then \ + JAVA_TEST_RUN_ONLY="org.apache.batik.util.Base64TestCases" + fi + + if [[ -d $module/src/test/java/org ]]; then \ + JAVA_TEST_SRC_DIR="$module/src/test/java" + java-pkg-simple_src_test + fi + + done < <(grep -v '\(batik-rasterizer-ext\|batik-squiggle-ext\|batik-test-old\)' "${FILESDIR}"/batik-1.14-modules) +} + +src_install() { + einstalldocs + domenu "${FILESDIR}"/batik-squiggle.desktop + doicon batik-svgbrowser/src/main/resources/org/apache/batik/apps/svgbrowser/resources/init.svg + + while read module ; do \ + + JAVA_MAIN_CLASS=$( sed -n 's:.*<mainClass>\(.*\)</mainClass>:\1:p' $module/pom.xml ) + + java-pkg_dojar $module.jar + + # Add a launcher if the module has a MainClass. + if [[ -n "${JAVA_MAIN_CLASS}" ]]; then \ + java-pkg_dolauncher "$module-${SLOT}" --main "${JAVA_MAIN_CLASS}" + fi + + # Some modules don't have source code + if [[ -d $module/src/main/java/org ]]; then \ + + if use source; then + java-pkg_dosrc "$module/src/main/java/*" + fi + + fi + + done < <(grep -v '\(batik-rasterizer-ext\|batik-squiggle-ext\|batik-test-old\)' "${FILESDIR}"/batik-1.14-modules) + + local java_policy_file="${JAVA_PKG_SHAREPATH}/etc/${PN}.policy" + insinto "$(dirname "${java_policy_file}")" + newins - "$(basename "${java_policy_file}")" <<- _EOF_ + grant codeBase "file:${EPREFIX}${JAVA_PKG_JARDEST}/-" { + permission java.security.AllPermission; + }; + _EOF_ + java-pkg_register-environment-variable \ + gjl_java_args \ + "-Djava.security.policy=file:${EPREFIX}${java_policy_file}" + + if use doc; then + java-pkg_dojavadoc target/api + fi +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} diff --git a/dev-java/batik/files/batik-1.14-modules b/dev-java/batik/files/batik-1.14-modules new file mode 100644 index 000000000000..d9c964870901 --- /dev/null +++ b/dev-java/batik/files/batik-1.14-modules @@ -0,0 +1,33 @@ +batik-constants +batik-i18n +batik-test +batik-util +batik-awt-util +batik-css +batik-ext +batik-xml +batik-dom +batik-parser +batik-svg-dom +batik-anim +batik-gvt +batik-script +batik-bridge +batik-svggen +batik-transcoder +batik-codec +batik-extension +batik-gui-util +batik-svgrasterizer +batik-rasterizer-ext +batik-rasterizer +batik-slideshow +batik-swing +batik-svgbrowser +batik-squiggle-ext +batik-squiggle +batik-svgpp +batik-ttf2svg +batik-test-swing +batik-test-svg +batik-test-old diff --git a/dev-java/batik/files/batik-squiggle.desktop b/dev-java/batik/files/batik-squiggle.desktop new file mode 100644 index 000000000000..95bb990177c7 --- /dev/null +++ b/dev-java/batik/files/batik-squiggle.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Squiggle +Comment=SVG browser +Exec=batik-squiggle-1.14 +Icon=init +Terminal=false +Type=Application +Categories=Graphics;VectorGraphics; +MimeType=image/svg+xml; diff --git a/dev-java/batik/metadata.xml b/dev-java/batik/metadata.xml index 2841917ad49d..a9b2477896cb 100644 --- a/dev-java/batik/metadata.xml +++ b/dev-java/batik/metadata.xml @@ -5,6 +5,10 @@ <email>java@gentoo.org</email> <name>Java</name> </maintainer> +<upstream> + <bugs-to>https://issues.apache.org/jira/projects/BATIK/issues/</bugs-to> + <remote-id type="github">apache/xmlgraphics-batik</remote-id> +</upstream> <longdescription> Java toolkit for applications or applets that want to use images in the Scalable Vector Graphics (SVG) format for various |