<project default="run"> | |
<target name="init"> | |
<!-- common releng helper scripts --> | |
<property name="helper" value="${buildDirectory}/../org.eclipse.modeling.common.releng/scripts/buildAllHelper.xml" /> | |
<property name="warningsToCheck" value="assertIdentifier,charConcat,constructorName,deprecation,discouraged,finally,forbidden,intfAnnotation,intfNonInherited,maskedCatchBlocks,noEffectAssign,pkgDefaultMethod,staticReceiver,suppress,typeHiding,unusedLabel,unusedLocal,unusedPrivate,uselessTypeCheck,varargsCast,warningToken" /> | |
<echo message="Set compilerArgs = '-enableJavadoc -encoding ISO-8859-1 -warn:${warningsToCheck}'"/> | |
<property name="compilerArg" value="-enableJavadoc -encoding ISO-8859-1 -warn:${warningsToCheck}" /> | |
<property name="commonScriptsDir" value="${basedir}/../org.eclipse.modeling.common.releng/scripts" /> | |
<!-- TODO: set correct source and target levels here --> | |
<echo message="Set javacSource and javacTarget = 1.5"/> | |
<property name="javacSource" value="1.5" /> | |
<property name="javacTarget" value="1.5" /> | |
<path id="bc"> | |
<fileset dir="${java.home}/lib"> | |
<include name="*.jar" /> | |
</fileset> | |
</path> | |
<property name="bootclasspath" refid="bc" /> | |
<!-- TODO: if using JDK1.4, comment out these lines --> | |
<echo message="Set J2SE-1.5 = ${bootclasspath}"/> | |
<property name="J2SE-1.5" value="${bootclasspath}"/> | |
<condition property="bundleBootClasspath" value="${J2SE-1.5}"><isset property="J2SE-1.5"/></condition> | |
<condition property="bundleJavacSource" value="1.5"><isset property="J2SE-1.5"/></condition> | |
<condition property="bundleJavacTarget" value="1.5"><isset property="J2SE-1.5"/></condition> | |
<property name="buildingOSGi" value="true" /> | |
<property name="collectingFolder" value="eclipse" /> | |
<property name="archivePrefix" value="eclipse" /> | |
<!-- Reduce the amount of info in the build log --> | |
<property name="javacVerbose" value="false" /> | |
<property name="buildDirectory" location="${basedir}/../src/eclipse" /> | |
<property file="${basedir}/repoInfo.properties" /> | |
<property name="testBase" location="${buildDirectory}/../testing" /> | |
<available file="${buildDirectory}/label.properties" property="label.properties.exists" /> | |
<ant target="create.label.properties" antfile="${helper}" /> | |
<property file="${buildDirectory}/label.properties" /> | |
<echo message="buildAll.xml properties:"/> | |
<echo message="basedir = ${basedir}"/> | |
<!-- load a value for ${subprojectName} --> | |
<property name="buildConfigFile" value="${basedir}/../build.cfg"/> | |
<available file="${buildConfigFile}" type="file" property="buildConfigIsAvailable" /> | |
<fail message="Can't load build properties from ${buildConfigFile}" unless="buildConfigIsAvailable"/> | |
<property file="${buildConfigFile}" /> | |
<echo message="buildVer = ${buildVer}"/> | |
<echo message="subprojectName = ${subprojectName}"/> | |
<!-- <echo message="Base OS: ${baseos}; Base Window System: ${basews}"/> --> | |
<condition property="isWindows"> | |
<equals arg1="${baseos}.${basews}" arg2="win32.win32" /> | |
</condition> | |
<condition property="isLinuxGTK"> | |
<equals arg1="${baseos}.${basews}" arg2="linux.gtk" /> | |
</condition> | |
<condition property="isLinuxMotif"> | |
<equals arg1="${baseos}.${basews}" arg2="linux.motif" /> | |
</condition> | |
<property name="lib" value="${basedir}/lib"/> | |
<!-- required for signing & repackaging master zip into smaller zips --> | |
<property name="java15-home" value="/opt/sun-java2-5.0" /> | |
<property name="stagingHome" value="/home/data/httpd/download-staging.priv" /> | |
<property name="projectPath" value="modeling/gmf" /> | |
<!-- user with write perms in staging dir & permission to run /usr/bin/sign --> | |
<property name="buildServerUser" value="nickb@build.eclipse.org" /> | |
<property name="masterZip" value="${subprojectName}-Master-${buildAlias}.zip" /> | |
<condition property="sign"> | |
<or> | |
<!-- want to enable/disable signing for a given build type? add/remove types here --> | |
<equals arg1="${buildType}" arg2="I"/> | |
<equals arg1="${buildType}" arg2="M"/> | |
<equals arg1="${buildType}" arg2="S"/> | |
<equals arg1="${buildType}" arg2="R"/> | |
</or> | |
</condition> | |
</target> | |
<target name="run" depends="init"> | |
<antcall target="runAll" /> | |
<ant target="cleanUp" antfile="${helper}"/> | |
</target> | |
<target name="runTestsOnly" depends="init"> | |
<antcall target="runTestsOnlySetup" /> | |
<ant target="test" antfile="${helper}"/> | |
<ant target="publish" antfile="${helper}"/> | |
</target> | |
<!-- make sure everything's in the right place(s) --> | |
<target name="runTestsOnlySetup"> | |
<delete dir="${buildDirectory}" /> | |
<mkdir dir="${buildDirectory}/${buildLabel}" /> | |
<copy todir="${buildDirectory}/${buildLabel}"> | |
<fileset dir="${buildDirectory}/.."> | |
<include name="**/*.zip" /> | |
</fileset> | |
</copy> | |
</target> | |
<target name="runWithoutTest" depends="init"> | |
<antcall target="buildAll" /> | |
<ant target="publish" antfile="${helper}"/> | |
<ant target="cleanUp" antfile="${helper}"/> | |
</target> | |
<target name="runAll" depends="init"> | |
<antcall target="buildAll" /> | |
<ant target="test" antfile="${helper}"/> | |
<ant target="publish" antfile="${helper}"/> | |
</target> | |
<target name="build" depends="init"> | |
<antcall target="buildAll" /> | |
<ant target="cleanUp" antfile="${helper}"/> | |
</target> | |
<target name="buildAll" depends="init"> | |
<macrodef name="build"> | |
<attribute name="component"/> | |
<attribute name="zip"/> | |
<sequential> | |
<!-- building component. creating component zip with jar --> | |
<ant antfile="build.xml" target="main"> | |
<property name="component" value="@{component}" /> | |
</ant> | |
</sequential> | |
</macrodef> | |
<build component="builder/runtime" zip="gmf-runtime-${buildAlias}.zip"/> | |
<build component="builder/sdk-runtime" zip="gmf-sdk-runtime-${buildAlias}.zip"/> | |
<build component="builder/examples" zip="gmf-examples-runtime-${buildAlias}.zip"/> | |
<build component="builder/tests" zip="gmf-tests-runtime-${buildAlias}.zip"/> | |
<ant target="signMasterZip" antfile="${helper}"> | |
<property name="mailStatus" value="nomail" /> | |
</ant> | |
<ant target="packMasterZip" antfile="${helper}"/> | |
<antcall target="updateZips"/> | |
<!-- TODO: if necessary, you can copy files from the SDK into the runtime or examples zips here --> | |
<!-- for example, see validation/buildAll.xml or cdo/buildAll.xml --> | |
<!-- TODO: if necessary, you can remove 3rd party jars used at build time from the zips here --> | |
<!-- for example, see cdo/buildAll.xml --> | |
<!-- md5 files generation --> | |
<exec executable="bash" dir="${buildDirectory}/${buildLabel}"> | |
<arg line="${basedir}/../org.eclipse.modeling.common.releng/scripts/createZipCheckSum.sh" /> | |
</exec> | |
</target> | |
<target name="updateZips" if="sign"> | |
<!-- [233486] Update zip content with signed jars (note: temporary, as there must be a better way) --> | |
<zip destfile="${buildDirectory}/${buildLabel}/gmf-sdk-runtime-${buildAlias}.zip" update="true" duplicate="preserve"> | |
<zipfileset | |
src="${buildDirectory}/${buildLabel}/${masterZip}" | |
dirmode="775" filemode="664" | |
id="NotationZipFiles" | |
excludes="**/*.pack.gz, | |
**/pack.properties, | |
**/features/*.jar, | |
**/*.gmf.examples*.jar" | |
includes="**/*.gmf.runtime*.jar, | |
**/*.gmf.examples.runtime.ui.pde*.jar"/> | |
</zip> | |
<echo message="GMF 2.2.x: backwards compatibility, add gmf-sdk-notation to gmf-sdk-runtime zip"/> | |
<zip destfile="${buildDirectory}/${buildLabel}/gmf-sdk-notation-${buildAlias}.zip" update="true" duplicate="preserve"> | |
<zipfileset | |
src="${downloadsDir}/${gmfFile}"/> | |
</zip> | |
<zip destfile="${buildDirectory}/${buildLabel}/gmf-runtime-${buildAlias}.zip" update="true" duplicate="preserve"> | |
<zipfileset | |
src="${buildDirectory}/${buildLabel}/${masterZip}" | |
dirmode="775" filemode="664" | |
id="RuntimeZipFiles" | |
excludes="**/*.pack.gz, | |
**/pack.properties, | |
**/features/*.jar, | |
**/plugins/*.gmf.runtime.sdk_*.jar, | |
**/plugins/*.source_*.jar" | |
includes="**/*.gmf.runtime*.jar, | |
**/*.gmf_*.jar, | |
**/*.apache*.jar, | |
**/javax.xml*.jar, | |
**/*.w3c*.jar"/> | |
</zip> | |
<zip destfile="${buildDirectory}/${buildLabel}/gmf-examples-runtime-${buildAlias}.zip" update="true" duplicate="preserve"> | |
<zipfileset | |
src="${buildDirectory}/${buildLabel}/${masterZip}" | |
dirmode="775" filemode="664" | |
id="ExamplesZipFiles" | |
excludes="**/*.pack.gz, | |
**/pack.properties, | |
**/features/*.jar, | |
**/*.gmf.examples.runtime.ui.pde*.jar" | |
includes="**/*.gmf.examples*.jar"/> | |
</zip> | |
</target> | |
</project> |