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"> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 18 | <classpath refid="compile.classpath"/> |
| 19 | </javac> |
| 20 | <copy toDir="${build.dir}/classes"> |
| 21 | <fileset dir="${src.dir}" excludes="**/*.java"/> |
| 22 | </copy> |
| 23 | </target> |
| 24 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 25 | <target name="manifest" description="Generate OSGi manifest." depends="compile"> |
| 26 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 27 | <taskdef resource="aQute/bnd/ant/taskdef.properties" |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 28 | classpath="${common.basedir}/lib/build/bnd-0.0.384.jar"/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 29 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 30 | <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] | 31 | <property name="imports" value=""/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 32 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 33 | <property name="Bundle-Name" value="${ant.project.name}"/> |
| 34 | <property name="Bundle-SymbolicName" value="${module}"/> |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 35 | <property name="Bundle-Version" value="${replace;${version};^[^0-9];0.0.0.$0}"/> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 36 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 37 | <property name="Bundle-Description" value="Guice is a lightweight dependency injection framework for Java 5 and above"/> |
| 38 | <property name="Bundle-DocURL" value="http://code.google.com/p/google-guice/"/> |
| 39 | <property name="Bundle-Copyright" value="Copyright (C) 2006 Google Inc."/> |
| 40 | <property name="Bundle-License" value="http://www.apache.org/licenses/LICENSE-2.0"/> |
| 41 | <property name="Bundle-Vendor" value="Google Inc."/> |
| 42 | |
limpbizkit | 869a3c0 | 2008-06-27 01:09:41 +0000 | [diff] [blame] | 43 | <property name="Export-Package" value="!${module}.internal.*,${module}.*;version=${api.version}"/> |
limpbizkit | aa3cd30 | 2008-12-11 08:08:50 +0000 | [diff] [blame] | 44 | |
sberlin | f7ac6ea | 2010-05-09 12:48:24 +0000 | [diff] [blame] | 45 | <condition property="Import-Package" value="!com.google.inject.*,*" else="!${module}.*,${imports},*"> |
| 46 | <istrue value="${fragment}"/> |
| 47 | </condition> |
| 48 | |
| 49 | <condition property="Fragment-Host" value="com.google.inject"> |
| 50 | <istrue value="${fragment}"/> |
| 51 | </condition> |
| 52 | |
| 53 | <property name="-nouses" value="true"/> |
| 54 | |
limpbizkit | fe579cf | 2008-06-08 23:21:41 +0000 | [diff] [blame] | 55 | <property name="-removeheaders" value="Bnd-LastModified,Ignore-Package,Include-Resource,Private-Package,Tool"/> |
| 56 | |
| 57 | <bndwrap jars="${build.dir}/classes" output="${build.dir}"/> |
| 58 | |
| 59 | <unjar src="${build.dir}/classes.bar" dest="${build.dir}"> |
| 60 | <patternset> |
| 61 | <include name="META-INF/MANIFEST.MF"/> |
| 62 | </patternset> |
| 63 | </unjar> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 64 | </target> |
| 65 | |
| 66 | <target name="test.compile" |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 67 | depends="compile" |
| 68 | description="Compile test source."> |
| 69 | <mkdir dir="${build.dir}/test"/> |
| 70 | <javac srcdir="${test.dir}" |
| 71 | debug="on" |
limpbizkit | 8bb742a | 2008-11-23 03:04:18 +0000 | [diff] [blame] | 72 | destdir="${build.dir}/test" |
mcculls | 244e590 | 2010-10-21 21:37:21 +0000 | [diff] [blame] | 73 | source="1.5" target="1.5" includeantruntime="false"> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 74 | <classpath path="${build.dir}/classes"/> |
dhanji | 6a8523c | 2009-12-30 01:05:45 +0000 | [diff] [blame] | 75 | <classpath path="${build.dir}/test"/> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 76 | <classpath refid="compile.classpath"/> |
| 77 | </javac> |
| 78 | <copy toDir="${build.dir}/test"> |
| 79 | <fileset dir="${test.dir}" excludes="**/*.java"/> |
| 80 | </copy> |
| 81 | </target> |
| 82 | |
| 83 | <target name="test" |
| 84 | depends="test.compile" |
| 85 | description="Execute JUnit tests."> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 86 | <java fork="true" |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 87 | classname="junit.textui.TestRunner" |
| 88 | failonerror="true" |
| 89 | taskname="junit"> |
| 90 | <classpath> |
| 91 | <pathelement location="${build.dir}/test"/> |
| 92 | <pathelement location="${build.dir}/classes"/> |
| 93 | <path refid="compile.classpath"/> |
| 94 | </classpath> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 95 | <arg value="${test.class}"/> |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 96 | </java> |
| 97 | </target> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 98 | |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 99 | <target name="clean" |
| 100 | description="Remove generated files."> |
| 101 | <delete dir="${build.dir}"/> |
| 102 | </target> |
limpbizkit | f716cf4 | 2008-06-03 09:19:35 +0000 | [diff] [blame] | 103 | |
limpbizkit | 28d083b | 2008-05-07 17:25:38 +0000 | [diff] [blame] | 104 | <target name="source.jar" |
| 105 | description="Create a .jar file with sources"> |
| 106 | <mkdir dir="${build.dir}"/> |
| 107 | <zip destfile="${build.dir}/${ant.project.name}-${version}-src.jar"> |
mcculls | 74d714c | 2010-10-21 19:10:16 +0000 | [diff] [blame] | 108 | <fileset dir="${src.dir}"/> |
limpbizkit | 28d083b | 2008-05-07 17:25:38 +0000 | [diff] [blame] | 109 | </zip> |
| 110 | </target> |
| 111 | |
| 112 | <target name="distjars" |
| 113 | depends="source.jar, jar" |
| 114 | description="Build jar files"/> |
| 115 | |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 116 | <target name="jar.withdeps" depends="compile" |
| 117 | description="Build jar with dependencies embedded."> |
| 118 | <mkdir dir="${build.dir}/dist"/> |
| 119 | <dirname property="common.basedir" file="${ant.file.common}"/> |
| 120 | <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" |
| 121 | classpath="${common.basedir}/lib/build/jarjar-1.0rc8.jar"/> |
| 122 | <jarjar jarfile="${build.dir}/${ant.project.name}-with-deps.jar"> |
| 123 | <fileset dir="${build.dir}/classes"/> |
chris.nokleberg | 9c65cc2 | 2009-01-11 20:12:42 +0000 | [diff] [blame] | 124 | <zipfileset src="${common.basedir}/lib/build/cglib-2.2.1-snapshot.jar"/> |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 125 | <zipfileset src="${common.basedir}/lib/build/asm-3.1.jar"/> |
limpbizkit | 53708f0 | 2008-11-29 20:45:55 +0000 | [diff] [blame] | 126 | <rule pattern="net.sf.cglib.**" result="com.google.inject.internal.cglib.@1"/> |
| 127 | <rule pattern="org.objectweb.asm.**" result="com.google.inject.internal.asm.@1"/> |
| 128 | <keep pattern="com.google.inject.**"/> |
| 129 | </jarjar> |
| 130 | </target> |
| 131 | |
crazyboblee | efdb6f3 | 2007-02-26 02:54:11 +0000 | [diff] [blame] | 132 | </project> |