dev-java/openjdk-jre-bin: bump to 11.0.7_p10
[gentoo.git] / dev-java / batik / batik-1.9.ebuild
1 # Copyright 1999-2017 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=5
5
6 JAVA_PKG_IUSE="doc"
7
8 inherit java-pkg-2 java-ant-2 eutils
9
10 DESCRIPTION="Java based SVG toolkit"
11 HOMEPAGE="https://xmlgraphics.apache.org/batik/"
12 SRC_URI="http://apache.mirrors.ovh.net/ftp.apache.org/dist/xmlgraphics/${PN}/source/${PN}-src-${PV}.tar.gz"
13
14 LICENSE="Apache-2.0"
15 SLOT="1.9"
16 KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
17 IUSE="doc python tcl"
18
19 CDEPEND="
20         tcl? ( dev-java/jacl:0 )
21         python? ( dev-java/jython:2.7 )
22         dev-java/xalan:0
23         dev-java/rhino:1.6
24         dev-java/ant-core:0
25         dev-java/xmlgraphics-commons:2
26         dev-java/xml-commons-external:1.3"
27
28 DEPEND="
29         ${CDEPEND}
30         >=virtual/jdk-1.6"
31
32 RDEPEND="
33         ${CDEPEND}
34         >=virtual/jre-1.6"
35
36 JAVA_ANT_REWRITE_CLASSPATH="true"
37
38 EANT_GENTOO_CLASSPATH="
39         xml-commons-external-1.3
40         xmlgraphics-commons-2
41         rhino-1.6
42         xalan"
43
44 src_prepare() {
45         default
46
47         # See bug 318323.
48         local file
49         for file in build.xml contrib/rasterizertask/build.xml; do
50                 java-ant_xml-rewrite -f ${file} -c -e javadoc -a failonerror -v no -a maxmemory -v 512m
51         done
52
53         # See bug 628812.
54         use tcl && epatch "${FILESDIR}/${P}-ImportInfo.patch"
55
56         cd lib || die
57         rm -v *.jar build/*.jar || die
58         use python && java-pkg_jar-from jython-2.7
59         use tcl && java-pkg_jar-from jacl
60 }
61
62 src_compile() {
63         # Fails to build on amd64 without this
64         export ANT_OPTS="-Xmx256m"
65         use amd64 && export ANT_OPTS="-Xmx1g"
66
67         eant jars all-jar $(use_doc)
68         cd contrib/rasterizertask || die
69         eant -Dgentoo.classpath="$(java-pkg_getjar ant-core ant.jar):../../classes" jar $(use_doc)
70 }
71
72 src_install() {
73         batik_unversion_jars() {
74                 local jar
75                 for jar in batik-*.jar; do
76                         newj="${jar%-*}.jar"
77                         java-pkg_newjar ${jar} ${newj}
78                 done
79         }
80
81         # First unversion jars in ${P}/lib
82         cd "${S}/${P}/lib" || die
83         batik_unversion_jars
84
85         # Then, only those in ${P}
86         cd "${S}/${P}" || die
87         batik_unversion_jars
88
89         # Proceed with documentation installation
90         cd "${S}" || die
91         dodoc README CHANGES
92         use doc && java-pkg_dojavadoc "${P}/docs/javadoc"
93
94         # See bug #116976.
95         java-pkg_dolauncher "batik-${SLOT}" \
96                 --pwd "${EPREFIX}/usr/share/${PN}-${SLOT}/" \
97                 --main org.apache.batik.apps.svgbrowser.Main
98
99         # To find these lsjar batik-${SLOT} | grep Main.class
100         local launcher
101         for launcher in ttf2svg slideshow svgpp rasterizer; do
102                 java-pkg_dolauncher batik-${launcher}-${SLOT} \
103                         --main org.apache.batik.apps.${launcher}.Main
104         done
105
106         # Install and register the ant task.
107         java-pkg_dojar contrib/rasterizertask/build/lib/RasterizerTask.jar
108         java-pkg_register-ant-task
109 }