use strict;
-my @top_dirs = ("nofib", "testsuite");
+my @top_dirs = ("nofib", "testsuite", "utils/hsc2hs");
# Figure out where to get the other repositories from,
# based on where this GHC repo came from.
chomp $defaultrepo;
my $defaultrepo_base;
my $defaultrepo_lib;
+my $hsc2hs_repo_loc;
if ($defaultrepo =~ /^...*:/) {
# HTTP or SSH
$defaultrepo_base = $defaultrepo;
$defaultrepo_base =~ s#/[^/]+/?$##;
$defaultrepo_lib = "$defaultrepo_base/packages";
+ $hsc2hs_repo_loc = $defaultrepo_base;
}
-elsif ($defaultrepo =~ /^\//) {
- # Local filesystem, absolute path (assumes a checked-out tree):
- $defaultrepo_base = $defaultrepo;
- $defaultrepo_lib = "$defaultrepo/libraries";
-}
-elsif ($defaultrepo =~ /^..\//) {
- # Local filesystem, relative path (assumes a checked-out tree):
+elsif ($defaultrepo =~ /^(\.\.)?\//) {
+ # Local filesystem, either absolute or relative path
+ # (assumes a checked-out tree):
$defaultrepo_base = $defaultrepo;
$defaultrepo_lib = "$defaultrepo/libraries";
+ $hsc2hs_repo_loc = "$defaultrepo_base/utils";
}
else {
die "Couldn't work out defaultrepo";
chomp $path;
if ($path =~ m#/(.*)/#) {
my $pkg = $1;
- # bootstrapping.* are just copies of other repos; we don't
- # update them directly.
- if ($pkg !~ /bootstrapping/) {
- darcs (@_, "--repodir", "libraries/$pkg");
- }
+ darcs (@_, "--repodir", "libraries/$pkg");
}
else {
die "that pattern can't fail!";
darcsgetpackage($nofib, $r_flags, $defaultrepo_base, "nofib");
darcsgetpackage($testsuite, $r_flags, $defaultrepo_base, "testsuite");
+ chdir "utils";
+ darcsgetpackage(1 , $r_flags, $hsc2hs_repo_loc, "hsc2hs");
+ chdir "..";
+
chdir "libraries";
my @packages;