# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ 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:2.0 dev-java/bcel dev-java/commons-beanutils:1.7 dev-java/commons-cli:1 dev-java/commons-collections dev-java/commons-httpclient:0 dev-java/commons-io:1 dev-java/commons-jexl:1.0 dev-java/commons-jxpath dev-java/commons-lang:2.1 dev-java/commons-logging dev-java/concurrent-util dev-java/ehcache:1.2 dev-java/excalibur-component dev-java/excalibur-i18n dev-java/excalibur-instrument dev-java/excalibur-logger dev-java/excalibur-pool dev-java/jakarta-regexp:1.4 dev-java/jcs:1.3 dev-java/rhino:1.6 dev-java/log4j dev-java/xalan dev-java/xalan-serializer dev-java/xerces:2 dev-java/xml-commons-external:1.3 dev-java/xml-commons-resolver java-virtuals/servlet-api:2.3" # For jar files found in ${S}/lib/optional CDEPEND=" www-servers/axis:1 dev-java/antlr dev-java/asm:2 dev-java/batik:1.6 dev-java/bsf dev-java/castor:1.0 dev-java/commons-codec dev-java/commons-dbcp dev-java/commons-digester dev-java/commons-discovery dev-java/commons-el dev-java/commons-pool dev-java/commons-transaction dev-java/fop dev-java/groovy:1 dev-java/geronimo-specs dev-db/hsqldb dev-java/icu4j dev-java/itext dev-java/jakarta-oro:2.0 dev-java/jakarta-slide-webdavclient dev-java/jdom:1.0 dev-java/jfor dev-java/jsfapi:1 dev-java/myfaces:1 dev-java/jtidy dev-java/lucene:1 dev-java/nekohtml dev-java/poi dev-java/portletapi:1 dev-java/servletapi:2.4 dev-java/velocity dev-java/wsdl4j dev-java/xmldb dev-java/xmlrpc ${CDEPEND}" # 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:1 app-text/jing dev-java/junit:0 dev-java/qdox:1.6 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 fi # Switch off some blocks # echo "# Gentoo blocks properties" > local.blocks.properties # echo "include.all.blocks=true" >> local.blocks.properties # EXCLUDE="-blocks-to-be-excluded-from-buildiing-" # for i in ${EXCLUDE}; do # echo "exclude.block.${i}=true" >> local.blocks.properties # done cd "${S}/lib/core" # rm ./avalon-framework-api-4.3.jar # java-pkg_jar-from ? avalon-framework-api-4.3.jar # rm ./avalon-framework-impl-4.3.jar # java-pkg_jar-from ? avalon-framework-impl-4.3.jar rm ./avalon-logkit-2.1.jar java-pkg_jar-from avalon-logkit-2.0 avalon-logkit.jar avalon-logkit-2.1.jar rm ./commons-beanutils-core-1.7.0.jar java-pkg_jar-from commons-beanutils-1.7 commons-beanutils-core.jar commons-beanutils-core-1.7.0.jar rm ./commons-cli-1.0.jar java-pkg_jar-from commons-cli-1 commons-cli.jar commons-cli-1.0.jar rm ./commons-collections-3.2.jar java-pkg_jar-from commons-collections commons-collections.jar commons-collections-3.2.jar rm ./commons-httpclient-2.0.2.jar java-pkg_jar-from commons-httpclient commons-httpclient.jar commons-httpclient-2.0.2.jar rm ./commons-io-1.3.1.jar java-pkg_jar-from commons-io-1 commons-io.jar commons-io-1.3.1.jar rm ./commons-jexl-1.0.jar java-pkg_jar-from commons-jexl-1.0 commons-jexl.jar commons-jexl-1.0.jar rm ./commons-jxpath-1.2.jar java-pkg_jar-from commons-jxpath commons-jxpath.jar commons-jxpath-1.2.jar rm ./commons-lang-2.3.jar java-pkg_jar-from commons-lang-2.1 commons-lang.jar commons-lang-2.3.jar rm ./commons-logging-1.0.4.jar java-pkg_jar-from commons-logging commons-logging.jar commons-logging-1.0.4.jar rm ./concurrent-1.3.4.jar java-pkg_jar-from concurrent-util concurrent.jar concurrent-1.3.4.jar rm ./ehcache-1.2.3.jar java-pkg_jar-from ehcache-1.2 ehcache.jar ehcache-1.2.3.jar rm ./excalibur-component-2.1.jar java-pkg_jar-from excalibur-component excalibur-component.jar excalibur-component-2.1.jar rm ./excalibur-i18n-1.1.jar java-pkg_jar-from excalibur-i18n excalibur-i18n.jar excalibur-i18n-1.1.jar # rm ./excalibur-xmlutil-2.1.jar # java-pkg_jar-from ? excalibur-xmlutil-2.1.jar rm ./excalibur-instrument-api-2.1.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-api.jar excalibur-instrument-api-2.1.jar rm ./excalibur-instrument-mgr-api-2.1.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-api.jar excalibur-instrument-mgr-api-2.1.jar rm ./excalibur-instrument-mgr-http-2.1.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-http.jar excalibur-instrument-mgr-http-2.1.jar rm ./excalibur-instrument-mgr-impl-2.1.jar java-pkg_jar-from excalibur-instrument excalibur-instrument-mgr-impl.jar excalibur-instrument-mgr-impl-2.1.jar rm ./excalibur-logger-2.1.jar java-pkg_jar-from excalibur-logger excalibur-logger.jar excalibur-logger-2.1.jar # # rm ./excalibur-naming-1.0.jar # # java-pkg_jar-from ? excalibur-naming-1.0.jar rm ./excalibur-pool-api-2.1.jar java-pkg_jar-from excalibur-pool excalibur-pool-api.jar excalibur-pool-api-2.1.jar rm ./excalibur-pool-impl-2.1.jar java-pkg_jar-from excalibur-pool excalibur-pool-impl.jar excalibur-pool-impl-2.1.jar rm ./excalibur-pool-instrumented-2.1.jar java-pkg_jar-from excalibur-pool excalibur-pool-instrumented.jar excalibur-pool-instrumented-2.1.jar # rm ./excalibur-sourceresolve-2.1.jar # java-pkg_jar-from ? excalibur-sourceresolve-2.1.jar # rm ./excalibur-store-2.1.jar # java-pkg_jar-from ? excalibur-store-2.1.jar # rm ./javacApi-0.9.jar # java-pkg_jar-from ? javacApi-0.9.jar # rm ./javacImpl-0.9.jar # java-pkg_jar-from ? javacImpl-0.9.jar rm ./jcs-1.2.5-dev-20050313.jar java-pkg_jar-from jcs-1.3 jcs.jar jcs-1.2.5-dev-20050313.jar rm ./js-1.6R5.jar java-pkg_jar-from rhino-1.6 js.jar js-1.6R5.jar # rm ./jdtcore-3.0.2.jar # java-pkg_jar-from ? jdtcore-3.0.2.jar rm ./log4j-1.2.14.jar java-pkg_jar-from log4j log4j.jar log4j-1.2.14.jar # rm ./servlet_2_2.jar ERROR # java-pkg_jar-from servlet-api-2.3 servlet.jar servlet_2_2.jar rm ./xml-commons-resolver-1.1.jar java-pkg_jar-from xml-commons-resolver xml-commons-resolver.jar xml-commons-resolver-1.1.jar cd "${S}/lib/endorsed" # rm ./*.jar # rm ./jakarta-bcel-20040329.jar ERROR # java-pkg_jar-from bcel bcel.jar jakarta-bcel-20040329.jar rm./jakarta-regexp-1.5.jar java-pkg_jar-from jakarta-regexp-1.4 jakarta-regexp.jar jakarta-regexp-1.5.jar # rm ./xalan-2.7.1.jar # java-pkg_jar-from xalan xalan.jar xalan-2.7.1.jar # java-pkg_jar-from xalan-serializer serializer.jar # Need to combine these two packages or # to register serializer.jar in 'jars.xml' rm ./xercesImpl-2.9.1.jar java-pkg_jar-from xerces-2 xercesImpl.jar xercesImpl-2.9.1.jar rm ./xml-apis-1.3.04.jar java-pkg_jar-from xml-commons-external-1.3 xml-apis.jar xml-apis-1.3.04.jar cd "${S}/lib/optional" rm ./antlr-2.7.6.jar java-pkg_jar-from antlr antlr.jar antlr-2.7.6.jar rm ./asm-2.2.1.jar java-pkg_jar-from asm-2 asm.jar asm-2.2.1.jar rm ./asm-util-2.2.1.jar java-pkg_jar-from asm-2 asm-util.jar asm-util-2.2.1.jar rm ./axis-1.4.jar java-pkg_jar-from axis-1 axis.jar axis-1.4.jar rm ./axis-jaxrpc-1.4.jar java-pkg_jar-from axis-1 jaxrpc.jar axis-jaxrpc-1.4.jar rm ./axis-saaj-1.4.jar java-pkg_jar-from axis-1 saaj.jar axis-saaj-1.4.jar rm ./batik-all-1.6.jar java-pkg_jar-from batik-1.6 batik-all.jar batik-all-1.6.jar rm ./bsf-2.4.0.jar java-pkg_jar-from bsf-2.3 bsf.jar bsf-2.4.0.jar rm ./castor-0.9.6-xml.jar java-pkg_jar-from castor-1.0 castor-xml.jar castor-0.9.6-xml.jar # rm ./chaperon-20040205.jar # java-pkg_jar-from ? chaperon-20040205.jar # rm ./cocoon-serializers-charsets-0.2.jar # java-pkg_jar-from ? cocoon-serializers-charsets-0.2.jar rm ./commons-codec-1.3.jar java-pkg_jar-from commons-codec commons-codec.jar commons-codec-1.3.jar rm ./commons-dbcp-1.2.1.jar java-pkg_jar-from commons-dbcp commons-dbcp.jar commons-dbcp-1.2.1.jar rm ./commons-digester-1.7.jar java-pkg_jar-from commons-digester commons-digester.jar commons-digester-1.7.jar rm ./commons-discovery-0.2.jar java-pkg_jar-from commons-discovery commons-discovery.jar commons-discovery-0.2.jar rm ./commns-el-1.0.jar java-pkg_jar-from commons-el commons-el.jar commons-el-1.0.jar commns-el-1.0.jar rm ./commons-pool-1.2.jar java-pkg_jar-from commons-pool commons-pool.jar commons-pool-1.2.jar rm ./commons-transaction-1.0.1.jar java-pkg_jar-from commons-transaction commons-transaction.jar commons-transaction-1.0.1.jar # rm ./daisy-htmlcleaner-1.4.1.jar # java-pkg_jar-from ? daisy-htmlcleaner-1.4.1.jar # rm ./daisy-util-1.4.1.jar # java-pkg_jar-from ? daisy-util-1.4.1.jar # rm ./db-ojb-1.0.4.jar # java-pkg_jar-from ? db-ojb-1.0.4.jar # rm ./deli-x050330.jar # java-pkg_jar-from ? deli-x050330.jar # rm ./dojo-rsrc-20060614.jar # java-pkg_jar-from ? dojo-rsrc-20060614.jar # rm ./excalibur-datasource-2.1.jar # java-pkg_jar-from ? excalibur-datasource-2.1.jar # rm ./fop-0.20.5.jar ERROR # java-pkg_jar-from fop fop.jar fop-0.20.5.jar rm ./geronimo-spec-activation-1.0.2-rc4.jar java-pkg_jar-from geronimo-specs geronimo-spec-activation.jar geronimo-spec-activation-1.0.2-rc4.jar rm ./geronimo-spec-javamail-1.3.1-rc5.jar java-pkg_jar-from geronimo-specs geronimo-spec-javamail.jar geronimo-spec-javamail-1.3.1-rc5.jar rm ./geronimo-spec-jms-1.1-rc3.jar java-pkg_jar-from geronimo-specs geronimo-spec-jms.jar geronimo-spec-jms-1.1-rc3.jar rm ./geronimo-spec-jta-1.0.1B-rc3.jar java-pkg_jar-from geronimo-specs geronimo-spec-jta.jar geronimo-spec-jta-1.0.1B-rc3.jar rm ./groovy-1.0-jsr-05.jar java-pkg_jar-from groovy-1 groovy.jar groovy-1.0-jsr-05.jar rm ./hsqldb-1.8.0.7.jar java-pkg_jar-from hsqldb hsqldb.jar hsqldb-1.8.0.7.jar rm ./icu4j-2.8.jar java-pkg_jar-from icu4j icu4j.jar icu4j-2.8.jar rm ./itext-1.1.jar java-pkg_jar-from itext iText.jar itext-1.1.jar itext-1.1.jar # rm ./jackrabbit-core-1.0.1.jar # java-pkg_jar-from ? jackrabbit-core-1.0.1.jar rm ./jakarta-oro-2.0.8.jar java-pkg_jar-from jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar rm ./jakarta-slide-webdavlib-2.1.jar java-pkg_jar-from jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar # rm ./jdbi-1.3.1.jar # java-pkg_jar-from ? jdbi-1.3.1.jar rm ./jdom-1.0.jar java-pkg_jar-from jdom-1.0 jdom.jar jdom-1.0.jar # rm ./jena-2.1.jar # java-pkg_jar-from ? jena-2.1.jar # rm ./jfor-0.7.1.jar ERROR # java-pkg_jar-from jfor jfor.jar jfor-0.7.1.jar rm ./jing-20030619.jar java-pkg_jar-from jing jing.jar jing-20030619.jar # rm ./joost-20040330.jar # java-pkg_jar-from ? joost-20040330.jar rm ./jsp-api-2.0.jar java-pkg_jar-from servletapi-2.4 jsp-api.jar jsp-api-2.0.jar rm ./jtidy-04aug2000r7-dev.jar java-pkg_jar-from jtidy Tidy.jar jtidy-04aug2000r7-dev.jar rm ./lucene-1.4.3.jar java-pkg_jar-from lucene-1 lucene.jar lucene-1.4.3.jar rm ./myfaces-api-r233484.jar java-pkg_jar-from jsfapi-1 jsfapi.jar myfaces-api-r233484.jar myfaces-api-r233484.jar # rm ./myfaces-impl-r233484.jar # java-pkg_jar-from ? myfaces-impl-r233484.jar # rm./nekodtd-0.1.11.jar # java-pkg_jar-from ? nekodtd-0.1.11.jar rm ./nekohtml-0.9.5.jar java-pkg_jar-from nekohtml nekohtml.jar nekohtml-0.9.5.jar # rm ./pizza-1.1.jar # java-pkg_jar-from ? pizza-1.1.jar # rm ./pluto-1.0.1.jar # java-pkg_jar-from ? pluto-1.0.1.jar rm ./poi-2.5.1-final-20040804.jar java-pkg_jar-from poi poi.jar poi-2.5.1-final-20040804.jar # rm ./portals-bridges-common-1.0.jar # java-pkg_jar-from ? portals-bridges-common-1.0.jar rm ./portlet-api-1.0.jar java-pkg_jar-from portletapi-1 portletapi.jar portlet-api-1.0.jar rm ./qdox-1.5-jar java-pkg_jar-from qdox-1.6 qdox.jar qdox-1.5-jar # java-pkg_jar-from ? quartz-1.5.2.jar # java-pkg_jar-from ? slide-kernel-2.1.jar # java-pkg_jar-from ? slide-stores-2.1.jar # java-pkg_jar-from ? slide-webdavservlet-2.1.jar # java-pkg_jar-from ? spark-0.2.jar rm ./velocity-1.4.jar java-pkg_jar-from velocity velocity.jar velocity-1.4.jar rm ./wsdl4j-1.5.1.jar java-pkg_jar-from wsdl4j wsdl4j.jar wsdl4j-1.5.1.jar # java-pkg_jar-from ? wsrp4j-consumer-0.3-dev.jar # java-pkg_jar-from ? wsrp4j-shared-0.3-dev.jar rm ./xindice-1.1.jar cp /opt/xindice/java/lib/xindice.jar xindice-1.1.jar rm ./xmldb-api-20030701.jar java-pkg_jar-from xmldb xmldb-api.jar xmldb-api-20030701.jar # rm ./xmldb-common-20030701.jar # JAVa-pkg_jar-from ? xmldb-common-20030701.jar rm ./xmldb-xupdate-20040205.jar cp /opt/xindice/java/lib/xmldb-xupdate.jar xmldb-xupdate-20040205.jar rm ./xmlrpc-1.1.jar java-pkg_jar-from xmlrpc xmlrpc.jar xmlrpc-1.1.jar # rm ./xreporter-expression-r683.jar # java-pkg_jar-from ? xreporter-expression-r683.jar cd "${S}/tools/instrumentation/lib" # rm ./excalibur-instrument-client-2.1.jar # java-pkg_jar-from ? excalibur-instrument-client-2.1.jar cd "${S}/tools/jetty/lib" # rm ./jetty-4.2.23.jar # java-pkg_jar-from ? jetty-4.2.23.jar rm ./servlet-2.3.jar java-pkg_jar-from servlet-api-2.3 servlet.jar servlet-2.3.jar cd "${S}/tools/lib" rm ./*.jar 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" } # # Should we useflag all blocks to be excluded? # # BLOCKS="ajax \ # apples \ # asciiart \ # auth \ # authentication-fw \ # axis \ # batik \ # bsf \ # captcha \ # chaperon \ # cron \ # databases \ # deli \ # eventcache \ # faces \ # fop \ # forms \ # hsqldb \ # html \ # imageop \ # itext \ # javaflow \ # jcr \ # jfor \ # jms \ # jsp \ # linkrewriter \ # linotype \ # lucene \ # mail \ # midi \ # naming \ # ojb \ # paranoid \ # petstore \ # php \ # poi \ # portal \ # portal-fw \ # profiler \ # proxy \ # python \ # qdox \ # querybean \ # repository \ # serializers \ # session-fw \ # slide \ # slop \ # stx \ # swf \ # taglib \ # template \ # tour \ # validation \ # velocity \ # web3 \ # webdav \ # woody \ # xmldb \ # xsltal \ # xsp" # # if use ${BLOCK}; then # echo "exclude.block.${BLOCK}=true" >> local.blocks.properties # fi