Fix sync-all get from a local working copy
authorJoachim Breitner <mail@joachim-breitner.de>
Thu, 26 Jun 2014 02:36:22 +0000 (19:36 -0700)
committerJoachim Breitner <mail@joachim-breitner.de>
Thu, 26 Jun 2014 02:48:36 +0000 (19:48 -0700)
sync-all

index 571586c..517d4ff 100755 (executable)
--- a/sync-all
+++ b/sync-all
@@ -566,14 +566,14 @@ sub gitInitSubmodules {
 
     my $submodulespaths = &readgit(".", "config", "--get-regexp", "^submodule[.].*[.]url");
     # if we came from github, change the urls appropriately
-    while ($submodulespaths =~ m!^(submodule.(?:libraries|utils)/[a-zA-Z0-9-]+.url) ($GITHUB)/ghc/packages/([a-zA-Z0-9-]+).git$!gm) {
+    while ($submodulespaths =~ m!^(submodule.(?:libraries/|utils/)?[a-zA-Z0-9-]+.url) ($GITHUB)/ghc/packages/([a-zA-Z0-9-]+).git$!gm) {
         &git(".", "config", $1, "$2/ghc/packages-$3");
     }
 
     # if we came from a local repository, grab our submodules from their
     # checkouts over there, if they exist.
     if ($repo_local) {
-        while ($submodulespaths =~ m!^(submodule.((?:libraries|utils)/[a-zA-Z0-9-]+).url) .*$!gm) {
+        while ($submodulespaths =~ m!^(submodule.((?:libraries/|utils/)?[a-zA-Z0-9-]+).url) .*$!gm) {
             if (-e "$repo_base/$2/.git") {
                 &git(".", "config", $1, "$repo_base/$2");
             }