diff --git a/releng.control/checkout.xml b/releng.control/checkout.xml index f1dff1023602165cce2049df3a78bdfd44502d4b..77b1f2e2b3f255a399136861ebf8c9ed81ead001 100644 --- a/releng.control/checkout.xml +++ b/releng.control/checkout.xml @@ -2,59 +2,12 @@ name="checkout" default="checkout" basedir="."> - <!-- - Standard properties pattern. Note: to be cross-platform, - "environment variables" are only appropriate for some variables, - e.g. ones we set, since properties are case sensitive, even if - the environment variables on your operating system are not, e.g. - it will be ${env.Path} not ${env.PATH} on Windows - --> - <property environment="env"/> - <!-- - Let users override standard properties, if desired. If - directory, file, or some properties do not exist, then standard - properties will be used. - --> - <property file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties"/> - <fail - unless="projectname" - message="a projectname is required"/> - <!-- if not otherwise set, the following are good default values --> - <property - name="checkout.builder.clean" - value="true"/> - <property - name="mapVersionTag" - value="HEAD"/> - <property - name="cvsProtocol" - value="${env.BUILD_CVS_WRITE_PROTOCOL}"/> - <property - name="cvsUser" - value="${env.BUILD_CVS_WRITE_USER}"/> - <property - name="cvsServer" - value="${env.BUILD_CVS_SERVER}"/> - <property - name="cvsRoot" - value="${env.BUILD_CVS_ROOT}"/> - - <!-- end required defaults-if-not-set --> - - - <!-- standard computed properties. Should not have to be changed. --> - <property - name="mapCvsRoot" - value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}"/> - <property - name="codir" - value="${env.PROJECT_BUILDERS}/${projectname}"/> - <echo message="projectname: ${projectname}"/> <!-- main --> <target name="checkout" + depends="init" if="projectname"> <!-- we always check and init the builder --> <antcall target="getbuilder"/> @@ -65,7 +18,7 @@ --> <target name="getbuilder" - depends="check.clean,initBuilders" + depends="init,check.clean,initBuilders" if="doClean"> <!-- This is a special property file, that contains (only) the @@ -100,7 +53,8 @@ set doClean property checkout.build.clean is set in checkout.properties from the project properties directory --> - <target name="check.clean"> + <target name="check.clean" + depends="init"> <echo message="checkout.builder.clean: ${checkout.builder.clean}"/> <condition property="doClean"> <equals @@ -118,7 +72,7 @@ --> <target name="initBuilders" - depends="check.clean" + depends="init,check.clean" if="doClean"> <!-- Note: it is important to remove 'codir', which is <projectBuidlers>/<project> so it @@ -136,4 +90,59 @@ dest="${codir}" tag="${mapVersionTag}"/> </target> + + <target name="init" unless="checkout.initialized"> + <!-- + Standard properties pattern. Note: to be cross-platform, + "environment variables" are only appropriate for some variables, + e.g. ones we set, since properties are case sensitive, even if + the environment variables on your operating system are not, e.g. + it will be ${env.Path} not ${env.PATH} on Windows + --> + <property environment="env"/> + <!-- + Let users override standard properties, if desired. If + directory, file, or some properties do not exist, then standard + properties will be used. + --> + <property file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties"/> + <fail + unless="projectname" + message="a projectname is required"/> + + <!-- if not otherwise set, the following are good default values --> + <property + name="checkout.builder.clean" + value="true"/> + <property + name="mapVersionTag" + value="HEAD"/> + <property + name="cvsProtocol" + value="${env.BUILD_CVS_WRITE_PROTOCOL}"/> + <property + name="cvsUser" + value="${env.BUILD_CVS_WRITE_USER}"/> + <property + name="cvsServer" + value="${env.BUILD_CVS_SERVER}"/> + <property + name="cvsRoot" + value="${env.BUILD_CVS_ROOT}"/> + + <!-- end required defaults-if-not-set --> + + + <!-- standard computed properties. Should not have to be changed. --> + <property + name="mapCvsRoot" + value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}"/> + <property + name="codir" + value="${env.PROJECT_BUILDERS}/${projectname}"/> + <echo message="projectname: ${projectname}"/> + + <property name="checkout.initialized" value="true"/> + + </target> </project> \ No newline at end of file diff --git a/releng.control/get-relengControl.sh b/releng.control/get-relengControl.sh index b27c1eeec6bafdac5f22f28dfde44af8fd4f1f44..211bc2dba9b4a4112759b1ca6a4256e4e15bc823 100644 --- a/releng.control/get-relengControl.sh +++ b/releng.control/get-relengControl.sh @@ -66,7 +66,7 @@ fi # This CONTROLTAG controls _only_ the version of releng.control that is fetched by build administrator # It may, for example, contain a version of cc_config.xml where it, in turn, specifies # other branches to do non standard builds (HEAD is the standard, production value) -#CONTROLTAG=david_williams_tempTest33 +#CONTROLTAG=david_williams_tempTest36 CONTROLTAG=HEAD echo " checking out $CONTROLTAG of ${RELENG_CONTROL} from cvs " echo " using :${BUILD_CVS_READ_PROTOCOL}:${BUILD_CVS_READ_USER}@dev.eclipse.org: "