diff options
Diffstat (limited to 'org.aspectj.lib/build-aspectjlib.xml')
-rw-r--r-- | org.aspectj.lib/build-aspectjlib.xml | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/org.aspectj.lib/build-aspectjlib.xml b/org.aspectj.lib/build-aspectjlib.xml new file mode 100644 index 000000000..f35a25b9a --- /dev/null +++ b/org.aspectj.lib/build-aspectjlib.xml @@ -0,0 +1,158 @@ +<!-- wrapped at 70 characters, long elements wrapped --> +<!-- =========================================================================== + + Copyright (c) 2005 Contributors. + All rights reserved. + This program and the accompanying materials are made available + under the terms of the Eclipse Public License v1.0 + which accompanies this distribution and is available at + http://eclipse.org/legal/epl-v10.html + + Contributors: + Wes Isberg initial implementation + +============================================================================ --> + +<project name="aspectj-library" default="aspectjlib" basedir="."> + + <target name="aspectjlib" depends="compile" /> + <target name="info"> + <echo> + This script builds the AspectJ library. + + Relevant targets: + aspectjlib build library + + Setup: + - Run from the doc/aspectjlib directory in your AspectJ distribution. + The tasks in ../../lib/aspectjtools.jar are used automatically. + + Variants: + - To define a variable, use the Ant -D option - e.g., on Windows: + + ant -f build.xml -DJAVA_HOME=c:\jdk1.3.1 -Dnorun=skip + + </echo> + </target> + + + <!-- ============================================================= --> + <!-- setup and cleanup targets --> + <!-- ============================================================= --> + + <target name="clean" + depends="init" + description="clean and create classes/jar dir, .ajesym files" + > + <delete quiet="on" dir="${jar.dir}" /> + <delete quiet="on"> + <fileset dir="${org.aspectj.lib.dir}" + includes="**/*.ajesym" + /> + </delete> + <mkdir dir="${jar.dir}" /> + </target> + + <target name="init" depends="init.variables,init.taskdefs" /> + + <target name="init.variables" description="init variables"> + + <property name="org.aspectj.lib.dir" location="${basedir}" /> + <property name="src.dir" + location="${org.aspectj.lib.dir}/src" + /> + + <!-- find AspectJ lib dir in distribution or AspectJ CVS tree --> + <property name="aspectj.dist.lib" + location="${basedir}/../../lib" + /> + + <property name="aspectj.tree.lib" + location="${basedir}/../lib/aspectj/lib" + /> + + <condition property="aspectj.lib.dir" + value="${aspectj.dist.lib}" + > + <available file="${aspectj.dist.lib}/aspectjtools.jar" /> + </condition> + + <condition property="aspectj.lib.dir" + value="${aspectj.tree.lib}" + > + <available file="${aspectj.tree.lib}/aspectjtools.jar" /> + </condition> + + <property name="aspectjrt.jar" + location="${aspectj.lib.dir}/aspectjrt.jar" + /> + <property name="aspectjtools.jar" + location="${aspectj.lib.dir}/aspectjtools.jar" + /> + <property name="aspectjweaver.jar" + location="${aspectj.lib.dir}/aspectjweaver.jar" + /> + + <property name="jar.dir" + location="${org.aspectj.lib.dir}/jars" + /> + <property name="aspectjlib.out.jar" + location="${jar.dir}/aspectjlib.out.jar" + /> + + <available file="${aspectjtools.jar}" + property="aspectjtools.jar.available" + /> + <available file="${aspectjrt.jar}" + property="aspectjrt.jar.available" + /> + + <property name="library.packages" value="org.aspectj.lib" /> + </target> + + <target name="init.taskdefs" + depends="init.variables, + aspectjtools.jar.available, + aspectjrt.jar.available" + unless="taskdefs.init" + > + <taskdef resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties" + > + <classpath> + <pathelement path="${aspectjtools.jar}" /> + </classpath> + </taskdef> + <property name="taskdefs.init" value="true" /> + </target> + + <target name="aspectjrt.jar.available" + depends="init.variables" + unless="aspectjrt.jar.available" + > + <fail message="expecting aspectjrt.jar at ${aspectjrt.jar}" /> + </target> + + <target name="aspectjtools.jar.available" + depends="init.variables" + unless="aspectjtools.jar.available" + > + <fail message="expecting aspectjtools.jar at ${aspectjtools.jar}" + /> + </target> + + <target name="compile" + depends="init" + description="compile library" + > + <antcall target="clean" /> + <!-- can use ajc or iajc here --> + <iajc sourceroots="${src.dir}" + fork="true" + forkclasspath="${aspectjtools.jar}" + classpath="${aspectjrt.jar}" + outjar="${aspectjlib.out.jar}" + /> + + </target> + +</project> |