clone_packages/clone_all_packages.pl
changeset 38 a1155a089aba
parent 37 5fb0617e4e77
child 39 759027e1c6b3
equal deleted inserted replaced
37:5fb0617e4e77 38:a1155a089aba
    79 my $do_nothing = 0; # print the hg commands, don't actually do them
    79 my $do_nothing = 0; # print the hg commands, don't actually do them
    80 my $help = 0;
    80 my $help = 0;
    81 my $exec = 0;
    81 my $exec = 0;
    82 my $filter = "";
    82 my $filter = "";
    83 
    83 
       
    84 my $sf_pkg_list_file = "sf_mcl_packages.txt";
       
    85 my $sftools_pkg_list_file = "sftools_mcl_packages.txt";
       
    86 my $other_pkg_list_file = "other_packages.txt";
       
    87 
    84 if (!GetOptions(
    88 if (!GetOptions(
    85     "u|username=s" => \$username,
    89     "u|username=s" => \$username,
    86     "p|password=s" => \$password,
    90     "p|password=s" => \$password,
    87     "m|mirror" => \$mirror, 
    91     "m|mirror" => \$mirror, 
    88     "r|retries=i" => \$retries,
    92     "r|retries=i" => \$retries,
    98   
   102   
    99 Usage("Too many arguments") if (scalar @ARGV > 0 && !$exec);
   103 Usage("Too many arguments") if (scalar @ARGV > 0 && !$exec);
   100 Usage("Too few arguments for -exec") if (scalar @ARGV == 0 && $exec);
   104 Usage("Too few arguments for -exec") if (scalar @ARGV == 0 && $exec);
   101 Usage("") if ($help);
   105 Usage("") if ($help);
   102 
   106 
       
   107 open  SF_PKG_LIST, "<$sf_pkg_list_file" or die "Can't open $sf_pkg_list_file\n";
       
   108 open  SFTOOLS_PKG_LIST, "<$sftools_pkg_list_file" or die "Can't open $sftools_pkg_list_file\n";
       
   109 open  OTHER_PKG_LIST, "<$other_pkg_list_file" or die "Can't open $other_pkg_list_file\n";
       
   110 
       
   111 
   103 # Important: This script uses http access to the repositories, so
   112 # Important: This script uses http access to the repositories, so
   104 # the username and password will be stored as cleartext in the
   113 # the username and password will be stored as cleartext in the
   105 # .hg/hgrc file in each repository.
   114 # .hg/hgrc file in each repository.
   106 
   115 
   107 my $needs_id = 1; # assumed necessary for clone/pull
   116 my $needs_id = 1; # assumed necessary for clone/pull
   132   print "Password: ";
   141   print "Password: ";
   133   $password = <STDIN>;
   142   $password = <STDIN>;
   134   chomp $password;
   143   chomp $password;
   135   }
   144   }
   136 
   145 
   137 my @sf_packages = (
   146 my @sf_packages;
   138 "sfl/MCL/sf/adaptation/stubs",
   147 foreach my $pkg (<SF_PKG_LIST>)
   139 "sfl/MCL/sf/app/camera",
   148 {
   140 "sfl/MCL/sf/app/commonemail",
   149 	if ($pkg =~ s#^https://[^/]+/##)
   141 "sfl/MCL/sf/app/conntools",
   150 	{
   142 "sfl/MCL/sf/app/contacts",
   151 		chomp($pkg);
   143 "sfl/MCL/sf/app/contentcontrol",
   152 		push @sf_packages, $pkg;
   144 "sfl/MCL/sf/app/conversations",
   153 	}
   145 "sfl/MCL/sf/app/devicecontrol",
   154 }
   146 "sfl/MCL/sf/app/dictionary",
   155 
   147 "sfl/MCL/sf/app/files",
   156 my @sftools_packages;
   148 "sfl/MCL/sf/app/gallery",
   157 foreach my $pkg (<SFTOOLS_PKG_LIST>)
   149 "sfl/MCL/sf/app/graphicsuis",
   158 {
   150 "sfl/MCL/sf/app/helps",
   159 	if ($pkg =~ s#^https://[^/]+/##)
   151 "sfl/MCL/sf/app/homescreen",
   160 	{
   152 "sfl/MCL/sf/app/im",
   161 		chomp($pkg);
   153 "sfl/MCL/sf/app/imgeditor",
   162 		push @sftools_packages, $pkg;
   154 "sfl/MCL/sf/app/imgvieweruis",
   163 	}
   155 "sfl/MCL/sf/app/iptelephony",
   164 }
   156 "sfl/MCL/sf/app/java",
   165 
   157 "sfl/MCL/sf/app/location",
   166 my @other_repos;
   158 "sfl/MCL/sf/app/messaging",
   167 foreach my $pkg (<OTHER_PKG_LIST>)
   159 "sfl/MCL/sf/app/mmsharinguis",
   168 {
   160 "sfl/MCL/sf/app/musicplayer",
   169 	if ($pkg =~ s#^https://[^/]+/##)
   161 "sfl/MCL/sf/app/organizer",
   170 	{
   162 "sfl/MCL/sf/app/phone",
   171 		chomp($pkg);
   163 "sfl/MCL/sf/app/photos",
   172 		push @other_repos, $pkg;
   164 "sfl/MCL/sf/app/poc",
   173 	}
   165 "sfl/MCL/sf/app/printing",
   174 }
   166 "sfl/MCL/sf/app/profile",
   175 
   167 "sfl/MCL/sf/app/radio",
       
   168 "sfl/MCL/sf/app/screensaver",
       
   169 "sfl/MCL/sf/app/settingsuis",
       
   170 "sfl/MCL/sf/app/speechsrv",
       
   171 "sfl/MCL/sf/app/techview",
       
   172 # "sfl/MCL/sf/app/test",  - removed in 7 May 09 delivery
       
   173 "sfl/MCL/sf/app/utils",
       
   174 "sfl/MCL/sf/app/videocenter",
       
   175 "sfl/MCL/sf/app/videoeditor",
       
   176 "sfl/MCL/sf/app/videoplayer",
       
   177 "sfl/MCL/sf/app/videotelephony",
       
   178 "sfl/MCL/sf/app/voicerec",
       
   179   "oss/MCL/sf/app/webuis",
       
   180 "sfl/MCL/sf/mw/accesssec",
       
   181 "sfl/MCL/sf/mw/appinstall",
       
   182 "sfl/MCL/sf/mw/appsupport",
       
   183 "sfl/MCL/sf/mw/camerasrv",
       
   184 "sfl/MCL/sf/mw/classicui",
       
   185 "sfl/MCL/sf/mw/dlnasrv",
       
   186 "sfl/MCL/sf/mw/drm",
       
   187 "sfl/MCL/sf/mw/hapticsservices",
       
   188 "sfl/MCL/sf/mw/helix",
       
   189 "sfl/MCL/sf/mw/homescreensrv",
       
   190 "sfl/MCL/sf/mw/imghandling",
       
   191 "sfl/MCL/sf/mw/imsrv",
       
   192 "sfl/MCL/sf/mw/inputmethods",
       
   193 "sfl/MCL/sf/mw/ipappprotocols",
       
   194 "sfl/MCL/sf/mw/ipappsrv",
       
   195 "sfl/MCL/sf/mw/ipconnmgmt",
       
   196 "sfl/MCL/sf/mw/legacypresence",
       
   197 "sfl/MCL/sf/mw/locationsrv",
       
   198 "sfl/MCL/sf/mw/mds",
       
   199 "sfl/MCL/sf/mw/messagingmw",
       
   200 "sfl/MCL/sf/mw/metadatasrv",
       
   201 "sfl/MCL/sf/mw/mmappfw",
       
   202 "sfl/MCL/sf/mw/mmmw",
       
   203 "sfl/MCL/sf/mw/mmuifw",
       
   204 # "sfl/MCL/sf/mw/mobiletv", - empty package abandoned
       
   205 "sfl/MCL/sf/mw/netprotocols",
       
   206 "sfl/MCL/sf/mw/networkingdm",
       
   207 "sfl/MCL/sf/mw/opensrv",
       
   208 "sfl/MCL/sf/mw/phonesrv",
       
   209 "sfl/MCL/sf/mw/remoteconn",
       
   210 "sfl/MCL/sf/mw/remotemgmt",
       
   211 "sfl/MCL/sf/mw/remotestorage",
       
   212 "sfl/MCL/sf/mw/securitysrv",
       
   213   "oss/MCL/sf/mw/serviceapi",
       
   214   "oss/MCL/sf/mw/serviceapifw",
       
   215 "sfl/MCL/sf/mw/shortlinkconn",
       
   216 "sfl/MCL/sf/mw/svgt",
       
   217 "sfl/MCL/sf/mw/uiaccelerator",
       
   218 "sfl/MCL/sf/mw/uiresources",
       
   219 "sfl/MCL/sf/mw/uitools",
       
   220 "sfl/MCL/sf/mw/videoutils",
       
   221 "sfl/MCL/sf/mw/vpnclient",
       
   222   "oss/MCL/sf/mw/web",
       
   223 "sfl/MCL/sf/mw/websrv",
       
   224 "sfl/MCL/sf/mw/wirelessacc",
       
   225 "sfl/MCL/sf/os/boardsupport",
       
   226 "sfl/MCL/sf/os/buildtools",
       
   227 "sfl/MCL/sf/os/cellularsrv",
       
   228 "sfl/MCL/sf/os/commsfw",
       
   229 "sfl/MCL/sf/os/deviceplatformrelease",
       
   230 "sfl/MCL/sf/os/devicesrv",
       
   231 "sfl/MCL/sf/os/graphics",
       
   232 "sfl/MCL/sf/os/imagingext",
       
   233 "sfl/MCL/sf/os/kernelhwsrv",
       
   234 "sfl/MCL/sf/os/lbs",
       
   235 # "sfl/MCL/sf/os/misc",  - removed in 7 May 09 delivery
       
   236 "sfl/MCL/sf/os/mm",
       
   237 "sfl/MCL/sf/os/networkingsrv",
       
   238 "sfl/MCL/sf/os/ossrv",
       
   239 "sfl/MCL/sf/os/persistentdata",
       
   240   "oss/MCL/sf/os/security",  # moved from SFL to EPL, 8th July 09
       
   241 "sfl/MCL/sf/os/shortlinksrv",
       
   242 "sfl/MCL/sf/os/textandloc",
       
   243 "sfl/MCL/sf/os/unref",
       
   244 "sfl/MCL/sf/os/wlan",
       
   245 "sfl/MCL/sf/os/xmlsrv",
       
   246 "sfl/MCL/sf/ostools/osrndtools",
       
   247 "sfl/MCL/sf/tools/build_s60",
       
   248 "sfl/MCL/sf/tools/buildplatforms",
       
   249 "sfl/MCL/sf/tools/homescreentools",
       
   250 "sfl/MCL/sf/tools/makefile_templates",
       
   251 "sfl/MCL/sf/tools/platformtools",
       
   252 "sfl/MCL/sf/tools/rndtools",
       
   253 "sfl/MCL/sf/tools/swconfigtools",
       
   254 );
       
   255 
       
   256 my @sftools_packages = (
       
   257 "sfl/MCL/sftools/ana/compatanaapps",
       
   258 "sfl/MCL/sftools/ana/compatanamdw",
       
   259 "sfl/MCL/sftools/ana/dynaanaapps",
       
   260 "sfl/MCL/sftools/ana/dynaanactrlandcptr",
       
   261 "sfl/MCL/sftools/ana/dynaanamdw/analysistools",
       
   262 "sfl/MCL/sftools/ana/dynaanamdw/crashmdw",
       
   263 "sfl/MCL/sftools/ana/staticanaapps",
       
   264 "sfl/MCL/sftools/ana/staticanamdw",
       
   265 "sfl/MCL/sftools/ana/testcreationandmgmt",
       
   266 "sfl/MCL/sftools/ana/testexec",
       
   267 "sfl/MCL/sftools/ana/testfw",
       
   268 # "sfl/MCL/sftools/depl/sdkcreationapps",  - removed in 7 May 09 delivery
       
   269 "sfl/MCL/sftools/depl/sdkcreationmdw/packaging",
       
   270 # "sfl/MCL/sftools/depl/sdkcreationmdw/sdkbuild",  - removed in 7 May 09 delivery
       
   271 # "sfl/MCL/sftools/depl/sdkcreationmdw/sdkdelivery",  - removed in 7 May 09 delivery
       
   272 # "sfl/MCL/sftools/depl/sdkcreationmdw/sdktest",  - removed in 7 May 09 delivery
       
   273 "sfl/MCL/sftools/depl/swconfigapps/configtools",
       
   274 "sfl/MCL/sftools/depl/swconfigapps/swmgnttoolsguides",
       
   275 "sfl/MCL/sftools/depl/swconfigapps/sysmodeltools",
       
   276 "sfl/MCL/sftools/depl/swconfigmdw",
       
   277 # "sfl/MCL/sftools/depl/sysdocapps",  - removed in 7 May 09 delivery
       
   278 # "sfl/MCL/sftools/depl/sysdocmdw",  - removed in 7 May 09 delivery
       
   279 # "sfl/MCL/sftools/depl/toolsplatrelease",  - removed in 7 May 09 delivery
       
   280 "sfl/MCL/sftools/dev/build",
       
   281 "sfl/MCL/sftools/dev/dbgsrvsmdw",
       
   282 "sfl/MCL/sftools/dev/devicedbgsrvs",
       
   283   "oss/MCL/sftools/dev/eclipseenv/buildlayout34",
       
   284   "oss/MCL/sftools/dev/eclipseenv/eclipse",
       
   285   "oss/MCL/sftools/dev/hostenv/compilationtoolchains",
       
   286   "oss/MCL/sftools/dev/hostenv/cpptoolsplat",
       
   287   "oss/MCL/sftools/dev/hostenv/dist",
       
   288   "oss/MCL/sftools/dev/hostenv/javatoolsplat",
       
   289   "oss/MCL/sftools/dev/hostenv/makeng",
       
   290   "oss/MCL/sftools/dev/hostenv/pythontoolsplat",
       
   291   "oss/MCL/sftools/dev/ide/carbidecpp",
       
   292 "sfl/MCL/sftools/dev/ide/carbidecppplugins",
       
   293 "sfl/MCL/sftools/dev/iss",
       
   294 "sfl/MCL/sftools/dev/ui",
       
   295 );
       
   296 
       
   297 my @other_repos = (
       
   298 # Foundation build framework
       
   299 "oss/FCL/interim/fbf/bootstrap",
       
   300 "oss/FCL/interim/fbf/configs/default",
       
   301 "oss/FCL/interim/fbf/configs/pkgbuild",
       
   302 "oss/FCL/interim/fbf/projects/packages/serviceapi",
       
   303 "oss/FCL/interim/fbf/projects/packages/serviceapifw",
       
   304 "oss/FCL/interim/fbf/projects/packages/web",
       
   305 "oss/FCL/interim/fbf/projects/packages/webuis",
       
   306 "oss/FCL/interim/fbf/projects/platforms",
       
   307 # Utilities
       
   308 "oss/MCL/utilities",
       
   309 # QEMU
       
   310 "oss/FCL/interim/QEMU",
       
   311 );
       
   312 
   176 
   313 my %export_control_special_case = (
   177 my %export_control_special_case = (
   314   "oss/MCL/sf/os/security" => 1,
   178   "oss/MCL/sf/os/security" => 1,
   315   "oss/FCL/sf/os/security" => 1,
   179   "oss/FCL/sf/os/security" => 1,
   316   );
   180   );