blob: c1609f93a783f2f3251522a877c2672b457c160a [file] [log] [blame]
crazyboblee66b415a2006-08-25 02:01:19 +00001<?xml version="1.0"?>
2
3<project name="guice" default="compile">
4
limpbizkitaa3cd302008-12-11 08:08:50 +00005 <property name="DynamicImport-Package" value="org.aopalliance.intercept"/>
6 <property name="exclude.imports" value="!com.google.common.*,!net.sf.*,!org.objectweb.*"/>
7
crazybobleeefdb6f32007-02-26 02:54:11 +00008 <import file="common.xml"/>
crazyboblee66b415a2006-08-25 02:01:19 +00009
10 <path id="compile.classpath">
11 <fileset dir="${lib.dir}" includes="*.jar"/>
12 <fileset dir="${lib.dir}/build" includes="*.jar"/>
13 </path>
14
limpbizkit53708f02008-11-29 20:45:55 +000015
16 <target name="jar" depends="jar.withdeps, manifest" description="Build jar.">
17 <jar jarfile="${build.dir}/dist/guice-${version}.jar"
limpbizkitf716cf42008-06-03 09:19:35 +000018 manifest="${build.dir}/META-INF/MANIFEST.MF">
limpbizkit53708f02008-11-29 20:45:55 +000019 <zipfileset src="${build.dir}/${ant.project.name}-with-deps.jar"/>
20 </jar>
crazyboblee66b415a2006-08-25 02:01:19 +000021 </target>
22
limpbizkit28d083b2008-05-07 17:25:38 +000023 <target name="dist" depends="distjars, javadoc"
crazyboblee66b415a2006-08-25 02:01:19 +000024 description="Build entire distribution.">
limpbizkit28d083b2008-05-07 17:25:38 +000025 <ant antfile="servlet/build.xml" target="distjars" inheritAll="false"/>
26 <ant antfile="spring/build.xml" target="distjars" inheritAll="false"/>
27 <ant antfile="struts2/plugin/build.xml" target="distjars" inheritAll="false"/>
28 <ant antfile="extensions/assistedinject/build.xml" target="distjars" inheritAll="false"/>
limpbizkite05f2542009-05-19 00:58:48 +000029 <ant antfile="extensions/jmx/build.xml" target="distjars" inheritAll="false"/>
30 <ant antfile="extensions/jndi/build.xml" target="distjars" inheritAll="false"/>
limpbizkit28d083b2008-05-07 17:25:38 +000031 <ant antfile="extensions/throwingproviders/build.xml" target="distjars" inheritAll="false"/>
32 <ant antfile="extensions/multibindings/build.xml" target="distjars" inheritAll="false"/>
limpbizkit0c43f222007-12-19 01:38:16 +000033
crazybobleeefdb6f32007-02-26 02:54:11 +000034 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000035 <fileset dir="servlet/build" includes="*.jar" excludes="*-with-deps.jar"/>
crazybobleeefdb6f32007-02-26 02:54:11 +000036 </copy>
37 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000038 <fileset dir="spring/build" includes="*.jar" excludes="*-with-deps.jar"/>
crazybobleef7390152007-03-02 23:44:34 +000039 </copy>
40 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000041 <fileset dir="struts2/plugin/build" includes="*.jar" excludes="*-with-deps.jar"/>
crazybobleeefdb6f32007-02-26 02:54:11 +000042 </copy>
limpbizkit0c43f222007-12-19 01:38:16 +000043 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000044 <fileset dir="extensions/assistedinject/build" includes="*.jar" excludes="*-with-deps.jar"/>
limpbizkit0c43f222007-12-19 01:38:16 +000045 </copy>
46 <copy toDir="${build.dir}/dist">
limpbizkite05f2542009-05-19 00:58:48 +000047 <fileset dir="extensions/jmx/build" includes="*.jar" excludes="*-with-deps.jar"/>
48 </copy>
49 <copy toDir="${build.dir}/dist">
50 <fileset dir="extensions/jndi/build" includes="*.jar" excludes="*-with-deps.jar"/>
51 </copy>
52 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000053 <fileset dir="extensions/throwingproviders/build" includes="*.jar" excludes="*-with-deps.jar"/>
limpbizkit0c43f222007-12-19 01:38:16 +000054 </copy>
limpbizkitbf5d2272008-02-16 01:49:41 +000055 <copy toDir="${build.dir}/dist">
limpbizkit53708f02008-11-29 20:45:55 +000056 <fileset dir="extensions/multibindings/build" includes="*.jar" excludes="*-with-deps.jar"/>
limpbizkit50192702008-05-01 09:55:02 +000057 </copy>
limpbizkit0c43f222007-12-19 01:38:16 +000058
crazyboblee66b415a2006-08-25 02:01:19 +000059 <copy toDir="${build.dir}/dist" file="COPYING"/>
60 <copy toDir="${build.dir}/dist">
61 <fileset dir="${lib.dir}"
62 includes="*.jar"/>
63 </copy>
64 <copy toDir="${build.dir}/dist">
crazybobleeefdb6f32007-02-26 02:54:11 +000065 <fileset dir="${build.dir}" includes="javadoc/**/*"/>
crazyboblee66b415a2006-08-25 02:01:19 +000066 </copy>
67
limpbizkit7bf3e3c2008-07-12 20:16:31 +000068 <zip destfile="${build.dir}/guice-${version}.zip">
limpbizkit53708f02008-11-29 20:45:55 +000069 <zipfileset dir="${build.dir}/dist" prefix="guice-${version}" excludes="*-src.jar"/>
limpbizkit7bf3e3c2008-07-12 20:16:31 +000070 </zip>
71 <zip destfile="${build.dir}/guice-${version}-src.zip">
72 <zipfileset dir="." prefix="guice-${version}-src"
73 excludes="build/**/*,build,.svn,.svn/**/*,**/.svn,classes,classes/**/*"/>
74 </zip>
crazyboblee66b415a2006-08-25 02:01:19 +000075 </target>
76
crazyboblee861eb332007-02-03 02:42:05 +000077 <target name="test.dist"
78 depends="jar, test.compile"
79 description="Execute JUnit tests against distribution jar.">
80 <java fork="true"
81 classname="junit.textui.TestRunner"
82 failonerror="true"
83 taskname="junit">
84 <classpath>
85 <pathelement location="${build.dir}/test"/>
86 <pathelement location="${build.dir}/dist/guice-${version}.jar"/>
87 <pathelement location="lib/aopalliance.jar"/>
88 <pathelement location="lib/build/junit.jar"/>
crazyboblee3a09e292007-02-08 22:36:21 +000089 <pathelement location="lib/build/servlet-api-2.5.jar"/>
90 <pathelement location="lib/build/easymock.jar"/>
crazyboblee861eb332007-02-03 02:42:05 +000091 </classpath>
92 <arg value="com.google.inject.AllTests"/>
limpbizkit869a3c02008-06-27 01:09:41 +000093 <syspropertyset>
94 <propertyref name="guice.custom.loader"/>
95 </syspropertyset>
crazyboblee861eb332007-02-03 02:42:05 +000096 </java>
97 </target>
98
crazyboblee66b415a2006-08-25 02:01:19 +000099 <target name="javadoc"
100 description="Generate Javadocs.">
101 <mkdir dir="${build.dir}/javadoc"/>
102 <javadoc packagenames="${javadoc.packagenames}"
103 destdir="${build.dir}/javadoc"
crazybobleebbc3bae2007-02-20 22:15:56 +0000104 author="false"
crazyboblee66b415a2006-08-25 02:01:19 +0000105 protected="true"
limpbizkit1623bc52008-12-31 23:44:15 +0000106 windowtitle="Guice 2.0 API">
crazyboblee66b415a2006-08-25 02:01:19 +0000107 <sourcepath>
108 <pathelement location="${src.dir}"/>
crazyboblee97223d42007-02-25 23:25:31 +0000109 <pathelement location="${servlet.src.dir}"/>
crazyboblee61257a82007-03-03 00:23:40 +0000110 <pathelement location="${spring.src.dir}"/>
limpbizkit0c43f222007-12-19 01:38:16 +0000111 <pathelement location="${assistedinject.src.dir}"/>
limpbizkite05f2542009-05-19 00:58:48 +0000112 <pathelement location="${jmx.src.dir}"/>
113 <pathelement location="${jndi.src.dir}"/>
limpbizkit28d083b2008-05-07 17:25:38 +0000114 <pathelement location="${throwingproviders.src.dir}"/>
limpbizkit3a5da392008-05-01 09:59:47 +0000115 <pathelement location="${multibindings.src.dir}"/>
crazyboblee66b415a2006-08-25 02:01:19 +0000116 </sourcepath>
117 <classpath refid="compile.classpath"/>
crazybobleeefdb6f32007-02-26 02:54:11 +0000118 <classpath>
119 <fileset dir="servlet/lib/build" includes="*.jar"/>
120 </classpath>
crazyboblee62fcdde2007-02-03 02:10:13 +0000121 <link href="http://aopalliance.sourceforge.net/doc"/>
kevinb9ne4f86732007-02-13 18:05:27 +0000122 <link href="http://java.sun.com/javase/6/docs/api"/>
crazyboblee61257a82007-03-03 00:23:40 +0000123 <link href="http://www.springframework.org/docs/api/"/>
crazyboblee66b415a2006-08-25 02:01:19 +0000124 </javadoc>
125 </target>
126
limpbizkit7c508c22009-02-19 02:56:27 +0000127 <target name="no_aop"
128 description="Create a copy of the Guice source that doesn't do bytecode generation.">
129 <taskdef name="munge" classname="MungeTask" classpath="lib/build/munge.jar"/>
130 <mkdir dir="build/no_aop"/>
131 <munge todir="build/no_aop">
limpbizkitbf0d8762009-02-19 09:06:22 +0000132 <fileset dir=".">
limpbizkit4f6274a2009-02-19 21:57:55 +0000133 <!-- exclude generated files -->
134 <exclude name="build/**"/>
135 <exclude name="classes/**"/>
136 <exclude name="latest-api-diffs/**"/>
137 <exclude name="javadoc/**"/>
138 <exclude name="latest-javadoc/**"/>
139 <!-- exclude AOP-specific libraries -->
140 <exclude name="lib/aopalliance.jar"/>
141 <exclude name="lib/build/asm-*.jar"/>
142 <exclude name="lib/build/cglib-*.jar"/>
143 <!-- exclude AOP-specific classes -->
144 <exclude name="**/LineNumbers.java"/>
limpbizkitbf0d8762009-02-19 09:06:22 +0000145 <exclude name="**/InterceptorBindingProcessor.java"/>
146 <exclude name="**/ProxyFactory.java"/>
limpbizkit4f6274a2009-02-19 21:57:55 +0000147 <exclude name="**/ProxyFactoryTest.java"/>
limpbizkitbf0d8762009-02-19 09:06:22 +0000148 <exclude name="**/InterceptorStackCallback.java"/>
149 <exclude name="**/InterceptorBinding.java"/>
150 <exclude name="**/MethodAspect.java"/>
151 <exclude name="**/MethodInterceptionTest.java"/>
152 <exclude name="**/BytecodeGenTest.java"/>
153 <exclude name="**/IntegrationTest.java"/>
154 <exclude name="**/MethodInterceptionTest.java"/>
155 </fileset>
limpbizkit7c508c22009-02-19 02:56:27 +0000156 <arg value="-DNO_AOP" />
157 </munge>
limpbizkit4f6274a2009-02-19 21:57:55 +0000158 <replace file="build/no_aop/common.xml" token="&lt;zipfileset src=&quot;${common.basedir}/lib/build/asm-3.1.jar&quot;/&gt;" value=""/>
159 <replace file="build/no_aop/common.xml" token="&lt;zipfileset src=&quot;${common.basedir}/lib/build/cglib-2.2.1-snapshot.jar&quot;/&gt;" value=""/>
limpbizkit7c508c22009-02-19 02:56:27 +0000160 </target>
161
crazybobleeefdb6f32007-02-26 02:54:11 +0000162 <target name="clean.all"
163 depends="clean"
crazyboblee66b415a2006-08-25 02:01:19 +0000164 description="Remove generated files.">
crazybobleeefdb6f32007-02-26 02:54:11 +0000165 <ant dir="servlet" antfile="build.xml" target="clean"/>
crazybobleef7390152007-03-02 23:44:34 +0000166 <ant dir="spring" antfile="build.xml" target="clean"/>
crazybobleeefdb6f32007-02-26 02:54:11 +0000167 <ant dir="struts2/plugin" antfile="build.xml" target="clean"/>
limpbizkit0c43f222007-12-19 01:38:16 +0000168 <ant dir="extensions/assistedinject" antfile="build.xml" target="clean"/>
limpbizkite05f2542009-05-19 00:58:48 +0000169 <ant dir="extensions/jmx" antfile="build.xml" target="clean"/>
170 <ant dir="extensions/jndi" antfile="build.xml" target="clean"/>
limpbizkit0c43f222007-12-19 01:38:16 +0000171 <ant dir="extensions/throwingproviders" antfile="build.xml" target="clean"/>
limpbizkit50192702008-05-01 09:55:02 +0000172 <ant dir="extensions/multibindings" antfile="build.xml" target="clean"/>
crazyboblee66b415a2006-08-25 02:01:19 +0000173 </target>
174
175</project>