123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- <?xml version="1.0"?>
-
- <project name="vaadin-buildhelpers" basedir="." default="publish-local"
- xmlns:ivy="antlib:org.apache.ivy.ant">
- <description>
- Compiles build helpers used when building other
- modules.
- </description>
- <include file="../build.xml" as="vaadin" />
- <include file="../common.xml" as="common" />
-
- <property name="module.name" value="vaadin-buildhelpers" />
- <property name="module.symbolic" value="com.vaadin.buildhelpers" />
- <property name="result.dir" location="result" />
- <path id="classpath.compile.custom" />
-
- <property name="filtered.webcontent.dir" location="${result.dir}/WebContent" />
- <property name="release-notes-tickets-file" location="${result.dir}/release-notes-tickets.html" />
- <property name="release-notes-authors-file" location="${result.dir}/release-notes-authors.html" />
-
- <target name="jar" depends="filter.webcontent">
- <antcall target="common.compile" />
- <property name="result.jar"
- location="${result.dir}/lib/${module.name}-${vaadin.version}.jar" />
- <property name="classes" location="${result.dir}/classes" />
- <property name="src" location="${result.dir}/../src" />
-
- <jar destfile="${result.jar}" duplicate="fail" index="true">
- <fileset dir="${classes}" excludes="${classes.exclude}"
- erroronmissingdir="false" />
- <fileset dir="${filtered.webcontent.dir}/.."
- includes="WebContent/**" />
- </jar>
- </target>
-
- <target name="publish-local" depends="jar">
- <antcall target="common.publish-local" />
- </target>
-
- <target name="clean">
- <antcall target="common.clean" />
- </target>
-
- <target name="filter.webcontent"
- depends="fetch-release-notes-tickets,fetch-release-notes-authors">
- <!-- Running without build.release-notes will cause an error, which
- is ignored -->
- <loadfile property="release-notes-tickets" srcFile="${release-notes-tickets-file}"
- failonerror="false" />
- <loadfile property="release-notes-authors" srcFile="${release-notes-authors-file}"
- failonerror="false" />
-
- <delete dir="${filtered.webcontent.dir}" />
- <copy todir="${filtered.webcontent.dir}">
- <fileset dir="${vaadin.basedir}/WebContent">
- <include name="img/**" />
- </fileset>
- </copy>
- <copy todir="${filtered.webcontent.dir}">
- <fileset dir="${vaadin.basedir}/WebContent">
- <patternset>
- <include name="release-notes.html" />
- <include name="license.html" />
- <include name="licenses/**" />
- <include name="css/**" />
- </patternset>
- </fileset>
- <filterchain>
- <expandproperties />
- <replacetokens begintoken="@" endtoken="@">
- <token key="version" value="${vaadin.version}" />
- </replacetokens>
- <replacetokens begintoken="@" endtoken="@">
- <token key="version-minor"
- value="${vaadin.version.major}.${vaadin.version.minor}" />
- </replacetokens>
- <replacetokens begintoken="@" endtoken="@">
- <token key="builddate" value="${build.date}" />
- </replacetokens>
- <replacetokens begintoken="@" endtoken="@">
- <token key="release-notes-tickets" value="${release-notes-tickets}" />
- </replacetokens>
- <replacetokens begintoken="@" endtoken="@">
- <token key="release-notes-authors" value="${release-notes-authors}" />
- </replacetokens>
- </filterchain>
- </copy>
- </target>
-
-
- <target name="fetch-release-notes-tickets" if="build.release-notes">
- <mkdir dir="${filtered.webcontent.dir}" />
- <antcall target="exec-buildhelper">
- <param name="main.class"
- value="com.vaadin.buildhelpers.FetchReleaseNotesTickets" />
- <param name="output" location="${release-notes-tickets-file}" />
- </antcall>
- </target>
-
- <target name="fetch-release-notes-authors" if="build.release-notes">
- <copy file="src/com/vaadin/buildhelpers/authormap.properties"
- tofile="${result.dir}/classes/com/vaadin/buildhelpers/authormap.properties" />
-
- <mkdir dir="${filtered.webcontent.dir}" />
- <antcall target="exec-buildhelper">
- <param name="main.class"
- value="com.vaadin.buildhelpers.FetchReleaseNotesAuthors" />
- <param name="output" location="${release-notes-authors-file}" />
- </antcall>
- <delete
- file="${result.dir}/classes/com/vaadin/buildhelpers/authormap.properties" />
- </target>
-
- <target name="exec-buildhelper">
- <antcall target="common.compile" />
- <fail unless="main.class" message="No main class given in 'main.class'" />
- <fail unless="output" message="No output file given in 'output'" />
- <ivy:resolve log="download-only" conf="build" />
- <ivy:cachepath pathid="deps" />
- <java classname="${main.class}" output="${output}"
- failonerror="true" fork="yes">
- <classpath>
- <pathelement location="${result.dir}/classes" />
- </classpath>
- <classpath refid="deps" />
- <jvmarg value="-Dvaadin.version=${vaadin.version}" />
- </java>
- </target>
-
- <target name="checkstyle">
- <antcall target="common.checkstyle">
- <param name="cs.src" location="src" />
- </antcall>
- </target>
-
- <target name="test" depends="checkstyle">
- <!--<antcall target="common.test.run" /> -->
- <echo>WHAT? No JUnit tests for ${module.name}!</echo>
- </target>
- </project>
|