| 1 |
# Copyright 1999-2009 Gentoo Foundation
|
| 2 |
# Distributed under the terms of the GNU General Public License v2
|
| 3 |
# $Header: /var/cvsroot/gentoo-x86/www-servers/axis/axis-1.4-r1.ebuild,v 1.1 2009/11/08 21:25:55 caster Exp $
|
| 4 |
|
| 5 |
EAPI=2
|
| 6 |
WANT_ANT_TASKS="ant-nodeps ant-trax"
|
| 7 |
JAVA_PKG_IUSE="doc source examples"
|
| 8 |
|
| 9 |
inherit eutils java-pkg-2 java-ant-2
|
| 10 |
|
| 11 |
MY_PV="${PV//./_}"
|
| 12 |
MY_P="${PN}-${MY_PV}"
|
| 13 |
DESCRIPTION="Apache's Axis1 implementation of the SOAP (Simple Object Access Protocol)"
|
| 14 |
HOMEPAGE="http://ws.apache.org/axis/index.html"
|
| 15 |
SRC_URI="mirror://apache/ws/${PN}/${MY_PV}/${PN}-src-${MY_PV}.tar.gz"
|
| 16 |
|
| 17 |
LICENSE="Apache-2.0"
|
| 18 |
SLOT="1"
|
| 19 |
KEYWORDS="amd64 x86"
|
| 20 |
IUSE="debug"
|
| 21 |
|
| 22 |
RDEPEND="
|
| 23 |
dev-java/commons-discovery:0
|
| 24 |
dev-java/wsdl4j:0
|
| 25 |
dev-java/sun-jaf:0
|
| 26 |
dev-java/commons-logging:0
|
| 27 |
java-virtuals/javamail:0
|
| 28 |
dev-java/bsf:2.3
|
| 29 |
dev-java/castor:1.0
|
| 30 |
dev-java/commons-httpclient:3
|
| 31 |
dev-java/commons-net:0
|
| 32 |
dev-java/sun-jimi:0
|
| 33 |
dev-java/servletapi:2.4
|
| 34 |
dev-java/saaj:0
|
| 35 |
dev-java/jax-rpc:0
|
| 36 |
dev-java/log4j:0
|
| 37 |
dev-java/xml-commons:0
|
| 38 |
dev-java/xml-xmlbeans:1"
|
| 39 |
|
| 40 |
DEPEND=">=virtual/jdk-1.5
|
| 41 |
${RDEPEND}"
|
| 42 |
RDEPEND=">=virtual/jre-1.5
|
| 43 |
${RDEPEND}"
|
| 44 |
|
| 45 |
# uses enum as identifier
|
| 46 |
JAVA_PKG_WANT_SOURCE="1.4"
|
| 47 |
JAVA_PKG_WANT_TARGET="1.4"
|
| 48 |
|
| 49 |
S="${WORKDIR}/${MY_P}"
|
| 50 |
|
| 51 |
AXIS_NAME="${PN}-${SLOT}"
|
| 52 |
|
| 53 |
# not declared mandatory but fails without it
|
| 54 |
# mailapi.jar would be enough but that's only in -bin, mail.jar superseedes
|
| 55 |
EANT_GENTOO_CLASSPATH="sun-jaf,javamail,log4j,xml-xmlbeans-1,servletapi-2.4,bsf-2.3,sun-jimi,commons-httpclient-3,castor-1.0,xml-commons,commons-net"
|
| 56 |
EANT_EXTRA_ARGS="-Ddeprecation=false -Dbase.path=/opt
|
| 57 |
-Dservlet.jar=servlet-api.jar -Dwsdl4j-1.5.1.jar=wsdl4j.jar
|
| 58 |
-Dcommons-logging-1.0.4.jar=commons-logging.jar"
|
| 59 |
EANT_BUILD_TARGET="compile"
|
| 60 |
EANT_DOC_TARGET="javadocs"
|
| 61 |
EANT_NEEDS_TOOLS="true"
|
| 62 |
|
| 63 |
#TODO-tests require Atlassian clover, need to figure out which ones
|
| 64 |
RESTRICT="test"
|
| 65 |
|
| 66 |
java_prepare() {
|
| 67 |
# remove some <copy> actions
|
| 68 |
epatch "${FILESDIR}/${P}-build.xml.patch"
|
| 69 |
# remove exact lib paths and global java.classpath from classpath
|
| 70 |
epatch "${FILESDIR}/${P}-path_refs.xml.patch"
|
| 71 |
# add missing target to javac, xml rewriting would break entities
|
| 72 |
epatch "${FILESDIR}/${P}-tools-build.xml.patch"
|
| 73 |
# remove most of <available> checks
|
| 74 |
epatch "${FILESDIR}/${P}-targets.xml.patch"
|
| 75 |
# this clashes with java6 method
|
| 76 |
epatch "${FILESDIR}/${P}-java6.patch"
|
| 77 |
# and replace them with predefined properties
|
| 78 |
cp "${FILESDIR}/build.properties" . \
|
| 79 |
|| die "failed to copy build.properties from ${FILESDIR}"
|
| 80 |
|
| 81 |
rm -rf "${S}"/docs/apiDocs || die
|
| 82 |
|
| 83 |
#Remove test till they are working
|
| 84 |
rm -rf "${S}"/test || die
|
| 85 |
#cd "${S}"/test
|
| 86 |
#mv build_ant.xml build.xml
|
| 87 |
cd "${S}"/webapps/axis/WEB-INF/lib
|
| 88 |
rm -v *.jar || die
|
| 89 |
|
| 90 |
cd "${S}/lib"
|
| 91 |
mv saaj.jar endorsed/ || die
|
| 92 |
rm -v *.jar || die
|
| 93 |
java-pkg_jar-from --build-only ant-core
|
| 94 |
java-pkg_jar-from wsdl4j wsdl4j.jar
|
| 95 |
java-pkg_jar-from commons-logging commons-logging.jar
|
| 96 |
java-pkg_jar-from commons-discovery commons-discovery.jar
|
| 97 |
|
| 98 |
if use debug; then
|
| 99 |
EANT_EXTRA_ARGS+=" -Ddebug=on"
|
| 100 |
else
|
| 101 |
EANT_EXTRA_ARGS+=" -Ddebug=off"
|
| 102 |
fi
|
| 103 |
|
| 104 |
cd "${S}"
|
| 105 |
java-ant_rewrite-classpath
|
| 106 |
java-ant_rewrite-bootclasspath auto build.xml "lib/endorsed/xml-apis-2.6.2.jar:lib/endorsed/xercesImpl-2.6.2.jar:lib/endorsed/saaj.jar"
|
| 107 |
sed -i '/<bootclasspath refid="boot.classpath"/d' build.xml || die
|
| 108 |
}
|
| 109 |
|
| 110 |
src_install() {
|
| 111 |
dodir /usr/share/${AXIS_NAME}
|
| 112 |
mv build/lib/axis-ant.jar build/lib/ant-axis.jar || die
|
| 113 |
java-pkg_dojar build/lib/axis.jar
|
| 114 |
java-pkg_dojar build/lib/ant-axis.jar
|
| 115 |
java-pkg_dojar build/lib/jaxrpc.jar
|
| 116 |
java-pkg_register-ant-task
|
| 117 |
dodir /usr/share/${AXIS_NAME}/webapps
|
| 118 |
|
| 119 |
cp -pR "${S}"/webapps/axis "${D}"/usr/share/${AXIS_NAME}/webapps || die
|
| 120 |
|
| 121 |
dodoc NOTICE README
|
| 122 |
dohtml release-notes.html changelog.html
|
| 123 |
|
| 124 |
if use doc; then
|
| 125 |
java-pkg_dojavadoc build/javadocs/
|
| 126 |
dohtml -r docs/*
|
| 127 |
dodoc xmls/*
|
| 128 |
fi
|
| 129 |
|
| 130 |
use source && java-pkg_dosrc src
|
| 131 |
use examples && java-pkg_doexamples samples
|
| 132 |
}
|
| 133 |
|
| 134 |
pkg_postinst() {
|
| 135 |
elog "Please note that this package is mainly a dependency library. Contributions"
|
| 136 |
elog "to webapp packaging welcome at https://bugs.gentoo.org/show_bug.cgi?id=89556"
|
| 137 |
}
|