dev-java/java-config: Python 3.8 compatibility
[gentoo.git] / dev-java / saxon / saxon-9.2.0.6-r2.ebuild
1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 JAVA_PKG_IUSE="doc source"
7
8 inherit versionator java-pkg-2 java-ant-2
9
10 MY_PV="$(replace_all_version_separators -)"
11
12 DESCRIPTION="A XSLT and XQuery Processor"
13 HOMEPAGE="http://saxon.sourceforge.net/"
14 SRC_URI="mirror://sourceforge/${PN}/${PN}he${MY_PV}source.zip"
15
16 LICENSE="MPL-1.0"
17 SLOT="9"
18 KEYWORDS="amd64 ~arm arm64 ppc64 x86"
19
20 CDEPEND="
21         dev-java/xom:0
22         dev-java/jdom:0
23         dev-java/dom4j:1
24         dev-java/ant-core"
25
26 RDEPEND="
27         ${CDEPEND}
28         >=virtual/jre-1.6"
29
30 DEPEND="
31         ${CDEPEND}
32         >=virtual/jdk-1.6"
33
34 S="${WORKDIR}"
35
36 # prepare eclass variables
37 JAVA_ANT_REWRITE_CLASSPATH="yes"
38 JAVA_ANT_CLASSPATH_TAGS="javac javadoc"
39
40 src_prepare() {
41         default
42
43         # Fedora-inspired removal.
44
45         # deadNET.
46         rm -rv net/sf/saxon/dotnet || die
47
48         # Depends on XQJ (javax.xml.xquery).
49         rm -rv net/sf/saxon/xqj || die
50
51         # This requires a EE edition feature (com.saxonica.xsltextn).
52         rm -v net/sf/saxon/option/sql/SQLElementFactory.java || die
53
54         # <major>.<minor> version
55         local version="$(get_version_component_range 1-2)"
56
57         # generate build.xml with external javadoc links
58         sed -e "s:@JDK@:1.6:" \
59                 -e "s:@JDOM@:1:" \
60                 < "${FILESDIR}/${version}-build.xml" \
61                 > "${S}/build.xml" \
62                 || die "build.xml generation failed!"
63
64         # prepare creates the dir for properties
65         eant prepare
66
67         # properties
68         cp -v \
69                 "${FILESDIR}/${version}-edition.properties" \
70                 "${S}/build/classes/edition.properties" || die
71 }
72
73 src_compile() {
74         local gcp="$(java-pkg_getjars dom4j-1,jdom,xom)"
75         gcp="${gcp}:$(java-pkg_getjars --build-only ant-core)"
76         eant -Dgentoo.classpath="${gcp}" jar $(use_doc)
77 }
78
79 src_install() {
80         java-pkg_dojar build/lib/${PN}.jar
81
82         java-pkg_dolauncher ${PN}${SLOT}-transform --main net.sf.saxon.Transform
83         java-pkg_dolauncher ${PN}${SLOT}-query --main net.sf.saxon.Query
84
85         java-pkg_register-ant-task
86
87         use doc && java-pkg_dojavadoc build/api
88
89         use source && java-pkg_dosrc src
90 }