summaryrefslogtreecommitdiffstats
path: root/petascope/build.xml
diff options
context:
space:
mode:
Diffstat (limited to 'petascope/build.xml')
-rw-r--r--petascope/build.xml132
1 files changed, 132 insertions, 0 deletions
diff --git a/petascope/build.xml b/petascope/build.xml
new file mode 100644
index 0000000..20a0191
--- /dev/null
+++ b/petascope/build.xml
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * This file is part of PetaScope.
+ *
+ * PetaScope is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of
+ * the License, or (at your option) any later version.
+ *
+ * PetaScope is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with PetaScope. If not, see "http://www.gnu.org/licenses/".
+ *
+ * For more information please see "http://www.PetaScope.org"
+ * or contact Peter Baumann via <baumann@rasdaman.com>.
+ *
+ * Copyright 2009 Jacobs University Bremen, Peter Baumann.
+-->
+
+<!-- You may freely edit this file. See commented blocks below for -->
+<!-- some examples of how to customize the build. -->
+<!-- (If you delete it and reopen the project it will be recreated.) -->
+<!-- By default, only the Clean and Build commands use this build script. -->
+<!-- Commands such as Run, Debug, and Test only use this build script if -->
+<!-- the Compile on Save feature is turned off for the project. -->
+<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
+<!-- in the project's Project Properties dialog box.-->
+<project name="PetaScope" default="default" basedir=".">
+ <description>Builds, tests, and runs the project PetaScope.</description>
+ <import file="nbproject/build-impl.xml"/>
+ <!--
+
+ There exist several targets which are by default empty and which can be
+ used for execution of your tasks. These targets are usually executed
+ before and after some main targets. They are:
+
+ -pre-init: called before initialization of project properties
+ -post-init: called after initialization of project properties
+ -pre-compile: called before javac compilation
+ -post-compile: called after javac compilation
+ -pre-compile-single: called before javac compilation of single file
+ -post-compile-single: called after javac compilation of single file
+ -pre-compile-test: called before javac compilation of JUnit tests
+ -post-compile-test: called after javac compilation of JUnit tests
+ -pre-compile-test-single: called before javac compilation of single JUnit test
+ -post-compile-test-single: called after javac compilation of single JUunit test
+ -pre-dist: called before archive building
+ -post-dist: called after archive building
+ -post-clean: called after cleaning build products
+ -pre-run-deploy: called before deploying
+ -post-run-deploy: called after deploying
+
+ Example of pluging an obfuscator after the compilation could look like
+
+ <target name="-post-compile">
+ <obfuscate>
+ <fileset dir="${build.classes.dir}"/>
+ </obfuscate>
+ </target>
+
+ For list of available properties check the imported
+ nbproject/build-impl.xml file.
+
+
+ Other way how to customize the build is by overriding existing main targets.
+ The target of interest are:
+
+ init-macrodef-javac: defines macro for javac compilation
+ init-macrodef-junit: defines macro for junit execution
+ init-macrodef-debug: defines macro for class debugging
+ do-dist: archive building
+ run: execution of project
+ javadoc-build: javadoc generation
+
+ Example of overriding the target for project execution could look like
+
+ <target name="run" depends="<PROJNAME>-impl.jar">
+ <exec dir="bin" executable="launcher.exe">
+ <arg file="${dist.jar}"/>
+ </exec>
+ </target>
+
+ Notice that overridden target depends on jar target and not only on
+ compile target as regular run target does. Again, for list of available
+ properties which you can use check the target you are overriding in
+ nbproject/build-impl.xml file.
+
+ -->
+
+ <!-- Builds the complete jar file -->
+ <target name="jar" depends="dist">
+ <jar basedir="${basedir}/build/web/WEB-INF/classes/" file="dist/petascope.jar" />
+ </target>
+
+ <path id="antlr.path">
+ <pathelement location="${basedir}/lib/antlrworks-1.3.1.jar" />
+ </path>
+
+ <!-- Antlr is called here to generate wcpsLexer.java and wcpsParser.java from wcps.g-->
+ <target name="antlr" depends="init">
+ <java classname="org.antlr.Tool" classpathref="antlr.path">
+ <arg value="${src.java.dir}/petascope/wcps/grammar/wcps.g" />
+ <arg value="-Xmx350m" />
+ <arg value="-Xms100m" />
+ </java>
+ <echo message="Successfully generated the WCPS grammar parser !" />
+ </target>
+
+ <!-- Antlr is called here to generate wcpsLexer.java and wcpsParser.java from
+ wcps.g, using debugging classes and symbols-->
+ <target name="antlr-debug" depends="init">
+ <java classname="org.antlr.Tool" classpathref="antlr.path">
+ <arg value="${src.java.dir}/petascope/wcps/grammar/wcps.g" />
+ <arg value="-debug" />
+ <arg value="-Xmx350m" />
+ <arg value="-Xms100m" />
+ </java>
+ <echo message="Successfully generated the WCPS grammar parser !" />
+ </target>
+
+ <!-- Assuming the grammar has changed, run the ANTLR grammar generation task
+ and then build the resulting jar file. -->
+ <target name="antlr-jar" depends="antlr, jar" />
+ <target name="antlr-jar-debug" depends="antlr-debug, jar" />
+
+ <!--target name="-pre-compile" depends="antlr" /-->
+
+</project>