blob: 44029354812cc94c2d244be5c86e5ec166d5f899 [file] [log] [blame]
<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/notation" zip="gmf-notation-${buildAlias}.zip"/>
<build component="builder/notation-sdk" zip="gmf-sdk-notation-${buildAlias}.zip"/>
<build component="builder/tests" zip="gmf-tests-notation-${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-notation-${buildAlias}.zip" update="true" duplicate="preserve">
<zipfileset
src="${buildDirectory}/${buildLabel}/${masterZip}"
dirmode="775" filemode="664"
id="NotationZipFiles"
excludes="**/*.pack.gz,
**/pack.properties,
**/features/*.jar" />
</zip>
<zip destfile="${buildDirectory}/${buildLabel}/gmf-notation-${buildAlias}.zip" update="true" duplicate="preserve">
<zipfileset
src="${buildDirectory}/${buildLabel}/${masterZip}"
dirmode="775" filemode="664"
id="NotationZipFiles"
excludes="**/*.pack.gz,
**/pack.properties,
**/features/*.jar,
**/features/*sdk*,
**/plugins/*sdk*.jar,
**/plugins/*.source_*.jar" />
</zip>
</target>
</project>