| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <project default="all"> |
| |
| <target name="clean"> |
| <delete dir="build"/> |
| <delete dir="dist"/> |
| <delete dir="test-output"/> |
| </target> |
| |
| <target name="doc"> |
| <mkdir dir="dist/doc"/> |
| <javadoc destdir="dist/doc" maxmemory="256M" source="1.4" useexternalfile="true"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </classpath> |
| <fileset dir="core/src/main/java" includes="**/*.java"/> |
| <fileset dir="agents/src/main/java" includes="**/*.java"/> |
| <fileset dir="pull-agent/src/main/java" includes="**/*.java"/> |
| <fileset dir="ui-core/src/main/java" includes="**/*.java"/> |
| </javadoc> |
| </target> |
| |
| <target name="compile-core"> |
| <mkdir dir="build/core/classes"/> |
| <javac srcdir="core/src/main/java" destdir="build/core/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-ui-core" depends="compile-core"> |
| <mkdir dir="build/ui-core/classes"/> |
| <javac srcdir="ui-core/src/main/java" destdir="build/ui-core/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-agents" depends="compile-core"> |
| <mkdir dir="build/agents/classes"/> |
| <javac srcdir="agents/src/main/java" destdir="build/agents/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-pull-agent" depends="compile-core,compile-agents"> |
| <mkdir dir="build/pull-agent/classes"/> |
| <javac srcdir="pull-agent/src/main/java" destdir="build/pull-agent/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-jetty-runner" depends="compile-core,compile-agents"> |
| <mkdir dir="build/jetty-runner/classes"/> |
| <javac srcdir="jetty-runner/src/main/java" destdir="build/jetty-runner/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-authority-servlet" depends="compile-core,compile-agents,compile-pull-agent"> |
| <mkdir dir="build/authority-servlet/classes"/> |
| <javac srcdir="authority-servlet/src/main/java" destdir="build/authority-servlet/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-api-servlet" depends="compile-core,compile-ui-core,compile-agents,compile-pull-agent"> |
| <mkdir dir="build/api-servlet/classes"/> |
| <javac srcdir="api-servlet/src/main/java" destdir="build/api-servlet/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/ui-core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="compile-crawler-ui" depends="compile-core,compile-ui-core,compile-agents,compile-pull-agent"> |
| <!-- Define the jsp compilation task using tomcat libraries --> |
| <taskdef classname="org.apache.jasper.JspC" name="jasper2" > |
| <classpath id="jspc.classpath"> |
| <pathelement location="${java.home}/../lib/tools.jar"/> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/ui-core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| </classpath> |
| </taskdef > |
| <!-- Compile jsp's to java --> |
| <mkdir dir="build/crawler-ui/java"/> |
| <jasper2 validateXml="false" uriroot="crawler-ui/src/main/webapp" webXmlFragment="crawler-ui/src/main/webapp/WEB-INF/web-generated.xml" outputDir="build/crawler-ui/java" /> |
| <!-- Compile java classes --> |
| <mkdir dir="build/crawler-ui/classes"/> |
| <javac srcdir="build/crawler-ui/java" destdir="build/crawler-ui/classes" target="1.5" source="1.4" debug="true" debuglevel="lines,vars,source"> |
| <classpath id="classpath"> |
| <pathelement location="${java.home}/../lib/tools.jar"/> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/ui-core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| <fileset dir="crawler-ui/src/main/webapp/WEB-INF/lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </classpath> |
| |
| </javac> |
| </target> |
| |
| <target name="jar-core" depends="compile-core"> |
| <mkdir dir="build/jar"/> |
| <jar destfile="build/jar/mcf-core.jar" basedir="build/core/classes"/> |
| </target> |
| |
| <target name="jar-ui-core" depends="compile-ui-core"> |
| <mkdir dir="build/jar"/> |
| <jar destfile="build/jar/mcf-ui-core.jar" basedir="build/ui-core/classes"/> |
| </target> |
| |
| <target name="jar-agents" depends="compile-agents"> |
| <mkdir dir="build/jar"/> |
| <jar destfile="build/jar/mcf-agents.jar" basedir="build/agents/classes"/> |
| </target> |
| |
| <target name="jar-pull-agent" depends="compile-pull-agent"> |
| <mkdir dir="build/jar"/> |
| <jar destfile="build/jar/mcf-pull-agent.jar" basedir="build/pull-agent/classes"/> |
| </target> |
| |
| <target name="jar-jetty-runner" depends="compile-jetty-runner"> |
| <mkdir dir="build/jar"/> |
| <jar destfile="build/jar/mcf-jetty-runner.jar" basedir="build/jetty-runner/classes"/> |
| </target> |
| |
| <target name="webapp-authority-service" depends="jar-core,jar-agents,jar-pull-agent,compile-authority-servlet"> |
| <mkdir dir="build/webapp/authority-service/WEB-INF/lib"/> |
| <copy todir="build/webapp/authority-service/WEB-INF/lib"> |
| <fileset dir="lib"> |
| <include name="commons-codec*.jar"/> |
| <include name="commons-collections*.jar"/> |
| <include name="commons-el*.jar"/> |
| <include name="commons-fileupload*.jar"/> |
| <include name="commons-httpclient-mcf.jar"/> |
| <include name="commons-io*.jar"/> |
| <include name="commons-logging*.jar"/> |
| <include name="jdbcpool-0.99.jar"/> |
| <include name="json.jar"/> |
| <include name="log4j*.jar"/> |
| <include name="serializer*.jar"/> |
| <include name="xalan*.jar"/> |
| <include name="xercesImpl-mcf.jar"/> |
| <include name="xml-apis*.jar"/> |
| </fileset> |
| <fileset dir="lib"> |
| <include name="postgresql*.jar"/> |
| <include name="derby*.jar"/> |
| <include name="hsqldb*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="build/webapp/authority-service/WEB-INF/lib"> |
| <fileset dir="build/jar"> |
| <include name="mcf-core.jar"/> |
| <include name="mcf-agents.jar"/> |
| <include name="mcf-pull-agent.jar"/> |
| </fileset> |
| </copy> |
| <jar destfile="build/webapp/authority-service/WEB-INF/lib/mcf-authority-servlet.jar" basedir="build/authority-servlet/classes"/> |
| </target> |
| |
| <target name="webapp-api-service" depends="jar-core,jar-ui-core,jar-agents,jar-pull-agent,compile-api-servlet"> |
| <mkdir dir="build/webapp/api-service/WEB-INF/lib"/> |
| <copy todir="build/webapp/api-service/WEB-INF/lib"> |
| <fileset dir="lib"> |
| <include name="commons-codec*.jar"/> |
| <include name="commons-collections*.jar"/> |
| <include name="commons-el*.jar"/> |
| <include name="commons-fileupload*.jar"/> |
| <include name="commons-httpclient-mcf.jar"/> |
| <include name="commons-io*.jar"/> |
| <include name="commons-logging*.jar"/> |
| <include name="jdbcpool-0.99.jar"/> |
| <include name="json.jar"/> |
| <include name="log4j*.jar"/> |
| <include name="serializer*.jar"/> |
| <include name="xalan*.jar"/> |
| <include name="xercesImpl-mcf.jar"/> |
| <include name="xml-apis*.jar"/> |
| </fileset> |
| <fileset dir="lib"> |
| <include name="postgresql*.jar"/> |
| <include name="derby*.jar"/> |
| <include name="hsqldb*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="build/webapp/api-service/WEB-INF/lib"> |
| <fileset dir="build/jar"> |
| <include name="mcf-core.jar"/> |
| <include name="mcf-ui-core.jar"/> |
| <include name="mcf-agents.jar"/> |
| <include name="mcf-pull-agent.jar"/> |
| </fileset> |
| </copy> |
| <jar destfile="build/webapp/api-service/WEB-INF/lib/mcf-api-servlet.jar" basedir="build/api-servlet/classes"/> |
| </target> |
| |
| <target name="webapp-crawler-ui" depends="compile-crawler-ui,jar-core,jar-ui-core,jar-agents,jar-pull-agent"> |
| <mkdir dir="build/webapp/crawler-ui/WEB-INF/lib"/> |
| <copy todir="build/webapp/crawler-ui/WEB-INF/lib"> |
| <fileset dir="crawler-ui/src/main/webapp/WEB-INF/lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="build/webapp/crawler-ui/WEB-INF/lib"> |
| <fileset dir="lib"> |
| <include name="commons-codec*.jar"/> |
| <include name="commons-collections*.jar"/> |
| <include name="commons-el*.jar"/> |
| <include name="commons-fileupload*.jar"/> |
| <include name="commons-httpclient-mcf.jar"/> |
| <include name="commons-io*.jar"/> |
| <include name="commons-logging*.jar"/> |
| <include name="jdbcpool-0.99.jar"/> |
| <include name="json.jar"/> |
| <include name="log4j*.jar"/> |
| <include name="serializer*.jar"/> |
| <include name="xalan*.jar"/> |
| <include name="xercesImpl-mcf.jar"/> |
| <include name="xml-apis*.jar"/> |
| </fileset> |
| <fileset dir="lib"> |
| <include name="postgresql*.jar"/> |
| <include name="derby*.jar"/> |
| <include name="hsqldb*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="build/webapp/crawler-ui/WEB-INF/lib"> |
| <fileset dir="build/jar"> |
| <include name="mcf-core.jar"/> |
| <include name="mcf-agents.jar"/> |
| <include name="mcf-pull-agent.jar"/> |
| <include name="mcf-ui-core.jar"/> |
| </fileset> |
| </copy> |
| <mkdir dir="build/webapp/crawler-ui/WEB-INF/jsp"/> |
| <copy todir="build/webapp/crawler-ui/WEB-INF/jsp"> |
| <fileset dir="crawler-ui/src/main/webapp/WEB-INF/jsp"> |
| <include name="*.tld"/> |
| </fileset> |
| </copy> |
| <copy todir="build/webapp/crawler-ui"> |
| <fileset dir="crawler-ui/src/main/webapp" includes="**/*.jsp,**/*.css,**/*.png,**/*.html"/> |
| </copy> |
| </target> |
| |
| <target name="war-authority-service" depends="webapp-authority-service"> |
| <mkdir dir="dist/web/war"/> |
| <war destfile="dist/web/war/mcf-authority-service.war" webxml="authority-service/src/main/webapp/WEB-INF/web.xml" basedir="build/webapp/authority-service"/> |
| </target> |
| |
| <target name="war-api-service" depends="webapp-api-service"> |
| <mkdir dir="dist/web/war"/> |
| <war destfile="dist/web/war/mcf-api-service.war" webxml="api-service/src/main/webapp/WEB-INF/web.xml" basedir="build/webapp/api-service"/> |
| </target> |
| |
| <target name="war-crawler-ui" depends="webapp-crawler-ui"> |
| <mkdir dir="dist/web/war"/> |
| <war destfile="dist/web/war/mcf-crawler-ui.war" webxml="crawler-ui/src/main/webapp/WEB-INF/web.xml" basedir="build/webapp/crawler-ui"/> |
| </target> |
| |
| <target name="processes" depends="jar-core,jar-agents,jar-pull-agent"> |
| <mkdir dir="dist/processes/jar"/> |
| <copy todir="dist/processes/jar"> |
| <fileset dir="lib"> |
| <include name="commons-codec*.jar"/> |
| <include name="commons-collections*.jar"/> |
| <include name="commons-el*.jar"/> |
| <include name="commons-fileupload*.jar"/> |
| <include name="commons-httpclient-mcf.jar"/> |
| <include name="commons-io*.jar"/> |
| <include name="commons-logging*.jar"/> |
| <include name="jdbcpool-0.99.jar"/> |
| <include name="json.jar"/> |
| <include name="log4j*.jar"/> |
| <include name="serializer*.jar"/> |
| <include name="servlet-api*.jar"/> |
| <include name="xalan*.jar"/> |
| <include name="xercesImpl-mcf.jar"/> |
| <include name="xml-apis*.jar"/> |
| </fileset> |
| <fileset dir="lib"> |
| <include name="postgresql*.jar"/> |
| <include name="derby*.jar"/> |
| <include name="hsqldb*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="dist/processes/jar"> |
| <fileset dir="build/jar"> |
| <include name="mcf-core.jar"/> |
| <include name="mcf-agents.jar"/> |
| <include name="mcf-pull-agent.jar"/> |
| </fileset> |
| </copy> |
| <mkdir dir="dist/processes/script"/> |
| <copy todir="dist/processes/script"> |
| <fileset dir="scripts"/> |
| </copy> |
| </target> |
| |
| <target name="example" depends="war-crawler-ui,war-api-service,war-authority-service,jar-jetty-runner,jar-core,jar-agents,jar-pull-agent"> |
| <mkdir dir="dist/example/lib"/> |
| <copy todir="dist/example/lib"> |
| <fileset dir="lib"> |
| <include name="commons-codec*.jar"/> |
| <include name="commons-collections*.jar"/> |
| <include name="commons-el*.jar"/> |
| <include name="commons-fileupload*.jar"/> |
| <include name="commons-httpclient-mcf.jar"/> |
| <include name="commons-io*.jar"/> |
| <include name="commons-logging*.jar"/> |
| <include name="eclipse*.jar"/> |
| <include name="jasper*.jar"/> |
| <include name="jdbcpool-0.99.jar"/> |
| <include name="jetty*.jar"/> |
| <include name="json.jar"/> |
| <include name="jsp-api*.jar"/> |
| <include name="jsp-2.5*.jar"/> |
| <include name="log4j*.jar"/> |
| <include name="serializer*.jar"/> |
| <include name="servlet-api*.jar"/> |
| <include name="tomcat-juli*.jar"/> |
| <include name="xalan*.jar"/> |
| <include name="xercesImpl-mcf.jar"/> |
| <include name="xml-apis*.jar"/> |
| </fileset> |
| <fileset dir="lib"> |
| <include name="postgresql*.jar"/> |
| <include name="derby*.jar"/> |
| <include name="hsqldb*.jar"/> |
| </fileset> |
| </copy> |
| <copy todir="dist/example/lib"> |
| <fileset dir="build/jar"> |
| <include name="mcf-core.jar"/> |
| <include name="mcf-ui-core.jar"/> |
| <include name="mcf-agents.jar"/> |
| <include name="mcf-pull-agent.jar"/> |
| <include name="mcf-jetty-runner.jar"/> |
| </fileset> |
| </copy> |
| <mkdir dir="dist/example/war"/> |
| <copy todir="dist/example/war"> |
| <fileset dir="dist/web/war"/> |
| </copy> |
| <mkdir dir="dist/example/connector-lib"/> |
| <mkdir dir="dist/example/logs"/> |
| <copy todir="dist/example"> |
| <fileset dir="jetty-example"> |
| <include name="properties.xml"/> |
| <include name="connectors.xml"/> |
| <include name="logging.ini"/> |
| </fileset> |
| </copy> |
| </target> |
| |
| <target name="compile-tests" depends="compile-core,compile-ui-core,compile-agents,compile-pull-agent,compile-authority-servlet,compile-api-servlet"> |
| <mkdir dir="build/tests/classes"/> |
| <javac srcdir="tests/src/main/java" destdir="build/tests/classes" target="1.5" source="1.5" debug="true" debuglevel="lines,vars,source"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/ui-core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| <pathelement location="build/authority-servlet/classes"/> |
| <pathelement location="build/api-servlet/classes"/> |
| </classpath> |
| </javac> |
| </target> |
| |
| <target name="jar-tests" depends="compile-tests"> |
| <mkdir dir="build/test-jar"/> |
| <jar destfile="build/test-jar/mcf-tests.jar" basedir="build/tests/classes"/> |
| </target> |
| |
| <target name="build-tests" depends="jar-tests"/> |
| |
| <target name="run-tests" depends="compile-tests"> |
| <mkdir dir="test-output"/> |
| <junit fork="true" maxmemory="128m" dir="test-output" showoutput="true" haltonfailure="true"> |
| <classpath> |
| <fileset dir="lib"> |
| <include name="*.jar"/> |
| </fileset> |
| <pathelement location="build/core/classes"/> |
| <pathelement location="build/ui-core/classes"/> |
| <pathelement location="build/agents/classes"/> |
| <pathelement location="build/pull-agent/classes"/> |
| <pathelement location="build/authority-servlet/classes"/> |
| <pathelement location="build/api-servlet/classes"/> |
| <pathelement location="build/tests/classes"/> |
| </classpath> |
| <test name="org.apache.manifoldcf.agents.tests.Sanity" todir="test-output"/> |
| <test name="org.apache.manifoldcf.crawler.tests.Sanity" todir="test-output"/> |
| <!-- MHL --> |
| </junit> |
| </target> |
| |
| <target name="build" depends="processes,war-authority-service,war-crawler-ui,war-api-service,example"/> |
| |
| <target name="all" depends="build,doc,build-tests,run-tests"/> |
| |
| </project> |