Link with hpc even if GhcWithInterpreter is not set
[ghc-hetmet.git] / darcs-all
index 70cf165..7743e8a 100644 (file)
--- a/darcs-all
+++ b/darcs-all
@@ -14,11 +14,16 @@ my $defaultrepo_lib;
 if ($defaultrepo =~ /:/) {
     # HTTP or SSH
     $defaultrepo_base = $defaultrepo;
-    $defaultrepo_base =~ s#/ghc$##;
+    $defaultrepo_base =~ s#/[^/]+/?$##;
     $defaultrepo_lib = "$defaultrepo_base/packages";
 }
 elsif ($defaultrepo =~ /^\//) {
-    # Local filesystem (assumes a checked-out tree):
+    # 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):
     $defaultrepo_base = $defaultrepo;
     $defaultrepo_lib = "$defaultrepo/libraries";
 }
@@ -124,6 +129,8 @@ sub main {
 
     while ($#_ ne -1) {
         my $arg = shift;
+        # We handle -q here as well as lower down as we need to skip over it
+        # if it comes before the darcs command
         if ($arg eq "-q") {
             $verbose = 0;
         }
@@ -138,6 +145,9 @@ sub main {
         }
         else {
             unshift @_, $arg;
+            if (grep /^-q$/, @_) {
+                $verbose = 0;
+            }
             last;
         }
     }