# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-java/cocoon/cocoon-2.1.6.ebuild,v 1.6 2007/01/05 20:24:32 caster Exp $ inherit java-pkg-2 java-ant-2 eutils DESCRIPTION="A Web Publishing Framework for Apache" HOMEPAGE="http://cocoon.apache.org/" SRC_URI="mirror://apache/cocoon/${P}-src.tar.gz" LICENSE="Apache-1.1" SLOT="0" KEYWORDS="~x86 ~ppc ~amd64" IUSE="doc standalone war" # For jar files found in ${S}/lib CDEPEND=" dev-java/avalon-logkit dev-java/bcel dev-java/commons-beanutils >=dev-java/commons-cli-1.1 dev-java/commons-collections dev-java/commons-httpclient dev-java/commons-io dev-java/commons-jexl dev-java/commons-jxpath =dev-java/commons-lang-2.3 dev-java/commons-logging dev-java/concurrent-util dev-java/ehcache dev-java/excalibur-component dev-java/excalibur-instrument dev-java/excalibur-logger dev-java/excalibur-pool-api dev-java/excalibur-pool-impl =dev-java/jakarta-regexp-1.4-r1 dev-java/jcs dev-java/log4j dev-java/servletapi:2.3 =dev-java/xerces-2.9.0 =dev-java/xml-commons-external-1.3.04 dev-java/xml-commons-resolver" # excalibur-i18n not available # =dev-java/rhino-1.6.5 problems # dev-java/xalan problems # For jar files found in ${S}/tools CDEPEND="dev-java/ant-contrib dev-java/ant-core dev-java/ant-junit dev-java/ant-trax dev-java/easymock app-text/jing dev-java/junit:0 dev-java/qdox dev-java/xmlunit:1 ${CDEPEND}" DEPEND=" >=virtual/jdk-1.4 >=dev-java/ant-core-1.5.3 ${CDEPEND}" RDEPEND=">=virtual/jre-1.4 ${CDEPEND}" src_unpack() { unpack ${A} cd ${S} echo "# Gentoo build properties" > local.build.properties if ! use doc; then echo "exclude.javadocs=true" >> local.build.properties echo "exclude.webapp.javadocs=true" >> local.build.properties echo "exclude.webapp.documentation=true" >> local.build.properties echo "exclude.idldocs=true" >> local.build.properties echo "exclude.webapp.idldocs=true" >> local.build.properties echo "exclude.validate.jars=true" >> local.build.properties fi # Switch off all optional blocks # For the beginning these wil be disregarded ... echo "# Gentoo blocks properties" > local.blocks.properties echo "exclude.all.blocks=true" >> local.blocks.properties # ... And we simply dismiss their jar files for i in $(find ./lib/optional -iname *.jar); do rm ${i} || die "File ${i} cannot be deleted." done # Same order as below rm ./lib/core/avalon-logkit-2.1.jar rm ./lib/core/commons-beanutils-core-1.7.0.jar rm ./lib/core/commons-cli-1.0.jar rm ./lib/core/commons-collections-3.2.jar rm ./lib/core/commons-httpclient-2.0.2.jar rm ./lib/core/commons-io-1.2.jar rm ./lib/core/commons-jexl-1.0.jar rm ./lib/core/commons-jxpath-1.2.jar rm ./lib/core/commons-lang-2.2.jar rm ./lib/core/commons-logging-1.0.4.jar rm ./lib/core/concurrent-1.3.4.jar rm ./lib/core/ehcache-1.2.2.jar rm ./lib/core/excalibur-component-2.1.jar # rm ./lib/core/excalibur-i18n-1.1.jar no replacement rm ./lib/core/excalibur-instrument-api-2.1.jar rm ./lib/core/excalibur-instrument-mgr-api-2.1.jar rm ./lib/core/excalibur-instrument-mgr-http-2.1.jar rm ./lib/core/excalibur-instrument-mgr-impl-2.1.jar rm ./lib/core/excalibur-logger-2.1.jar rm ./lib/core/excalibur-pool-api-2.1.jar rm ./lib/core/excalibur-pool-impl-2.1.jar rm ./lib/core/jcs-1.2.5-dev-20050313.jar # rm ./lib/core/js-1.6R5.jar rhino-1.6, problems rm ./lib/core/log4j-1.2.13.jar rm ./lib/core/servlet_2_2.jar rm ./lib/core/xml-commons-resolver-1.1.jar rm ./lib/endorsed/jakarta-regexp-1.4.jar rm ./lib/endorsed/jakarta-bcel-20040329.jar # rm ./lib/endorsed/xalan-2.7.0.jar problems rm ./lib/endorsed/xercesImpl-2.9.0.jar rm ./lib/endorsed/xml-apis-1.3.04.jar # rm ./tools/instrumentation/lib/excalibur-instrument-client-2.1.jar # rm ./tools/jetty/lib/jetty-4.2.23.jar problems # rm ./tools/jetty/lib/servlet-2.3.jar problems rm ./tools/lib/ant-contrib-0.6.jar rm ./tools/lib/ant.jar rm ./tools/lib/ant-junit.jar rm ./tools/lib/ant-launcher.jar rm ./tools/lib/ant-trax.jar rm ./tools/lib/easymock-1.1.jar rm ./tools/lib/jing-20030619.jar rm ./tools/lib/junit-3.8.2.jar rm ./tools/lib/qdox-1.5.jar rm ./tools/lib/xmlunit1.0.jar # And same order as above cd "${S}/lib/core" java-pkg_jar-from avalon-logkit-2.0 avalon-logkit.jar java-pkg_jar-from commons-beanutils-1.7 commons-beanutils-core.jar java-pkg_jar-from commons-cli-1 commons-cli.jar java-pkg_jar-from commons-collections commons-collections.jar java-pkg_jar-from commons-httpclient-3 commons-httpclient.jar java-pkg_jar-from commons-io-1 commons-io.jar java-pkg_jar-from commons-jexl-1.0 commons-jexl.jar java-pkg_jar-from commons-jxpath commons-jxpath.jar java-pkg_jar-from commons-lang-2.1 commons-lang.jar java-pkg_jar-from commons-logging commons-logging.jar java-pkg_jar-from concurrent-util concurrent.jar java-pkg_jar-from ehcache-1.2 ehcache.jar java-pkg_jar-from excalibur-component excalibur-component.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-api.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-api.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-http.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-impl.jar java-pkg_jar-from excalibur-logger excalibur-logger.jar java-pkg_jar-from excalibur-pool-api excalibur-pool-api.jar java-pkg_jar-from excalibur-pool-impl excalibur-pool-impl.jar java-pkg_jar-from jcs-1.3 jcs.jar # java-ppkg_jar-from rhino-1.6 js.jar problems java-pkg_jar-from log4j log4j.jar java-pkg_jar-from servletapi-2.3 servlet.jar java-pkg_jar-from xml-commons-resolver xml-commons-resolver.jar cd "${S}/lib/endorsed" java-pkg_jar-from jakarta-regexp-1.4 jakarta-regexp.jar java-pkg_jar-from bcel bcel.jar # java-pkg_jar-from xalan xalan.jar problems java-pkg_jar-from xerces-2 xercesImpl.jar java-pkg_jar-from xml-commons-external-1.3 xml-apis.jar cd "${S}/tools/lib" # java-pkg_jar-from instrument not available # java-pkg_jar-from jetty problems # java-pkg_jar-from servlet problems java-pkg_jar-from ant-contrib ant-contrib.jar java-pkg_jar-from ant-core ant.jar java-pkg_jar-from ant-junit ant-junit.jar java-pkg_jar-from ant-core ant-launcher.jar java-pkg_jar-from ant-trax ant-trax.jar java-pkg_jar-from easymock-1 easymock.jar java-pkg_jar-from jing jing.jar java-pkg_jar-from junit junit.jar java-pkg_jar-from qdox-1.6 qdox.jar java-pkg_jar-from xmlunit-1 xmlunit.jar } src_compile() { BUILDTARGET="webapp" if use standalone; then BUILDTARGET=${BUILDTARGET}' standalone-demo'; fi if use war; then BUILDTARGET=${BUILDTARGET}' war'; fi elog ${BUILDTARGET} sh build.sh ${BUILDTARGET} || die } src_install() { if use war; then insinto /usr/share/${PN}/${PN} doins ${S}/build/${PN}/${PN}.war fi insinto /usr/share/${PN}/webapp doins ${S}/build/webapp/** # java-pkg_dojar build/${PN}/cocoon.jar # java-pkg_jarinto /usr/share/${PN}/lib/core/ # java-pkg_dojar lib/core/*.jar # insinto /usr/share/${PN}/lib # doins ${S}/build/${PN}/cocoon-*.jar ${S}/lib/jars.xml # for i in endorsed optional local; do # dodir /usr/share/${PN}/lib/${i} # insinto /usr/share/${PN}/lib/${i} # doins ${S}/lib/${i}/* # done dodoc CREDITS.txt INSTALL.txt KEYS README.txt docinto legal dodoc legal/* docinto api use doc && java-pkg_dohtml -r build/webapp/api/* } pkg_postinst() { elog "This ebuild does no longer install the Cocoon webapp into" elog "any servlet container anymore. Copy /usr/share/${PN}/webapps/${PN}.war" elog "to your servlet container's webapps directory and restart the" elog "server." echo ewarn "Note: To run in Tomcat its version has to be >= 4.0.4" }