gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 1 | <project name="samples-common"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 2 | <property name="gwt.root" location="../.." /> |
| 3 | <property name="project.tail" value="samples/${sample.root}" /> |
| 4 | <import file="${gwt.root}/common.ant.xml" /> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 5 | |
fabbott@google.com | f2503f3 | 2009-06-11 20:18:35 +0000 | [diff] [blame] | 6 | <!-- |
| 7 | Number of localworkers for sample compilation. This depends on your |
| 8 | hardware, so it's a good candidate to specify in local.ant.properties |
| 9 | if this default isn't good for you. Ideally, it should approximate |
| 10 | the number of CPU cores in your machine. |
| 11 | --> |
| 12 | <property name="gwt.samples.localworkers" value="2" /> |
| 13 | |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 14 | <property name="sample.lower" value="${sample.root}" /> |
| 15 | <property name="sample.upper" value="${sample.module}" /> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 16 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 17 | <property.ensure name="gwt.user.jar" location="${gwt.build.lib}/gwt-user.jar" /> |
jat@google.com | 0b1619e | 2009-09-20 19:33:31 +0000 | [diff] [blame] | 18 | <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev.jar" /> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 19 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 20 | <!-- Mirror directory for scripts; makes building distro easier --> |
| 21 | <property name="samples.scripts" value="${gwt.build.out}/samples-scripts" /> |
| 22 | <!-- Use the uppercase name rather than the lowercase name --> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 23 | <property name="sample.build" value="${gwt.build.out}/samples/${sample.upper}" /> |
gwt.team.scottb | 6996532 | 2006-12-19 23:58:19 +0000 | [diff] [blame] | 24 | |
cramsdale@google.com | fa87f8f | 2010-08-19 01:29:03 +0000 | [diff] [blame] | 25 | <path id="gae.extraclasspath"> |
| 26 | <pathelement location="${gwt.tools.lib}/appengine/appengine-api-1.0-sdk-1.3.4.jar"/> |
| 27 | <pathelement location="${gwt.tools.lib}/appengine/geronimo-jpa_3.0_spec-1.1.1.jar"/> |
| 28 | <pathelement location="${gwt.tools.lib}/appengine/datanucleus-appengine-1.0.7.final.jar"/> |
| 29 | </path> |
| 30 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 31 | <target name="source" description="Copy source to the output folder"> |
| 32 | <mkdir dir="${sample.build}/src" /> |
| 33 | <copy todir="${sample.build}/src"> |
| 34 | <fileset dir="src" /> |
| 35 | </copy> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 36 | <mkdir dir="${sample.build}/war" /> |
| 37 | <copy todir="${sample.build}/war"> |
| 38 | <fileset dir="war" excludes="WEB-INF/classes/**"/> |
| 39 | </copy> |
cramsdale@google.com | 408e75e | 2010-08-20 15:26:19 +0000 | [diff] [blame] | 40 | <if> |
| 41 | <available file="pom.xml"/> |
| 42 | <then> |
| 43 | <copy tofile="${sample.build}/pom.xml" file="pom.xml"/> |
| 44 | </then> |
| 45 | </if> |
cramsdale@google.com | 0e04c41 | 2010-08-20 19:02:03 +0000 | [diff] [blame] | 46 | <if> |
| 47 | <available file="README-MAVEN.txt"/> |
| 48 | <then> |
| 49 | <copy tofile="${sample.build}/README-MAVEN.txt" file="README-MAVEN.txt"/> |
| 50 | </then> |
| 51 | </if> |
fabbott@google.com | 6bdc0f1 | 2010-08-25 18:12:04 +0000 | [diff] [blame] | 52 | <if> |
| 53 | <available file="user-build.xml"/> |
| 54 | <then> |
| 55 | <copy tofile="${sample.build}/build.xml" file="user-build.xml"/> |
| 56 | </then> |
| 57 | </if> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 58 | </target> |
gwt.team.scottb | 6996532 | 2006-12-19 23:58:19 +0000 | [diff] [blame] | 59 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 60 | <target name="compile" description="Compile all java files"> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 61 | <mkdir dir="${sample.build}/war/WEB-INF/classes" /> |
| 62 | <gwt.javac destdir="${sample.build}/war/WEB-INF/classes"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 63 | <classpath> |
| 64 | <pathelement location="${gwt.user.jar}" /> |
| 65 | <pathelement location="${gwt.dev.jar}" /> |
cramsdale@google.com | fa87f8f | 2010-08-19 01:29:03 +0000 | [diff] [blame] | 66 | <pathelement location="${gwt.tools.lib}/jsr107cache/jsr107cache-1.1.jar"/> |
| 67 | <pathelement location="${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar"/> |
| 68 | <path refid="gae.extraclasspath" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 69 | </classpath> |
| 70 | </gwt.javac> |
| 71 | </target> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 72 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 73 | <target name="gwtc" description="Compile to JavaScript"> |
| 74 | <outofdate> |
| 75 | <sourcefiles> |
cramsdale@google.com | fa87f8f | 2010-08-19 01:29:03 +0000 | [diff] [blame] | 76 | <fileset dir="${sample.path}" /> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 77 | <fileset dir="${sample.build}/war/WEB-INF/classes" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 78 | <fileset file="${gwt.user.jar}" /> |
| 79 | <fileset file="${gwt.dev.jar}" /> |
| 80 | </sourcefiles> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 81 | <targetfiles path="${sample.build}/war/${sample.lower}/${sample.lower}.nocache.js" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 82 | <sequential> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 83 | <mkdir dir="${sample.build}/war" /> |
fabbott@google.com | f2503f3 | 2009-06-11 20:18:35 +0000 | [diff] [blame] | 84 | <gwt.timer name="${sample.upper} with ${gwt.samples.localworkers} localWorkers"> |
fabbott@google.com | 6ae2c63 | 2010-08-27 14:47:27 +0000 | [diff] [blame] | 85 | <java dir="${sample.build}" classname="com.google.gwt.dev.Compiler" |
| 86 | classpath="${sample.path}:${sample.build}/war/WEB-INF/classes:${gwt.user.jar}:${gwt.dev.jar}:${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA.jar:${gwt.tools.lib}/javax/validation/validation-api-1.0.0.GA-sources.jar" |
| 87 | fork="yes" failonerror="true"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 88 | <jvmarg value="-Xmx256M"/> |
fabbott@google.com | f2503f3 | 2009-06-11 20:18:35 +0000 | [diff] [blame] | 89 | <arg value="-localWorkers" /> |
| 90 | <arg value="${gwt.samples.localworkers}" /> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 91 | <arg value="-war" /> |
| 92 | <arg file="${sample.build}/war" /> |
| 93 | <arg value="com.google.gwt.sample.${sample.lower}.${sample.upper}" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 94 | </java> |
| 95 | </gwt.timer> |
| 96 | <length property="sample.size"> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 97 | <fileset dir="${sample.build}/war/${sample.lower}" includes="*.cache.html,*.cache.js"/> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 98 | </length> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 99 | <echo message="output size for ${sample.upper} is ${sample.size} bytes"/> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 100 | </sequential> |
| 101 | </outofdate> |
| 102 | </target> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 103 | |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 104 | <macrodef name="webAppCreator"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 105 | <attribute name="platform" /> |
| 106 | <attribute name="extension" default="" /> |
| 107 | <sequential> |
| 108 | <outofdate> |
| 109 | <sourcefiles /> |
| 110 | <targetfiles> |
amitmanjhi@google.com | 33d1639 | 2009-10-03 01:14:10 +0000 | [diff] [blame] | 111 | <pathelement location="${samples.scripts}/${sample.upper}/build.xml" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 112 | </targetfiles> |
| 113 | <sequential> |
amitmanjhi@google.com | 33d1639 | 2009-10-03 01:14:10 +0000 | [diff] [blame] | 114 | <mkdir dir="${samples.scripts}/${sample.upper}" /> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 115 | <java classname="com.google.gwt.user.tools.WebAppCreator" classpath="${gwt.user.jar}:${gwt.dev.jar}" failonerror="true"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 116 | <!-- Relative path is important! Paths will be relative in final distro --> |
amitmanjhi@google.com | 33d1639 | 2009-10-03 01:14:10 +0000 | [diff] [blame] | 117 | <sysproperty key="gwt.devjar" value="../../gwt-dev.jar" /> |
jgw@google.com | a3509e2 | 2009-02-06 21:06:24 +0000 | [diff] [blame] | 118 | <arg value="-XnoEclipse" /> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 119 | <arg value="-overwrite" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 120 | <arg value="-out" /> |
amitmanjhi@google.com | 33d1639 | 2009-10-03 01:14:10 +0000 | [diff] [blame] | 121 | <arg file="${samples.scripts}/${sample.upper}" /> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 122 | <arg value="com.google.gwt.sample.${sample.lower}.${sample.upper}" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 123 | </java> |
| 124 | </sequential> |
| 125 | </outofdate> |
| 126 | </sequential> |
| 127 | </macrodef> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 128 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 129 | <target name="scripts" description="Create launch scripts"> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 130 | <webAppCreator platform="linux" /> |
| 131 | <webAppCreator platform="windows" extension=".cmd" /> |
| 132 | <webAppCreator platform="mac" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 133 | </target> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 134 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 135 | <target name="build" depends="source, compile, gwtc, scripts" description="Build and package this project" /> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 136 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 137 | <target name="checkstyle" description="Static analysis of source"> |
fabbott@google.com | 615a29b | 2009-06-23 16:20:54 +0000 | [diff] [blame] | 138 | <gwt.checkstyle outputdirectory="${sample.build}"> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 139 | <fileset dir="src" /> |
| 140 | </gwt.checkstyle> |
| 141 | </target> |
gwt.team.scottb | 6996532 | 2006-12-19 23:58:19 +0000 | [diff] [blame] | 142 | |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 143 | <target name="clean" description="Cleans this project's intermediate and output files"> |
| 144 | <delete dir="${sample.build}" /> |
| 145 | <delete includeemptydirs="true"> |
| 146 | <fileset dir="${samples.scripts}"> |
scottb@google.com | 6cd61e9 | 2009-01-16 19:50:20 +0000 | [diff] [blame] | 147 | <include name="*/${sample.upper}/**" /> |
fabbott@google.com | 0e2dc628 | 2008-08-22 16:09:01 +0000 | [diff] [blame] | 148 | </fileset> |
| 149 | </delete> |
| 150 | </target> |
gwt.team.scottb | 14c5b9d | 2006-12-10 06:06:08 +0000 | [diff] [blame] | 151 | </project> |