david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 1 | <project |
| 2 | name="checkout" |
| 3 | default="checkout" |
| 4 | basedir="."> |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 5 | |
david_williams | 1e71b28 | 2008-03-10 10:12:40 +0000 | [diff] [blame] | 6 | |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 7 | <!-- main --> |
| 8 | <target |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 9 | name="checkout" |
david_williams | 14cadd1 | 2011-03-23 06:43:39 +0000 | [diff] [blame] | 10 | depends="init, getBuilderVersion" |
david_williams | f735460 | 2008-01-08 04:28:04 +0000 | [diff] [blame] | 11 | if="projectname"> |
david_williams | 14cadd1 | 2011-03-23 06:43:39 +0000 | [diff] [blame] | 12 | |
| 13 | <echo message="Version tag for ${env.RELENG}: ${mapVersionTag}"/> |
| 14 | |
david_williams | 42f9b24 | 2006-11-27 18:45:14 +0000 | [diff] [blame] | 15 | </target> |
david_williams | a7f68be | 2007-06-20 02:17:13 +0000 | [diff] [blame] | 16 | <!-- |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 17 | The order of execution of these three worker targets is |
| 18 | critical, check.clean, initBuilders, and then getbuilder. |
david_williams | 42f9b24 | 2006-11-27 18:45:14 +0000 | [diff] [blame] | 19 | --> |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 20 | <target |
david_williams | 14cadd1 | 2011-03-23 06:43:39 +0000 | [diff] [blame] | 21 | name="getBuilderVersion" |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 22 | depends="init,check.clean,initBuilders" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 23 | if="doClean"> |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 24 | <!-- |
| 25 | This is a special property file, that contains (only) the |
david_williams | 39c5f65 | 2008-01-02 07:08:39 +0000 | [diff] [blame] | 26 | value of builderVersion. Then, that version of the builder |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 27 | is fetched to control the rest of the build |
| 28 | --> |
david_williams | 1e23416 | 2011-02-27 01:41:15 +0000 | [diff] [blame] | 29 | <property file="${codir}/${env.RELENG}/maps/build.cfg"/> |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 30 | <fail |
| 31 | unless="builderVersion" |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 32 | message="Could not get builderVersion. Probably could not checkout build.cfg"/> |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 33 | <!-- |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 34 | Get a new version of the wtpbuild project from CVS, version |
| 35 | comes from build.cfg map file |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 36 | --> |
david_williams | 1e23416 | 2011-02-27 01:41:15 +0000 | [diff] [blame] | 37 | <echo message="Version tag for ${env.RELENG_BUILDER} is: ${builderVersion}"/> |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 38 | <cvs |
david_williams | 13d378c | 2007-08-22 04:04:54 +0000 | [diff] [blame] | 39 | reallyquiet="${env.CVS_REALLY_QUIET}" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 40 | cvsRoot="${mapCvsRoot}" |
david_williams | 2e0afe0 | 2008-01-02 04:11:40 +0000 | [diff] [blame] | 41 | package="${env.RELENG_BUILDER}" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 42 | dest="${codir}" |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 43 | tag="${builderVersion}"/> |
david_williams | 42f9b24 | 2006-11-27 18:45:14 +0000 | [diff] [blame] | 44 | </target> |
david_williams | 1e71b28 | 2008-03-10 10:12:40 +0000 | [diff] [blame] | 45 | <!-- |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 46 | set doClean property checkout.build.clean is set in |
| 47 | checkout.properties from the project properties directory |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 48 | --> |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 49 | <target name="check.clean" |
| 50 | depends="init"> |
david_williams | 1e23416 | 2011-02-27 01:41:15 +0000 | [diff] [blame] | 51 | <echo message="checkout.builder.clean: ${checkout.builder.clean}"/> |
| 52 | <condition property="doClean"> |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 53 | <equals |
david_williams | eceb39b | 2008-01-02 04:21:44 +0000 | [diff] [blame] | 54 | arg1="${checkout.builder.clean}" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 55 | arg2="true" |
| 56 | trim="true" |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 57 | casesensitive="false"/> |
david_williams | 42f9b24 | 2006-11-27 18:45:14 +0000 | [diff] [blame] | 58 | </condition> |
| 59 | </target> |
david_williams | 1e71b28 | 2008-03-10 10:12:40 +0000 | [diff] [blame] | 60 | <!-- |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 61 | checkout releng from from CVS. We do this only to get the |
| 62 | build.cfg file which names the version of the wtpbuilder to get. |
| 63 | CVS src: webtools.map/releng/maps files dest: <BUILD |
| 64 | HOME>/projectBuilders/<project>/webtools.maps/releng/maps |
david_williams | 800adca | 2008-06-30 22:52:33 +0000 | [diff] [blame] | 65 | --> |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 66 | <target |
| 67 | name="initBuilders" |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 68 | depends="init,check.clean" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 69 | if="doClean"> |
david_williams | 1e23416 | 2011-02-27 01:41:15 +0000 | [diff] [blame] | 70 | |
| 71 | <!-- Note: it is important to remove 'codir', which is <projectBuidlers>/<project> so it |
| 72 | will have a fresh date/time once created during checkout ... or else it can be prematurely |
| 73 | cleaned up, in the middle of a build --> |
| 74 | <delete |
| 75 | dir="${codir}" |
| 76 | failonerror="false"/> |
| 77 | <mkdir dir="${codir}"/> |
david_williams | 14cadd1 | 2011-03-23 06:43:39 +0000 | [diff] [blame] | 78 | |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 79 | <cvs |
david_williams | df04efd | 2011-03-09 07:08:18 +0000 | [diff] [blame] | 80 | reallyquiet="${env.CVS_REALLY_QUIET}" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 81 | cvsRoot="${mapCvsRoot}" |
david_williams | a557052 | 2007-11-16 23:12:47 +0000 | [diff] [blame] | 82 | package="${env.RELENG}" |
david_williams | 7888d50 | 2007-06-29 06:26:51 +0000 | [diff] [blame] | 83 | dest="${codir}" |
david_williams | c2f548c | 2008-07-21 04:06:47 +0000 | [diff] [blame] | 84 | tag="${mapVersionTag}"/> |
david_williams | 42f9b24 | 2006-11-27 18:45:14 +0000 | [diff] [blame] | 85 | </target> |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 86 | |
| 87 | <target name="init" unless="checkout.initialized"> |
| 88 | <!-- |
| 89 | Standard properties pattern. Note: to be cross-platform, |
| 90 | "environment variables" are only appropriate for some variables, |
| 91 | e.g. ones we set, since properties are case sensitive, even if |
| 92 | the environment variables on your operating system are not, e.g. |
| 93 | it will be ${env.Path} not ${env.PATH} on Windows |
| 94 | --> |
| 95 | <property environment="env"/> |
| 96 | <!-- |
| 97 | Let users override standard properties, if desired. If |
| 98 | directory, file, or some properties do not exist, then standard |
| 99 | properties will be used. |
| 100 | --> |
| 101 | <property file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties"/> |
| 102 | <fail |
| 103 | unless="projectname" |
| 104 | message="a projectname is required"/> |
| 105 | |
| 106 | <!-- if not otherwise set, the following are good default values --> |
| 107 | <property |
| 108 | name="checkout.builder.clean" |
| 109 | value="true"/> |
| 110 | <property |
| 111 | name="mapVersionTag" |
| 112 | value="HEAD"/> |
| 113 | <property |
| 114 | name="cvsProtocol" |
david_williams | 1da96d6 | 2011-06-28 04:20:08 +0000 | [diff] [blame] | 115 | value="${env.BUILD_CVS_READ_PROTOCOL}"/> |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 116 | <property |
| 117 | name="cvsUser" |
david_williams | 1da96d6 | 2011-06-28 04:20:08 +0000 | [diff] [blame] | 118 | value="${env.BUILD_CVS_READ_USER}"/> |
david_williams | 8c1e1f0 | 2011-03-18 02:21:31 +0000 | [diff] [blame] | 119 | <property |
| 120 | name="cvsServer" |
| 121 | value="${env.BUILD_CVS_SERVER}"/> |
| 122 | <property |
| 123 | name="cvsRoot" |
| 124 | value="${env.BUILD_CVS_ROOT}"/> |
| 125 | |
| 126 | <!-- end required defaults-if-not-set --> |
| 127 | |
| 128 | |
| 129 | <!-- standard computed properties. Should not have to be changed. --> |
| 130 | <property |
| 131 | name="mapCvsRoot" |
| 132 | value=":${cvsProtocol}:${cvsUser}@${cvsServer}:${cvsRoot}"/> |
| 133 | <property |
| 134 | name="codir" |
| 135 | value="${env.PROJECT_BUILDERS}/${projectname}"/> |
| 136 | <echo message="projectname: ${projectname}"/> |
| 137 | |
| 138 | <property name="checkout.initialized" value="true"/> |
| 139 | |
| 140 | </target> |
david_williams | 39c5f65 | 2008-01-02 07:08:39 +0000 | [diff] [blame] | 141 | </project> |