# HG changeset patch # User Dario Sestito # Date 1274711265 -3600 # Node ID 2a106c5499cb138e10bf8488ac7aa1e355cb95fb # Parent 72cc60784b23da198df3bb84745205784dc335e5 Add sourcesrev option to build_package.pl to allow overriding the revision specified in sources.csv diff -r 72cc60784b23 -r 2a106c5499cb build_package.pl --- a/build_package.pl Tue Apr 13 18:22:12 2010 +0100 +++ b/build_package.pl Mon May 24 15:27:45 2010 +0100 @@ -30,6 +30,7 @@ my $sFbfProjectDir = ''; my $sSubProject = ''; my $sSubprojVariant = ''; +my $sSourcesRevision = ''; my $sSBSConfig = ''; #my $sSourcesFile = ''; #my $sModelFile = ''; @@ -50,6 +51,7 @@ 'projectdir=s' => \$sFbfProjectDir, 'subproj=s' => \$sSubProject, 'variant=s' => \$sSubprojVariant, + 'sourcesrev' => \$sSourcesRevision, 'sbsconfig=s' => \$sSBSConfig, #'sources=s' => \$sSourcesFile, #'model=s' => \$sModelFile, @@ -70,6 +72,7 @@ print "where OPTIONS are:\n"; print "\t--subproj=RELPATH Select subproject located at RELPATH (relative to the root of the project repository)\n"; print "\t--variant=VARIANT If specified use sources_VARIANT.csv instead of sources.csv and add \"VARIANT\" as tag for this build\n"; + print "\t--sourcesrev=REV Sync source repos at revision REV (overrides the revision specified in sources.csv). Note this is the same for all source repos.\n"; print "\t--sbsconfig=CONFIG Pass on CONFIG as configuration to SBS (can also be a comma separated list, e.g. 'armv5,winscw')\n"; print "\t--projectrepo=REPO[#REV] Use repository REPO at revision REV for the project (instead of http://developer.symbian.org/oss/MCL/sftools/fbf/projects/packages)\n"; print "\t--projectdir=DIR Use DIR location for the project (exclusive with --projectrepo).\n"; @@ -241,6 +244,8 @@ $sSubProjArg = "-Dsf.subproject.path=$sSubProject" if ($sSubProject); my $sVariantArg = ''; $sVariantArg = "-Dsf.spec.sourcesync.sourcespecfile=sources_$sSubprojVariant.csv" if ($sSubprojVariant); +my $sSourcesRevisionArg = ''; +$sSourcesRevisionArg = "-Dsf.spec.sources.revision=\"$sSourcesRevision\"" if ($sSourcesRevision); my $sSBSConfigArg = ''; $sSBSConfigArg = "-Dsf.spec.sbs.config=\"$sSBSConfig\"" if ($sSBSConfig); my $sAllTags = ''; @@ -252,12 +257,12 @@ print("cd $sJobDir\\sf-config\n"); chdir("$sJobDir\\sf-config"); print "###### BUILD PREPARATION ######\n"; -my $sPreparationCmd = "hlm sf-prep -Dsf.project.type=package $sSubProjArg -Dsf.spec.job.number=$nJobNumber -Dsf.spec.job.drive=$sDriveLetter: $sTagsArg $sNoPublishOpt $sJobRootDirArg $sHlmDefineOpt $sVariantArg $sSBSConfigArg"; +my $sPreparationCmd = "hlm sf-prep -Dsf.project.type=package $sSubProjArg -Dsf.spec.job.number=$nJobNumber -Dsf.spec.job.drive=$sDriveLetter: $sTagsArg $sNoPublishOpt $sJobRootDirArg $sHlmDefineOpt $sVariantArg $sSourcesRevisionArg $sSBSConfigArg"; print("$sPreparationCmd\n"); system($sPreparationCmd); print "###### EXECUTE BUILD ######\n"; -my $sBuildallCmd = "hlm sf-build-all -Dsf.project.type=package $sSubProjArg -Dsf.spec.job.number=$nJobNumber -Dsf.spec.job.drive=$sDriveLetter: $sTagsArg $sNoPublishOpt $sJobRootDirArg $sHlmDefineOpt $sVariantArg $sSBSConfigArg"; +my $sBuildallCmd = "hlm sf-build-all -Dsf.project.type=package $sSubProjArg -Dsf.spec.job.number=$nJobNumber -Dsf.spec.job.drive=$sDriveLetter: $sTagsArg $sNoPublishOpt $sJobRootDirArg $sHlmDefineOpt $sVariantArg $sSourcesRevisionArg $sSBSConfigArg"; print("$sBuildallCmd\n"); system($sBuildallCmd);