--- /usr/portage/www-servers/tomcat/tomcat-5.5.17.ebuild 2006-07-03 05:13:09.000000000 +0300 +++ tomcat-5.5.17.ebuild 2006-07-05 19:39:21.000000000 +0300 @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/www-servers/tomcat/tomcat-5.5.17.ebuild,v 1.1 2006/07/03 02:13:09 nichoj Exp $ -inherit eutils java-pkg +inherit eutils java-pkg-2 java-ant-2 DESCRIPTION="Apache Servlet-2.4/JSP-2.0 Container" @@ -13,29 +13,34 @@ HOMEPAGE="http://jakarta.apache.org/tomc KEYWORDS="~amd64 ~x86" LICENSE="Apache-2.0" -RDEPEND=">=virtual/jdk-1.4 - =dev-java/eclipse-ecj-3.1* +RDEPEND="=dev-java/eclipse-ecj-3.1* =dev-java/commons-beanutils-1.7* >=dev-java/commons-collections-3.1 >=dev-java/commons-daemon-1.0.1 >=dev-java/commons-dbcp-1.2.1 >=dev-java/commons-digester-1.7 >=dev-java/commons-fileupload-1.0 - >=dev-java/commons-httpclient-2.0 >=dev-java/commons-el-1.0 >=dev-java/commons-launcher-0.9 >=dev-java/commons-logging-1.0.4 >=dev-java/commons-modeler-1.1 >=dev-java/commons-pool-1.2 - ~dev-java/jaxen-1.0 - >=dev-java/junit-3.8.1 - =dev-java/mx4j-3* >=dev-java/log4j-1.2.9 - >=dev-java/saxpath-1.0 ~dev-java/servletapi-2.4 - =dev-java/struts-1.2* - =dev-java/gnu-jaf-1* - >=dev-java/xerces-2.7.1" + || ( + >=virtual/jre-1.5 + ( + >=dev-java/commons-httpclient-2.0 + =virtual/jre-1.4 + =dev-java/gnu-jaf-1* + =virtual/jdk-1.4 + ~dev-java/jaxen-1.0 + >=dev-java/junit-3.8.1 + =dev-java/mx4j-3* + >=dev-java/saxpath-1.0 + >=dev-java/xerces-2.7.1 + ) + )" DEPEND=">=virtual/jdk-1.4 ${RDEPEND} sys-apps/sed @@ -51,9 +56,14 @@ WEBAPPS_DIR="/var/lib/${TOMCAT_NAME}/web pkg_setup() { enewgroup tomcat enewuser tomcat -1 -1 /dev/null tomcat + + if java-pkg_is-vm-version-ge 1.5; then + JAVA_PKG_WANT_SOURCE="1.5" + JAVA_PKG_WANT_TARGET="1.5" + fi } -src_unpack() { +ant_src_unpack() { unpack ${A} cd ${S} @@ -73,13 +83,18 @@ src_unpack() { mkdir ./bin && cd ./bin java-pkg_jar-from commons-logging commons-logging-api.jar - java-pkg_jar-from mx4j-3.0 mx4j.jar jmx.jar - java-pkg_jar-from mx4j-3.0 mx4j-rjmx.jar jmx-remote.jar java-pkg_jar-from commons-daemon + + if ! java-pkg_is-vm-version-ge 1.5; then + java-pkg_jar-from mx4j-3.0 mx4j.jar jmx.jar + java-pkg_jar-from mx4j-3.0 mx4j-rjmx.jar jmx-remote.jar + fi mkdir ../common/endorsed && cd ../common/endorsed - java-pkg_jar-from xerces-2 xml-apis.jar - java-pkg_jar-from xerces-2 xercesImpl.jar + if ! java-pkg_is-vm-version-ge 1.5; then + java-pkg_jar-from xerces-2 xml-apis.jar + java-pkg_jar-from xerces-2 xercesImpl.jar + fi mkdir ../lib && cd ../lib java-pkg_jar-from ant-core @@ -99,13 +114,11 @@ src_unpack() { src_compile(){ local antflags="-Dbase.path=${T}" - antflags="${antflags} -Dactivation.jar=$(java-config -p gnu-jaf-1)" antflags="${antflags} -Dcommons-collections.jar=$(java-config -p commons-collections)" antflags="${antflags} -Dcommons-daemon.jar=$(java-config -p commons-daemon)" antflags="${antflags} -Dcommons-digester.jar=$(java-config -p commons-digester)" antflags="${antflags} -Dcommons-dbcp.jar=$(java-config -p commons-dbcp)" antflags="${antflags} -Dcommons-el.jar=$(java-config -p commons-el)" - antflags="${antflags} -Dcommons-httpclient.jar=$(java-config -p commons-httpclient)" antflags="${antflags} -Dcommons-pool.jar=$(java-config -p commons-pool)" antflags="${antflags} -Dcommons-fileupload.jar=$(java-config -p commons-fileupload)" antflags="${antflags} -Dcommons-launcher.jar=$(java-config -p commons-launcher)" @@ -113,22 +126,24 @@ src_compile(){ antflags="${antflags} -Djunit.jar=$(java-config -p junit)" antflags="${antflags} -Djdt.jar=$(java-pkg_getjar eclipse-ecj-3.1 ecj.jar)" antflags="${antflags} -Dlog4j.jar=$(java-config -p log4j)" - antflags="${antflags} -Dstruts.jar=$(java-pkg_getjar struts-1.2 struts.jar)" antflags="${antflags} -Dcommons-beanutils.jar=$(java-pkg_getjar commons-beanutils-1.7 commons-beanutils.jar)" antflags="${antflags} -Dcommons-logging.jar=$(java-pkg_getjar commons-logging commons-logging.jar)" antflags="${antflags} -Dcommons-logging-api.jar=$(java-pkg_getjar commons-logging commons-logging-api.jar)" - antflags="${antflags} -Djaxen.jar=$(java-pkg_getjar jaxen jaxen-full.jar)" - antflags="${antflags} -Djmx.jar=$(java-pkg_getjar mx4j-3.0 mx4j.jar)" - antflags="${antflags} -Djmx-remote.jar=$(java-pkg_getjar mx4j-3.0 mx4j-rjmx.jar)" - antflags="${antflags} -Dsaxpath.jar=$(java-pkg_getjar saxpath saxpath.jar)" - antflags="${antflags} -DxercesImpl.jar=$(java-pkg_getjar xerces-2 xercesImpl.jar)" - antflags="${antflags} -Dxml-apis.jar=$(java-pkg_getjar xerces-2 xml-apis.jar)" - antflags="${antflags} -Dstruts.home=/usr/share/struts" antflags="${antflags} -Djasper.home=${S}/jasper" + if ! java-pkg_is-vm-version-ge 1.5; then + antflags="${antflags} -Dcommons-httpclient.jar=$(java-config -p commons-httpclient)" + antflags="${antflags} -Dactivation.jar=$(java-config -p gnu-jaf-1)" + antflags="${antflags} -Djaxen.jar=$(java-pkg_getjar jaxen jaxen-full.jar)" + antflags="${antflags} -Djmx.jar=$(java-pkg_getjar mx4j-3.0 mx4j.jar)" + antflags="${antflags} -Djmx-remote.jar=$(java-pkg_getjar mx4j-3.0 mx4j-rjmx.jar)" + antflags="${antflags} -Dsaxpath.jar=$(java-pkg_getjar saxpath saxpath.jar)" + antflags="${antflags} -DxercesImpl.jar=$(java-pkg_getjar xerces-2 xercesImpl.jar)" + antflags="${antflags} -Dxml-apis.jar=$(java-pkg_getjar xerces-2 xml-apis.jar)" + fi - ant ${antflags} || die "compile failed" - + eant ${antflags} } + src_install() { cd ${S}/build/build @@ -184,12 +199,6 @@ src_install() { cd ${base} done - # replace a packed struts.jar - cd server/webapps/admin/WEB-INF/lib - rm -f struts.jar - java-pkg_jar-from struts-1.2 struts.jar - cd ${base} - # replace the default pw with a random one, see #92281 local randpw=$(echo ${RANDOM}|md5sum|cut -c 1-15) sed -e s:SHUTDOWN:${randpw}: -i conf/{server,server-minimal}.xml