------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX 5.0.27/gentoo.diff 463 RMD160 ace3fcd5d4d42e987840a0ba46c2f2e5db545dfc SHA1 2cac8406125e5bd360fed919eeb0d4685969462b SHA256 d8c9da161ae1274479f88f69821be780bd70ebfe7ad9c2f92db0f03f4b4c9401
MD5 cbb635ed31e3b7ddabe1db851a8b471e files/5.0.27/gentoo.diff 463
RMD160 ace3fcd5d4d42e987840a0ba46c2f2e5db545dfc files/5.0.27/gentoo.diff 463
MD5 c4a7c24e9d21a98c54b824bbc37b636f tomcat-5.0.28-r14.ebuild 9396
RMD160 266effb829b70d11022216a8d479898d0e9a526c tomcat-5.0.28-r14.ebuild 9396
SHA256 729243dac70cf13b8d27cef8d74d86f6e695cf10e00399d7908d930f5e42671d tomcat-5.0.28-r14.ebuild 9396
-EBUILD tomcat-5.5.20-r2.ebuild 10177 RMD160 33a47ba1a347bc913278eea38a6194051cb8094b SHA1 c387d81d7601c30e23b19d138de92d65b7f22a29 SHA256 249959923f28a2a213180cfa69172211f5c0e5eecb8e3d5e755b0f31293efe2d
-MD5 8f2de90288b7661deeda91757afb2a10 tomcat-5.5.20-r2.ebuild 10177
-RMD160 33a47ba1a347bc913278eea38a6194051cb8094b tomcat-5.5.20-r2.ebuild 10177
-SHA256 249959923f28a2a213180cfa69172211f5c0e5eecb8e3d5e755b0f31293efe2d tomcat-5.5.20-r2.ebuild 10177
-EBUILD tomcat-5.5.20-r3.ebuild 10211 RMD160 ad8bd2d8add5a197b2e7eb54a40c98477f5592bc SHA1 7bc78ad56896ae6f90a68f28739332675865891b SHA256 eaa997f08433a841d0ec667dd6ece53242591f7dc955a8e1d2085a7fc3bfc248
-MD5 17b56c4ec3f72b966761e9eb04197128 tomcat-5.5.20-r3.ebuild 10211
-RMD160 ad8bd2d8add5a197b2e7eb54a40c98477f5592bc tomcat-5.5.20-r3.ebuild 10211
-SHA256 eaa997f08433a841d0ec667dd6ece53242591f7dc955a8e1d2085a7fc3bfc248 tomcat-5.5.20-r3.ebuild 10211
+EBUILD tomcat-5.5.20-r4.ebuild 10338 RMD160 c64da2c8095c335d6d5256d900abf59488f76be4 SHA1 051a23ca6d4e1589ab4725a38c64745a930aed8f SHA256 a0e0c8b05314934b33839b1840bfb6b8a7b940fc613afd6bcc80ddfefedc5fa9
+MD5 ae3229bddda65298eefcd432d82e0b3e tomcat-5.5.20-r4.ebuild 10338
+RMD160 c64da2c8095c335d6d5256d900abf59488f76be4 tomcat-5.5.20-r4.ebuild 10338
+SHA256 a0e0c8b05314934b33839b1840bfb6b8a7b940fc613afd6bcc80ddfefedc5fa9 tomcat-5.5.20-r4.ebuild 10338
+EBUILD tomcat-5.5.20-r5.ebuild 10368 RMD160 39cd7884787f7d6899a2005b0fc176bcf8331870 SHA1 c77e2cf38a681f71dad833411dde5378dfc2274f SHA256 0ed7fcc6b2a859d0b021f8c9e9cf30c622c080368d0b2f09faa01a4c1aa1b8b8
+MD5 6f306777765d74e842d0454adefe0049 tomcat-5.5.20-r5.ebuild 10368
+RMD160 39cd7884787f7d6899a2005b0fc176bcf8331870 tomcat-5.5.20-r5.ebuild 10368
+SHA256 0ed7fcc6b2a859d0b021f8c9e9cf30c622c080368d0b2f09faa01a4c1aa1b8b8 tomcat-5.5.20-r5.ebuild 10368
EBUILD tomcat-6.0.4.ebuild 4720 RMD160 0ab9b450fd0f489e4367d964b373dcbaa254a8ce SHA1 4ef1d6d8358ec2c3e1971777e48cc2ee7e79076b SHA256 9c2d60e5fe645033e8b6d001fabc6ebc8c4739853d81e31390bef04933341665
MD5 5cdab7d864352e90ec3b8ad04087096d tomcat-6.0.4.ebuild 4720
RMD160 0ab9b450fd0f489e4367d964b373dcbaa254a8ce tomcat-6.0.4.ebuild 4720
SHA256 9c2d60e5fe645033e8b6d001fabc6ebc8c4739853d81e31390bef04933341665 tomcat-6.0.4.ebuild 4720
-MISC ChangeLog 28986 RMD160 3c9890ed58ce52315927a3223d88fcdae1292112 SHA1 348131918d6d90122c78ba7d5dc7886d8c3c07a3 SHA256 2d9f3f0c25ad72aa947000e2d87c71855479c75c57e9271ba64aa321ea7495aa
-MD5 173a36ec2df4dee343d8d73f94e244e2 ChangeLog 28986
-RMD160 3c9890ed58ce52315927a3223d88fcdae1292112 ChangeLog 28986
-SHA256 2d9f3f0c25ad72aa947000e2d87c71855479c75c57e9271ba64aa321ea7495aa ChangeLog 28986
+MISC ChangeLog 29575 RMD160 512ae5ed42074cda3d38dc8893037a0025ac65ee SHA1 2025b90c3044fee088e59cf290ea4536193693f5 SHA256 facba04efc815bd258568d7261067ff3809d333e089823b3e2ea33b91a3d27c4
+MD5 8501b90b136c4c7b25ad299ceaf888bf ChangeLog 29575
+RMD160 512ae5ed42074cda3d38dc8893037a0025ac65ee ChangeLog 29575
+SHA256 facba04efc815bd258568d7261067ff3809d333e089823b3e2ea33b91a3d27c4 ChangeLog 29575
MISC metadata.xml 556 RMD160 88a7809fe3f73c2d351b9fdda025fe88dfb11f31 SHA1 e8dcd8204d0ea02558dd07e1aded5dc58ed1460c SHA256 ac94c1d58b05b47598f311e6efb971fdb30ad9a25f3c32cb9c064fb6330dad79
MD5 0609d3339e0b8d5a3b4707f6b02aad3a metadata.xml 556
RMD160 88a7809fe3f73c2d351b9fdda025fe88dfb11f31 metadata.xml 556
MD5 d942ea8b8317ba352e744aed2d284d01 files/digest-tomcat-5.0.28-r14 280
RMD160 7283323e161ab5dd3a94549def34af040891e49a files/digest-tomcat-5.0.28-r14 280
SHA256 2c09d3ad89eb04ab24e5c95a9492d7f461e1935bdb076100010cd3d4f7cb8796 files/digest-tomcat-5.0.28-r14 280
-MD5 8adc14a8534e1c6f8d5f96b371e1895f files/digest-tomcat-5.5.20-r2 277
-RMD160 b9c5deac84bf5acd7a65ad80bdfaca9f7e343f3f files/digest-tomcat-5.5.20-r2 277
-SHA256 fda2efc7c4fe103d3fec9599fe3797d8784381008f71d9006c7224db91862b30 files/digest-tomcat-5.5.20-r2 277
-MD5 8adc14a8534e1c6f8d5f96b371e1895f files/digest-tomcat-5.5.20-r3 277
-RMD160 b9c5deac84bf5acd7a65ad80bdfaca9f7e343f3f files/digest-tomcat-5.5.20-r3 277
-SHA256 fda2efc7c4fe103d3fec9599fe3797d8784381008f71d9006c7224db91862b30 files/digest-tomcat-5.5.20-r3 277
+MD5 8adc14a8534e1c6f8d5f96b371e1895f files/digest-tomcat-5.5.20-r4 277
+RMD160 b9c5deac84bf5acd7a65ad80bdfaca9f7e343f3f files/digest-tomcat-5.5.20-r4 277
+SHA256 fda2efc7c4fe103d3fec9599fe3797d8784381008f71d9006c7224db91862b30 files/digest-tomcat-5.5.20-r4 277
+MD5 8adc14a8534e1c6f8d5f96b371e1895f files/digest-tomcat-5.5.20-r5 277
+RMD160 b9c5deac84bf5acd7a65ad80bdfaca9f7e343f3f files/digest-tomcat-5.5.20-r5 277
+SHA256 fda2efc7c4fe103d3fec9599fe3797d8784381008f71d9006c7224db91862b30 files/digest-tomcat-5.5.20-r5 277
MD5 9769185a9c73b3ce5fd94872335f6687 files/digest-tomcat-6.0.4 274
RMD160 ad9c1e6e82cc663e4e29b6df0c745e908b71b6bf files/digest-tomcat-6.0.4 274
SHA256 2d408d8f09d648a39784eaf3996957a58487a18ec0df69a2654db18e41089a59 files/digest-tomcat-6.0.4 274
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.6 (GNU/Linux)
-
-iD8DBQFFeoHnAiZjviIA2XgRAubxAJ0UpF4wKxaG+oWdjajEJ1zPIfx3NACfaAkQ
-RaRnfhTIStfmHFbZxXlf2yA=
-=gL7n
------END PGP SIGNATURE-----
+++ /dev/null
-MD5 5775bae8fac16a0e3a2c913c4768bb37 apache-tomcat-5.5.20-src.tar.gz 4796377
-RMD160 587590d2e272d1ede73501b62933f544cd969822 apache-tomcat-5.5.20-src.tar.gz 4796377
-SHA256 19f24717fb3e2db902c33e21650dfa88bbf98428c15b1ed68ecaf7a9150e4a77 apache-tomcat-5.5.20-src.tar.gz 4796377
+++ /dev/null
-MD5 5775bae8fac16a0e3a2c913c4768bb37 apache-tomcat-5.5.20-src.tar.gz 4796377
-RMD160 587590d2e272d1ede73501b62933f544cd969822 apache-tomcat-5.5.20-src.tar.gz 4796377
-SHA256 19f24717fb3e2db902c33e21650dfa88bbf98428c15b1ed68ecaf7a9150e4a77 apache-tomcat-5.5.20-src.tar.gz 4796377
+++ /dev/null
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/tomcat/tomcat-5.5.20-r2.ebuild,v 1.7 2006/12/07 00:11:15 wltjr Exp $
-
-inherit eutils java-pkg-2 java-ant-2
-
-DESCRIPTION="Apache Servlet-2.4/JSP-2.0 Container"
-
-MY_P="apache-${P}-src"
-SLOT="5.5"
-SRC_URI="mirror://apache/${PN}/${PN}-5/v${PV}/src/${MY_P}.tar.gz"
-HOMEPAGE="http://jakarta.apache.org/tomcat"
-KEYWORDS="amd64 x86 -ppc -ppc64"
-LICENSE="Apache-2.0"
-
-IUSE="admin java5 doc examples source test"
-
-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-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/log4j-1.2.9
- ~dev-java/servletapi-2.4
- admin? ( =dev-java/struts-1.2* )
- dev-java/sun-javamail
- java5? ( >=virtual/jre-1.5 )
- !java5? (
- =virtual/jre-1.4*
- >=dev-java/commons-httpclient-2.0
- dev-java/sun-jaf
- >=dev-java/junit-3.8.1
- =dev-java/mx4j-3*
- >=dev-java/saxpath-1.0
- >=dev-java/xerces-2.7.1
- =dev-java/xml-commons-external-1.3*
- )"
-DEPEND="java5? ( >=virtual/jdk-1.5 )
- !java5? ( =virtual/jdk-1.4* )
- ${RDEPEND}
- dev-java/ant"
-
-if ! use java5; then
- JAVA_PKG_NV_DEPEND="=virtual/jdk-1.4*"
-else
- JAVA_PKG_NV_DEPEND="=virtual/jdk-1.5*"
-fi
-
-S=${WORKDIR}/${MY_P}
-
-TOMCAT_HOME="/usr/share/${PN}-${SLOT}"
-TOMCAT_NAME="${PN}-${SLOT}"
-WEBAPPS_DIR="/var/lib/${TOMCAT_NAME}/webapps"
-
-pkg_setup() {
- # new user for tomcat
- enewgroup tomcat
- enewuser tomcat -1 -1 /dev/null tomcat
-
- java-pkg_filter-compiler ecj-3.1 ecj-3.2
-
- if use java5; then
- JAVA_PKG_WANT_SOURCE="1.5"
- JAVA_PKG_WANT_TARGET="1.5"
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd ${S}
-
- local PATCHES="
- mainbuild-xml.patch
- tomcatbuild-xml.patch
- catalinabuild-xml.patch
- jasperbuild-xml.patch
- "
- for patch in ${PATCHES}; do
- epatch "${FILESDIR}/${PV}/${patch}"
- done
- if ! use examples; then
- epatch "${FILESDIR}/${PV}/jsr152build-xml-examples.patch"
- epatch "${FILESDIR}/${PV}/jsr154build-xml-examples.patch"
- fi
-
- # avoid packed jars :-)
- mkdir -p ${S}/build/build/common
- cd ${S}/build/build
-
- mkdir ./bin && cd ./bin
- java-pkg_jar-from commons-logging commons-logging-api.jar
- java-pkg_jar-from commons-daemon
- if ! use java5; 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
-
- if ! use java5; then
- mkdir ${S}/build/build/common/endorsed && cd ${S}/build/build/common/endorsed
- java-pkg_jar-from xml-commons-external-1.3 xml-apis.jar
- java-pkg_jar-from xerces-2 xercesImpl.jar
- fi
-
- mkdir ${S}/build/build/common/lib && cd ${S}/build/build/common/lib
- java-pkg_jar-from ant-core
- java-pkg_jar-from commons-collections
- java-pkg_jar-from commons-dbcp
- java-pkg_jar-from commons-el
- java-pkg_jar-from commons-pool
- java-pkg_jar-from servletapi-2.4
-
- mkdir -p ${S}/build/build/server/lib && cd ${S}/build/build/server/lib
- java-pkg_jar-from commons-beanutils-1.7 commons-beanutils.jar
- java-pkg_jar-from commons-digester
- java-pkg_jar-from commons-fileupload
- java-pkg_jar-from commons-modeler
-}
-
-src_compile(){
- local antflags="-Dbase.path=${T}"
-
- 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-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)"
- antflags="${antflags} -Dcommons-modeler.jar=$(java-config -p commons-modeler)"
- 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} -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} -Dmail.jar=$(java-pkg_getjar sun-javamail mail.jar)"
- if use admin; then
- antflags="${antflags} -Dstruts.jar=$(java-pkg_getjar struts-1.2 struts.jar)"
- antflags="${antflags} -Dstruts.home=/usr/share/struts"
- else
- antflags="${antflags} -Dadmin.build.notrequired=true"
- antflags="${antflags} -Dadmin.precompile.notrequired=true"
- fi
- if ! use examples; then
- antflags="${antflags} -Dexamples.precompile.notrequired=true"
- fi
- antflags="${antflags} -Djasper.home=${S}/jasper"
- if ! use java5; then
- antflags="${antflags} -Dcommons-httpclient.jar=$(java-config -p commons-httpclient)"
- antflags="${antflags} -Dactivation.jar=$(java-config -p sun-jaf)"
- 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 xml-commons-external-1.3 xml-apis.jar)"
- fi
-
- eant ${antflags}
-
-}
-
-src_install() {
- cd ${S}/build/build
-
- # init.d, conf.d
- newinitd ${FILESDIR}/${PV}/tomcat.init ${TOMCAT_NAME}
- newconfd ${FILESDIR}/${PV}/tomcat.conf ${TOMCAT_NAME}
-
- # create dir structure
- diropts -m755 -o tomcat -g tomcat
- dodir /usr/share/${TOMCAT_NAME}
- keepdir /var/log/${TOMCAT_NAME}/
- keepdir /var/tmp/${TOMCAT_NAME}/
- keepdir /var/run/${TOMCAT_NAME}/
-
- local CATALINA_BASE=/var/lib/${TOMCAT_NAME}/
- dodir ${CATALINA_BASE}
- keepdir ${CATALINA_BASE}/shared/lib
- keepdir ${CATALINA_BASE}/shared/classes
-
- keepdir /usr/share/${TOMCAT_NAME}/${CATALIA_HOME}/common/lib
-
- dodir /etc/${TOMCAT_NAME}
- fperms 750 /etc/${TOMCAT_NAME}
-
- diropts -m0755
-
- # we don't need dos scripts
- rm -f bin/*.bat
-
- # copy the manager and admin context's to the right position
- mkdir -p conf/Catalina/localhost
- if use admin; then
- cp ${S}/container/webapps/admin/admin.xml \
- conf/Catalina/localhost
- fi
- cp ${S}/container/webapps/manager/manager.xml \
- conf/Catalina/localhost
-
- # make the jars available via java-config -p and jar-from, etc
- base=$(pwd)
- libdirs="common/lib server/lib"
- for dir in ${libdirs}
- do
- cd ${dir}
-
- for jar in *.jar;
- do
- # replace the file with a symlink
- if [ ! -L ${jar} ]; then
- java-pkg_dojar ${jar}
- rm -f ${jar}
- ln -s ${DESTTREE}/share/${TOMCAT_NAME}/lib/${jar} ${jar}
- fi
- done
-
- cd ${base}
- done
-
- # replace a packed struts.jar
- if use admin; then
- cd server/webapps/admin/WEB-INF/lib
- rm -f struts.jar
- java-pkg_jar-from struts-1.2 struts.jar
- cd ${base}
- else
- rm -fR server/webapps/admin
- fi
-
- # 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
-
- # copy over the directories
- chown -R tomcat:tomcat webapps/* conf/*
- cp -pR conf/* ${D}/etc/${TOMCAT_NAME} || die "failed to copy conf"
- cp -R bin common server ${D}/usr/share/${TOMCAT_NAME} || die "failed to copy"
-
- keepdir ${WEBAPPS_DIR}
- set_webapps_perms ${D}/${WEBAPPS_DIR}
-
- # Copy over webapps, some controlled by use flags
- cp -p ../RELEASE-NOTES webapps/ROOT/RELEASE-NOTES.txt
- cp -pr webapps/ROOT ${D}${CATALINA_BASE}/webapps
- if use doc; then
- cp -pr webapps/tomcat-docs ${D}${CATALINA_BASE}/webapps
- fi
- if use examples; then
- cp -pr webapps/{jsp-examples,servlets-examples,webdav} \
- ${D}${CATALINA_BASE}/webapps
- fi
-
- # symlink the directories to make CATALINA_BASE possible
- dosym /etc/${TOMCAT_NAME} ${CATALINA_BASE}/conf
- dosym /var/log/${TOMCAT_NAME} ${CATALINA_BASE}/logs
- dosym /var/tmp/${TOMCAT_NAME} ${CATALINA_BASE}/temp
- dosym /var/run/${TOMCAT_NAME} ${CATALINA_BASE}/work
-
- dodoc ${S}/build/{RELEASE-NOTES,RUNNING.txt}
- fperms 640 /etc/${TOMCAT_NAME}/tomcat-users.xml
-}
-
-pkg_postinst() {
- #due to previous ebuild bloopers, make sure everything is correct
- chown root:root /etc/init.d/${TOMCAT_NAME}
- chown root:root /etc/conf.d/${TOMCAT_NAME}
-
- einfo
- ewarn " This ebuild implements a new filesystem layout for tomcat"
- ewarn " please read http://www.gentoo.org/proj/en/java/tomcat-guide.xml"
- ewarn " for more information!."
- einfo
- einfo " Please file any bugs at http://bugs.gentoo.org/ or else it"
- einfo " may not get seen. Thank you."
- einfo
-
-# einfo "Run emerge --config =${PF}"
-# einfo "to configure Tomcat if you need to for example"
-# einfo "change the home directory of the Tomcat user."
-}
-
-#helpers
-set_webapps_perms() {
- chown tomcat:tomcat ${1} || die "Failed to change owner off ${1}."
- chmod 750 ${1} || die "Failed to change permissions off ${1}."
-}
-
-pkg_config() {
- # Better suggestions are welcome
- local currentdir="$(getent passwd tomcat | gawk -F':' '{ print $6 }')"
-
- einfo "The default home directory for Tomcat is /dev/null."
- einfo "You need to change it if your applications needs it to"
- einfo "be an actual directory. Current home directory:"
- einfo "${currentdir}"
- einfo ""
- einfo "Do you want to change it [yes/no]?"
-
- local answer
- read answer
-
- if [[ "${answer}" == "yes" ]]; then
- einfo ""
- einfo "Suggestions:"
- einfo "${WEBAPPS_DIR}"
- einfo ""
- einfo "If you want to suggest a directory, file a bug to"
- einfo "http://bugs.gentoo.org"
- einfo ""
- einfo "Enter home directory:"
-
- local homedir
- read homedir
-
- einfo ""
- einfo "Setting home directory to: ${homedir}"
-
- /usr/sbin/usermod -d"${homedir}" tomcat
-
- einfo "You can run emerge --config =${PF}"
- einfo "again to change to homedir"
- einfo "at any time."
- fi
-}
+++ /dev/null
-# Copyright 1999-2006 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/www-servers/tomcat/tomcat-5.5.20-r3.ebuild,v 1.2 2006/12/09 09:29:03 flameeyes Exp $
-
-inherit eutils java-pkg-2 java-ant-2
-
-DESCRIPTION="Apache Servlet-2.4/JSP-2.0 Container"
-
-MY_P="apache-${P}-src"
-SLOT="5.5"
-SRC_URI="mirror://apache/${PN}/${PN}-5/v${PV}/src/${MY_P}.tar.gz"
-HOMEPAGE="http://jakarta.apache.org/tomcat"
-KEYWORDS="-ppc -ppc64 ~x86 ~x86-fbsd"
-LICENSE="Apache-2.0"
-
-IUSE="admin java5 doc examples source test"
-
-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-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/log4j-1.2.9
- ~dev-java/servletapi-2.4
- admin? ( =dev-java/struts-1.2* )
- dev-java/sun-javamail
- java5? ( >=virtual/jre-1.5 )
- !java5? (
- =virtual/jre-1.4*
- >=dev-java/commons-httpclient-2.0
- dev-java/sun-jaf
- >=dev-java/junit-3.8.1
- =dev-java/mx4j-core-3*
- >=dev-java/saxpath-1.0
- >=dev-java/xerces-2.7.1
- =dev-java/xml-commons-external-1.3*
- )"
-DEPEND="java5? ( >=virtual/jdk-1.5 )
- !java5? ( =virtual/jdk-1.4* )
- ${RDEPEND}
- dev-java/ant"
-
-if ! use java5; then
- JAVA_PKG_NV_DEPEND="=virtual/jdk-1.4*"
-else
- JAVA_PKG_NV_DEPEND="=virtual/jdk-1.5*"
-fi
-
-S=${WORKDIR}/${MY_P}
-
-TOMCAT_HOME="/usr/share/${PN}-${SLOT}"
-TOMCAT_NAME="${PN}-${SLOT}"
-WEBAPPS_DIR="/var/lib/${TOMCAT_NAME}/webapps"
-
-pkg_setup() {
- # new user for tomcat
- enewgroup tomcat
- enewuser tomcat -1 -1 /dev/null tomcat
-
- java-pkg_filter-compiler ecj-3.1 ecj-3.2
-
- if use java5; then
- JAVA_PKG_WANT_SOURCE="1.5"
- JAVA_PKG_WANT_TARGET="1.5"
- fi
-}
-
-src_unpack() {
- unpack ${A}
- cd ${S}
-
- local PATCHES="
- mainbuild-xml.patch
- tomcatbuild-xml.patch
- catalinabuild-xml.patch
- jasperbuild-xml.patch
- "
- for patch in ${PATCHES}; do
- epatch "${FILESDIR}/${PV}/${patch}"
- done
- if ! use examples; then
- epatch "${FILESDIR}/${PV}/jsr152build-xml-examples.patch"
- epatch "${FILESDIR}/${PV}/jsr154build-xml-examples.patch"
- fi
-
- # avoid packed jars :-)
- mkdir -p ${S}/build/build/common
- cd ${S}/build/build
-
- mkdir ./bin && cd ./bin
- java-pkg_jar-from commons-logging commons-logging-api.jar
- java-pkg_jar-from commons-daemon
- if ! use java5; then
- java-pkg_jar-from mx4j-core-3.0 mx4j.jar jmx.jar
- java-pkg_jar-from mx4j-core-3.0 mx4j-rjmx.jar jmx-remote.jar
- fi
-
- if ! use java5; then
- mkdir ${S}/build/build/common/endorsed && cd ${S}/build/build/common/endorsed
- java-pkg_jar-from xml-commons-external-1.3 xml-apis.jar
- java-pkg_jar-from xerces-2 xercesImpl.jar
- fi
-
- mkdir ${S}/build/build/common/lib && cd ${S}/build/build/common/lib
- java-pkg_jar-from ant-core
- java-pkg_jar-from commons-collections
- java-pkg_jar-from commons-dbcp
- java-pkg_jar-from commons-el
- java-pkg_jar-from commons-pool
- java-pkg_jar-from servletapi-2.4
-
- mkdir -p ${S}/build/build/server/lib && cd ${S}/build/build/server/lib
- java-pkg_jar-from commons-beanutils-1.7 commons-beanutils.jar
- java-pkg_jar-from commons-digester
- java-pkg_jar-from commons-fileupload
- java-pkg_jar-from commons-modeler
-}
-
-src_compile(){
- local antflags="-Dbase.path=${T}"
-
- 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-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)"
- antflags="${antflags} -Dcommons-modeler.jar=$(java-config -p commons-modeler)"
- 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} -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} -Dmail.jar=$(java-pkg_getjar sun-javamail mail.jar)"
- if use admin; then
- antflags="${antflags} -Dstruts.jar=$(java-pkg_getjar struts-1.2 struts.jar)"
- antflags="${antflags} -Dstruts.home=/usr/share/struts"
- else
- antflags="${antflags} -Dadmin.build.notrequired=true"
- antflags="${antflags} -Dadmin.precompile.notrequired=true"
- fi
- if ! use examples; then
- antflags="${antflags} -Dexamples.precompile.notrequired=true"
- fi
- antflags="${antflags} -Djasper.home=${S}/jasper"
- if ! use java5; then
- antflags="${antflags} -Dcommons-httpclient.jar=$(java-config -p commons-httpclient)"
- antflags="${antflags} -Dactivation.jar=$(java-config -p sun-jaf)"
- antflags="${antflags} -Djmx.jar=$(java-pkg_getjar mx4j-core-3.0 mx4j.jar)"
- antflags="${antflags} -Djmx-remote.jar=$(java-pkg_getjar mx4j-core-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 xml-commons-external-1.3 xml-apis.jar)"
- fi
-
- eant ${antflags}
-
-}
-
-src_install() {
- cd ${S}/build/build
-
- # init.d, conf.d
- newinitd ${FILESDIR}/${PV}/tomcat.init ${TOMCAT_NAME}
- newconfd ${FILESDIR}/${PV}/tomcat.conf ${TOMCAT_NAME}
-
- # create dir structure
- diropts -m755 -o tomcat -g tomcat
- dodir /usr/share/${TOMCAT_NAME}
- keepdir /var/log/${TOMCAT_NAME}/
- keepdir /var/tmp/${TOMCAT_NAME}/
- keepdir /var/run/${TOMCAT_NAME}/
-
- local CATALINA_BASE=/var/lib/${TOMCAT_NAME}/
- dodir ${CATALINA_BASE}
- keepdir ${CATALINA_BASE}/shared/lib
- keepdir ${CATALINA_BASE}/shared/classes
-
- keepdir /usr/share/${TOMCAT_NAME}/${CATALIA_HOME}/common/lib
-
- dodir /etc/${TOMCAT_NAME}
- fperms 750 /etc/${TOMCAT_NAME}
-
- diropts -m0755
-
- # we don't need dos scripts
- rm -f bin/*.bat
-
- # copy the manager and admin context's to the right position
- mkdir -p conf/Catalina/localhost
- if use admin; then
- cp ${S}/container/webapps/admin/admin.xml \
- conf/Catalina/localhost
- fi
- cp ${S}/container/webapps/manager/manager.xml \
- conf/Catalina/localhost
-
- # make the jars available via java-config -p and jar-from, etc
- base=$(pwd)
- libdirs="common/lib server/lib"
- for dir in ${libdirs}
- do
- cd ${dir}
-
- for jar in *.jar;
- do
- # replace the file with a symlink
- if [ ! -L ${jar} ]; then
- java-pkg_dojar ${jar}
- rm -f ${jar}
- ln -s ${DESTTREE}/share/${TOMCAT_NAME}/lib/${jar} ${jar}
- fi
- done
-
- cd ${base}
- done
-
- # replace a packed struts.jar
- if use admin; then
- cd server/webapps/admin/WEB-INF/lib
- rm -f struts.jar
- java-pkg_jar-from struts-1.2 struts.jar
- cd ${base}
- else
- rm -fR server/webapps/admin
- fi
-
- # 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
-
- # copy over the directories
- chown -R tomcat:tomcat webapps/* conf/*
- cp -pR conf/* ${D}/etc/${TOMCAT_NAME} || die "failed to copy conf"
- cp -R bin common server ${D}/usr/share/${TOMCAT_NAME} || die "failed to copy"
-
- keepdir ${WEBAPPS_DIR}
- set_webapps_perms ${D}/${WEBAPPS_DIR}
-
- # Copy over webapps, some controlled by use flags
- cp -p ../RELEASE-NOTES webapps/ROOT/RELEASE-NOTES.txt
- cp -pr webapps/ROOT ${D}${CATALINA_BASE}/webapps
- if use doc; then
- cp -pr webapps/tomcat-docs ${D}${CATALINA_BASE}/webapps
- fi
- if use examples; then
- cp -pr webapps/{jsp-examples,servlets-examples,webdav} \
- ${D}${CATALINA_BASE}/webapps
- fi
-
- # symlink the directories to make CATALINA_BASE possible
- dosym /etc/${TOMCAT_NAME} ${CATALINA_BASE}/conf
- dosym /var/log/${TOMCAT_NAME} ${CATALINA_BASE}/logs
- dosym /var/tmp/${TOMCAT_NAME} ${CATALINA_BASE}/temp
- dosym /var/run/${TOMCAT_NAME} ${CATALINA_BASE}/work
-
- dodoc ${S}/build/{RELEASE-NOTES,RUNNING.txt}
- fperms 640 /etc/${TOMCAT_NAME}/tomcat-users.xml
-}
-
-pkg_postinst() {
- #due to previous ebuild bloopers, make sure everything is correct
- chown root:root /etc/init.d/${TOMCAT_NAME}
- chown root:root /etc/conf.d/${TOMCAT_NAME}
-
- einfo
- ewarn " This ebuild implements a new filesystem layout for tomcat"
- ewarn " please read http://www.gentoo.org/proj/en/java/tomcat-guide.xml"
- ewarn " for more information!."
- einfo
- einfo " Please file any bugs at http://bugs.gentoo.org/ or else it"
- einfo " may not get seen. Thank you."
- einfo
-
-# einfo "Run emerge --config =${PF}"
-# einfo "to configure Tomcat if you need to for example"
-# einfo "change the home directory of the Tomcat user."
-}
-
-#helpers
-set_webapps_perms() {
- chown tomcat:tomcat ${1} || die "Failed to change owner off ${1}."
- chmod 750 ${1} || die "Failed to change permissions off ${1}."
-}
-
-pkg_config() {
- # Better suggestions are welcome
- local currentdir="$(getent passwd tomcat | gawk -F':' '{ print $6 }')"
-
- einfo "The default home directory for Tomcat is /dev/null."
- einfo "You need to change it if your applications needs it to"
- einfo "be an actual directory. Current home directory:"
- einfo "${currentdir}"
- einfo ""
- einfo "Do you want to change it [yes/no]?"
-
- local answer
- read answer
-
- if [[ "${answer}" == "yes" ]]; then
- einfo ""
- einfo "Suggestions:"
- einfo "${WEBAPPS_DIR}"
- einfo ""
- einfo "If you want to suggest a directory, file a bug to"
- einfo "http://bugs.gentoo.org"
- einfo ""
- einfo "Enter home directory:"
-
- local homedir
- read homedir
-
- einfo ""
- einfo "Setting home directory to: ${homedir}"
-
- /usr/sbin/usermod -d"${homedir}" tomcat
-
- einfo "You can run emerge --config =${PF}"
- einfo "again to change to homedir"
- einfo "at any time."
- fi
-}