diff options
author | aclement <aclement> | 2006-03-18 12:14:58 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-03-18 12:14:58 +0000 |
commit | 70af6329f781f098483218602c045c49bd621751 (patch) | |
tree | 4f11e8d6392f83463a7478ea4edccf97bcbdedd5 /build/package.xml | |
parent | 91c0493cfd3b0562e1611a23da30402b347bae0a (diff) | |
download | aspectj-70af6329f781f098483218602c045c49bd621751.tar.gz aspectj-70af6329f781f098483218602c045c49bd621751.zip |
not finished ... packaging script from AJDT to take an AJ build and produce AJDT jars.
Diffstat (limited to 'build/package.xml')
-rw-r--r-- | build/package.xml | 246 |
1 files changed, 246 insertions, 0 deletions
diff --git a/build/package.xml b/build/package.xml new file mode 100644 index 000000000..36d6ab8b4 --- /dev/null +++ b/build/package.xml @@ -0,0 +1,246 @@ +<?xml version="1.0" ?> +<!-- writen for Ant 1.5.1 --> +<project name="org.aspectj.ajde" default="packaged-plugin"> + + <description> +Creates a packaged plug-in jar for AJDE +</description> + + <!-- VERSION-STRING --> + <!-- these property values will be overridden when called from the master build script --> + <property name="ajde.version" value="9.9.9" /> + + + <property name="build.dir" value="build" /> + <property name="ajde.build.dir" value="build/ajdetemp" /> + + <property file="aspectjlib.properties" /> + + <target name="init"> + <mkdir dir="${build.dir}" /> + <mkdir dir="dist" /> + </target> + + <target name="clean" depends="init"> + <delete dir="${build.dir}" /> + <delete dir="dist" /> + </target> + + <target name="packaged-plugin" depends="init" description="Create the plugin jar file from the assembled components in the build dir"> + <copy todir="${build.dir}" includeemptydirs="false"> + <fileset dir="."> + <exclude name="*src.zip" /> + <exclude name="build.*" /> + <exclude name=".*" /> + <exclude name="*/*" /> + <exclude name="META-INF/MANIFEST.MF" /> + <exclude name="aspectjlib.properties" /> + <depth max="0" /> + </fileset> + </copy> + <copy file="META-INF/MANIFEST.MF" tofile="${build.dir}/META-INF/MANIFEST.MF"> + <filterset begintoken="9" endtoken="9"> + <filter token="2.2.2" value="${ajde.version}"/> + </filterset> + </copy> + <copy todir="${build.dir}/doc"> + <fileset dir="doc" /> + </copy> + <copy todir="${build.dir}/icons"> + <fileset dir="icons" /> + </copy> + <zip destfile="dist/org.aspectj.ajde_${ajde.version}.jar"> + <fileset dir="build" /> + </zip> + </target> + + <target name="copy doc" description="This copies the aspectj docs into the org.eclipse.ajde + plugin. By default, it only copies over any changes from the current version"> + <copy todir="doc" failonerror="false"> + <fileset dir="${aspectj.doc.dir}"> + <exclude name="examples" /> + </fileset> + </copy> + </target> + + + <target name="ajdejar" description="Construct ajde.jar and ajdesrc.zip for the ajde plugin using an AJ build"> + + <!-- copy and unpack an aspectjtools.jar into a local build directory --> + <delete dir="${ajde.build.dir}"/> + <copy file="${aspectj.lib.dir}/aspectjtools.jar" tofile="aspectjtools.jar" overwrite="true" /> + <mkdir dir="${ajde.build.dir}" /> + <unzip dest="${ajde.build.dir}" src="aspectjtools.jar" /> + + <!-- delete everything that isn't in the org.aspectj package --> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="org/aspectj/**/*.*" /> + </fileset> + </delete> + + <!-- delete everything which is going to be in aspectjweaver.jar --> + <echo message="Removing files not required in ajde.jar since they're contained in aspectjweaver.jar"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <include name="org/aspectj/asm/**/*.*" /> + <include name="org/aspectj/weaver/**/*.*" /> + <include name="org/aspectj/apache/bcel/**/*.*" /> + <include name="org/aspectj/bridge/**/*.*" /> + <include name="org/aspectj/util/**/*.*" /> + </fileset> + </delete> + + <!-- delete everything which is going to be in aspectjrt.jar --> + <echo message="Removing files not required in ajde.jar since they're contained in aspectjrt.jar"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <!-- bug 118235: currently the commented out classes appear in both ajde.jar and aspectjrt.jar + uncomment this if decide it should only live in aspectjrt.jar + <include name="org/aspectj/internal/lang/annotation/**/*.*" /> + <include name="org/aspectj/internal/lang/reflect/**/*.*" /> --> + <include name="org/aspectj/runtime/**/*.*" /> + <include name="org/aspectj/lang/**/*.*" /> + </fileset> + </delete> + + <!-- construct the ajde.jar --> + <zip destfile="ajde.jar"> + <fileset dir="${ajde.build.dir}" /> + </zip> + <delete dir="${ajde.build.dir}" /> + + <!-- build a src zip --> + + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/jdtcore-for-aspectj-src.zip"/> + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/aspectjsrc.zip"/> + + <!-- delete everything that isn't in the org.aspectj package --> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="org/aspectj/**/*.*"/> + </fileset> + </delete> + + <!-- delete everything which is going to be in aspectjweaversrc.zip --> + <echo message="Removing files not required in ajdesrc.zip since they're contained in aspectjweaversrc.zip"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <include name="org/aspectj/asm/**/*.*" /> + <include name="org/aspectj/weaver/**/*.*" /> + <include name="org/aspectj/apache/bcel/**/*.*" /> + <include name="org/aspectj/bridge/**/*.*" /> + <include name="org/aspectj/util/**/*.*" /> + </fileset> + </delete> + + <!-- delete everything which is going to be in aspectjrtsrc.zip --> + <echo message="Removing files not required in ajdesrc.zip since they're contained in aspectjrtsrc.zip"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <!-- bug 118235: currently the commented out classes appear in both ajde.jar and aspectjrt.jar + uncomment this if decide it should only live in aspectjrt.jar + <include name="org/aspectj/internal/lang/annotation/**/*.*" /> + <include name="org/aspectj/internal/lang/reflect/**/*.*" /> --> + <include name="org/aspectj/runtime/**/*.*" /> + <include name="org/aspectj/lang/**/*.*" /> + </fileset> + </delete> + + <zip destfile="ajdesrc.zip"> + <fileset dir="${ajde.build.dir}"/> + </zip> + <delete dir="${ajde.build.dir}" /> + </target> + + <target name="weaverjar" description="Construct aspectjweaver.jar and aspectjweaversrc.zip for the aspectjweaver plugin using an AJ build"> + <!-- copy and unpack an aspectjweaver.jar into a local build directory --> + <delete dir="${ajde.build.dir}"/> + <copy file="${aspectj.lib.dir}/aspectjweaver.jar" tofile="aspectjweaver.jar" overwrite="true" /> + <mkdir dir="${ajde.build.dir}" /> + <unzip dest="${ajde.build.dir}" src="aspectjweaver.jar" /> + + <!-- delete everything which shouldn't be included in the aspectjweaver.jar --> + <echo message="Removing files not required in aspectjweaver.jar"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="META-INF/*.*" /> + <exclude name="org/aspectj/apache/bcel/**/*.*" /> + <exclude name="org/aspectj/asm/**/*.*" /> + <exclude name="org/aspectj/bridge/**/*.*" /> + <exclude name="org/aspectj/util/**/*.*" /> + <exclude name="org/aspectj/weaver/**/*.*" /> + </fileset> + </delete> + + <!-- construct the aspectjweaver.jar directly in the org.aspectj.weaver plugin --> + <zip destfile="../org.aspectj.weaver/aspectjweaver.jar"> + <fileset dir="${ajde.build.dir}" /> + </zip> + <delete dir="${ajde.build.dir}" /> + + <!-- build a src zip --> + + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/jdtcore-for-aspectj-src.zip"/> + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/aspectjsrc.zip"/> + <!-- delete everything that isn't in the org.aspectj package --> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="org/aspectj/**/*.*"/> + </fileset> + </delete> + <!-- delete everything which shouldn't be included in the aspectjweaversrc.zip --> + <echo message="Removing files not required in aspectjweaversrc.zip"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="org/aspectj/apache/bcel/**/*.*" /> + <exclude name="org/aspectj/asm/**/*.*" /> + <exclude name="org/aspectj/bridge/**/*.*" /> + <exclude name="org/aspectj/util/**/*.*" /> + <exclude name="org/aspectj/weaver/**/*.*" /> + </fileset> + </delete> + + <zip destfile="../org.aspectj.weaver/aspectjweaversrc.zip"> + <fileset dir="${ajde.build.dir}"/> + </zip> + <delete dir="${ajde.build.dir}" /> + </target> + + <target name="runtimejar" description="Copy the aspectjrt.jar from an + AJ build into the runtime plugin containing + the src"> + <copy file="${aspectj.lib.dir}/aspectjrt.jar" + tofile="../org.aspectj.runtime/aspectjrt.jar" + overwrite="true" /> + + <delete dir="${ajde.build.dir}" /> + <!-- build a src zip --> + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/jdtcore-for-aspectj-src.zip"/> + <unzip dest="${ajde.build.dir}" src="${aspectj.lib.dir}/../../ide/eclipse/org.aspectj.ajde.source/src/aspectjsrc.zip"/> + <!-- delete everything which shouldn't be included in the aspectjrtsrc.zip --> + <echo message="Removing files not required in aspectjrtsrc.zip"/> + <delete includeemptydirs="true"> + <fileset dir="${ajde.build.dir}"> + <exclude name="org/aspectj/internal/lang/annotation/**/*.*" /> + <exclude name="org/aspectj/internal/lang/reflect/**/*.*" /> + <exclude name="org/aspectj/runtime/**/*.*" /> + <exclude name="org/aspectj/lang/**/*.*" /> + </fileset> + </delete> + + <zip destfile="../org.aspectj.runtime/aspectjrtsrc.zip"> + <fileset dir="${ajde.build.dir}"/> + </zip> + <delete dir="${ajde.build.dir}" /> + </target> + + <!-- target name="plugin jars" depends="weaverjar" --> + <target name="plugin jars" depends="copy doc,ajdejar,weaverjar,runtimejar" + description="When a new version of AspectJ is released, drop the + aspectjrt.jar and aspectjtools.jar from the AJ lib directory into + the org.aspectj.ajde directory, and then run 'ant ajde.jar' to create an ajde.jar + update from them. Also need to copy aspectjrt.jar to org.aspectj.runtime plugin."> + </target> + +</project>
\ No newline at end of file |