crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 1 | <?xml version="1.0"?> |
| 2 | |
| 3 | <project name="common"> |
| 4 | |
| 5 | <property file="build.properties"/> |
kevinb9n | bca2251 | 2007-04-20 14:47:05 +0000 | [diff] [blame] | 6 | |
| 7 | <!-- can be overridden at the command line with -Dversion= |
| 8 | or in IDEA, in the ant properties dialog --> |
limpbizkit | 2acabce | 2009-09-28 02:51:24 +0000 | [diff] [blame] | 9 | <property name="version" value="snapshot"/> |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 10 | <property name="api.version" value="1.3"/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 11 | |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 12 | <target name="compile" description="Compile Java source."> |
| 13 | <mkdir dir="${build.dir}/classes"/> |
| 14 | <javac srcdir="${src.dir}" |
| 15 | debug="on" |
limpbizkit | 8bb742a | 2008-11-23 03:04:18 +0000 | [diff] [blame] | 16 | destdir="${build.dir}/classes" |
mcculls | 244e590 | 2010-10-21 21:37:21 +0000 | [diff] [blame] | 17 | source="1.5" target="1.5" includeantruntime="false"> |
limpbizkit@gmail.com | f981ab5 | 2010-12-15 05:29:08 +0000 | [diff] [blame] | 18 | <compilerarg value="-Xlint:all,-serial"/> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 19 | <classpath refid="compile.classpath"/> |
| 20 | </javac> |
| 21 | <copy toDir="${build.dir}/classes"> |
| 22 | <fileset dir="${src.dir}" excludes="**/*.java"/> |
| 23 | </copy> |
| 24 | </target> |
| 25 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 26 | <target name="manifest" description="Generate OSGi manifest." depends="compile"> |
| 27 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 28 | <taskdef resource="aQute/bnd/ant/taskdef.properties" |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 29 | classpath="${common.basedir}/lib/build/bnd-0.0.384.jar"/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 30 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 31 | <fail unless="module" message="Missing 'module' property (use the primary package name in this jar)"/> |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 32 | <property name="imports" value=""/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 33 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 34 | <property name="Bundle-Name" value="${ant.project.name}"/> |
| 35 | <property name="Bundle-SymbolicName" value="${module}"/> |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 36 | <property name="Bundle-Version" value="${replace;${version};^[^0-9];0.0.0.$0}"/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 37 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 38 | <property name="Bundle-Description" value="Guice is a lightweight dependency injection framework for Java 5 and above"/> |
| 39 | <property name="Bundle-DocURL" value="http://code.google.com/p/google-guice/"/> |
| 40 | <property name="Bundle-Copyright" value="Copyright (C) 2006 Google Inc."/> |
mcculls | 8846db3 | 2010-11-04 02:22:00 +0000 | [diff] [blame] | 41 | <property name="Bundle-License" value="http://www.apache.org/licenses/LICENSE-2.0.txt"/> |
| 42 | <property name="Bundle-RequiredExecutionEnvironment" value="J2SE-1.5,JavaSE-1.6"/> |
| 43 | <property name="Bundle-Vendor" value="Google, Inc."/> |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 44 | |
limpbizkit | 869a3c0 | 2008-06-27 01:09:41 +0000 | [diff] [blame] | 45 | <property name="Export-Package" value="!${module}.internal.*,${module}.*;version=${api.version}"/> |
limpbizkit | aa3cd30 | 2008-12-11 08:08:50 +0000 | [diff] [blame] | 46 | |
Sam Berlin | 88b6d13 | 2012-01-13 18:32:04 -0500 | [diff] [blame] | 47 | <condition property="Eclipse-ExtensibleAPI" value="true"> |
| 48 | <equals arg1="${module}" arg2="com.google.inject"/> |
| 49 | </condition> |
| 50 | |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 51 | <condition property="Import-Package" value="!com.google.inject.*,*" else="!${module}.*,${imports},*"> |
| 52 | <istrue value="${fragment}"/> |
| 53 | </condition> |
| 54 | |
| 55 | <condition property="Fragment-Host" value="com.google.inject"> |
| 56 | <istrue value="${fragment}"/> |
| 57 | </condition> |
| 58 | |
| 59 | <property name="-nouses" value="true"/> |
| 60 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 61 | <property name="-removeheaders" value="Bnd-LastModified,Ignore-Package,Include-Resource,Private-Package,Tool"/> |
| 62 | |
| 63 | <bndwrap jars="${build.dir}/classes" output="${build.dir}"/> |
| 64 | |
| 65 | <unjar src="${build.dir}/classes.bar" dest="${build.dir}"> |
| 66 | <patternset> |
| 67 | <include name="META-INF/MANIFEST.MF"/> |
| 68 | </patternset> |
| 69 | </unjar> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 70 | </target> |
| 71 | |
| 72 | <target name="test.compile" |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 73 | depends="compile" |
| 74 | description="Compile test source."> |
| 75 | <mkdir dir="${build.dir}/test"/> |
| 76 | <javac srcdir="${test.dir}" |
| 77 | debug="on" |
limpbizkit | 8bb742a | 2008-11-23 03:04:18 +0000 | [diff] [blame] | 78 | destdir="${build.dir}/test" |
mcculls | 244e590 | 2010-10-21 21:37:21 +0000 | [diff] [blame] | 79 | source="1.5" target="1.5" includeantruntime="false"> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 80 | <classpath path="${build.dir}/classes"/> |
dhanji | 6a8523c | 2009-12-30 01:05:45 +0000 | [diff] [blame] | 81 | <classpath path="${build.dir}/test"/> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 82 | <classpath refid="compile.classpath"/> |
| 83 | </javac> |
| 84 | <copy toDir="${build.dir}/test"> |
| 85 | <fileset dir="${test.dir}" excludes="**/*.java"/> |
| 86 | </copy> |
| 87 | </target> |
| 88 | |
| 89 | <target name="test" |
| 90 | depends="test.compile" |
| 91 | description="Execute JUnit tests."> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 92 | <java fork="true" |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 93 | classname="junit.textui.TestRunner" |
| 94 | failonerror="true" |
| 95 | taskname="junit"> |
| 96 | <classpath> |
| 97 | <pathelement location="${build.dir}/test"/> |
| 98 | <pathelement location="${build.dir}/classes"/> |
| 99 | <path refid="compile.classpath"/> |
| 100 | </classpath> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 101 | <arg value="${test.class}"/> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 102 | </java> |
| 103 | </target> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 104 | |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 105 | <target name="clean" |
| 106 | description="Remove generated files."> |
| 107 | <delete dir="${build.dir}"/> |
| 108 | </target> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 109 | |
limpbizkit | 28d083b | 2008-05-07 17:25:38 +0000 | [diff] [blame] | 110 | <target name="source.jar" |
| 111 | description="Create a .jar file with sources"> |
| 112 | <mkdir dir="${build.dir}"/> |
| 113 | <zip destfile="${build.dir}/${ant.project.name}-${version}-src.jar"> |
mcculls | 74d714c | 2010-10-21 19:10:16 +0000 | [diff] [blame] | 114 | <fileset dir="${src.dir}"/> |
limpbizkit | 28d083b | 2008-05-07 17:25:38 +0000 | [diff] [blame] | 115 | </zip> |
| 116 | </target> |
| 117 | |
| 118 | <target name="distjars" |
| 119 | depends="source.jar, jar" |
| 120 | description="Build jar files"/> |
| 121 | |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 122 | <target name="test.compile-with-deps" depends="test.compile" |
Sam Berlin | 45ef017 | 2012-01-13 18:22:35 -0500 | [diff] [blame] | 123 | description="Build a jar of tests with internal.util refocused."> |
| 124 | <mkdir dir="${build.dir}/dist"/> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 125 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 126 | <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 127 | classpath="${common.basedir}/lib/build/jarjar-1.1.jar"/> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 128 | <jarjar jarfile="${build.dir}/${ant.project.name}-${version}-tests.jar"> |
| 129 | <fileset dir="${build.dir}/test"/> |
sberlin | bd7a14b | 2011-02-24 14:49:01 +0000 | [diff] [blame] | 130 | <rule pattern="net.sf.cglib.*" result="com.google.inject.internal.cglib.$@1"/> |
| 131 | <rule pattern="net.sf.cglib.**.*" result="com.google.inject.internal.cglib.@1.$@2"/> |
| 132 | <rule pattern="org.objectweb.asm.*" result="com.google.inject.internal.asm.$@1"/> |
| 133 | <rule pattern="org.objectweb.asm.**.*" result="com.google.inject.internal.asm.@1.$@2"/> |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 134 | <rule pattern="com.google.common.*" result="com.google.inject.internal.guava.$@1"/> |
| 135 | <rule pattern="com.google.common.**.*" result="com.google.inject.internal.guava.@1.$@2"/> |
| 136 | <rule pattern="javax.annotation.*.class" result="com.google.inject.internal.jsr305.$@1"/> |
| 137 | <rule pattern="javax.annotation.**.*.class" result="com.google.inject.internal.jsr305.@1.$@2"/> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 138 | <keep pattern="com.google.inject.**"/> |
sberlin | d523a88 | 2010-11-04 09:34:44 +0000 | [diff] [blame] | 139 | <keep pattern="com.googlecode.**"/> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 140 | </jarjar> |
Sam Berlin | 45ef017 | 2012-01-13 18:22:35 -0500 | [diff] [blame] | 141 | </target> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 142 | |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 143 | <target name="jar.withdeps" depends="compile" |
| 144 | description="Build jar with dependencies embedded."> |
| 145 | <mkdir dir="${build.dir}/dist"/> |
| 146 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 147 | <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 148 | classpath="${common.basedir}/lib/build/jarjar-1.1.jar"/> |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 149 | <jarjar jarfile="${build.dir}/${ant.project.name}-with-deps.jar"> |
| 150 | <fileset dir="${build.dir}/classes"/> |
Christian Edward Gruber | 2303007 | 2013-05-15 17:32:52 -0700 | [diff] [blame] | 151 | <zipfileset src="${common.basedir}/lib/build/cglib-3.0.jar"/> |
| 152 | <zipfileset src="${common.basedir}/lib/build/asm-4.0.jar"/> |
| 153 | <zipfileset src="${common.basedir}/lib/build/asm-util-4.0.jar"/> |
Sam Berlin | 45ef017 | 2012-01-13 18:22:35 -0500 | [diff] [blame] | 154 | <zipfileset src="${common.basedir}/lib/build/guava-11.0.1.jar"/> |
sberlin | 6e37096 | 2010-10-27 01:48:00 +0000 | [diff] [blame] | 155 | <rule pattern="net.sf.cglib.*" result="com.google.inject.internal.cglib.$@1"/> |
| 156 | <rule pattern="net.sf.cglib.**.*" result="com.google.inject.internal.cglib.@1.$@2"/> |
| 157 | <rule pattern="org.objectweb.asm.*" result="com.google.inject.internal.asm.$@1"/> |
| 158 | <rule pattern="org.objectweb.asm.**.*" result="com.google.inject.internal.asm.@1.$@2"/> |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 159 | <rule pattern="com.google.common.*" result="com.google.inject.internal.guava.$@1"/> |
| 160 | <rule pattern="com.google.common.**.*" result="com.google.inject.internal.guava.@1.$@2"/> |
| 161 | <keep pattern="com.google.inject.**"/> |
Sam Berlin | 45ef017 | 2012-01-13 18:22:35 -0500 | [diff] [blame] | 162 | <!-- the servlet extension uses this but core doesn't, |
| 163 | so we explicitly instruct the build to keep it. --> |
| 164 | <keep pattern="com.google.common.base.Throwables"/> |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 165 | </jarjar> |
| 166 | </target> |
| 167 | |
| 168 | <target name="jar.withrenameddeps" depends="compile" |
Sam Berlin | 45ef017 | 2012-01-13 18:22:35 -0500 | [diff] [blame] | 169 | description="Build jar with dependencies embedded."> |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 170 | <mkdir dir="${build.dir}/dist"/> |
| 171 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 172 | <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" |
| 173 | classpath="${common.basedir}/lib/build/jarjar-1.1.jar"/> |
| 174 | <jarjar jarfile="${build.dir}/${ant.project.name}-with-deps.jar"> |
Christian Edward Gruber | 2303007 | 2013-05-15 17:32:52 -0700 | [diff] [blame] | 175 | <zipfileset src="${common.basedir}/lib/build/cglib-3.0.jar"> |
sberlin | b7a02b0 | 2011-07-08 00:34:16 +0000 | [diff] [blame] | 176 | <include name="LICENSE"/> |
| 177 | <include name="NOTICE"/> |
sberlin | d9c913a | 2011-06-26 21:02:54 +0000 | [diff] [blame] | 178 | </zipfileset> |
| 179 | <fileset dir="${build.dir}/classes"/> |
| 180 | <rule pattern="net.sf.cglib.*" result="com.google.inject.internal.cglib.$@1"/> |
| 181 | <rule pattern="net.sf.cglib.**.*" result="com.google.inject.internal.cglib.@1.$@2"/> |
| 182 | <rule pattern="org.objectweb.asm.*" result="com.google.inject.internal.asm.$@1"/> |
| 183 | <rule pattern="org.objectweb.asm.**.*" result="com.google.inject.internal.asm.@1.$@2"/> |
| 184 | <rule pattern="com.google.common.*" result="com.google.inject.internal.guava.$@1"/> |
| 185 | <rule pattern="com.google.common.**.*" result="com.google.inject.internal.guava.@1.$@2"/> |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 186 | <keep pattern="com.google.inject.**"/> |
| 187 | </jarjar> |
| 188 | </target> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 189 | </project> |