~ chicken-core (chicken-5) b86f80d9455602a576461382ef55c1bcdf8b7718


commit b86f80d9455602a576461382ef55c1bcdf8b7718
Author:     felix <felix@y.(none)>
AuthorDate: Wed Mar 31 23:44:50 2010 +0200
Commit:     felix <felix@y.(none)>
CommitDate: Wed Mar 31 23:44:50 2010 +0200

    chicken-install -test only applies to explicitly installed extension; not dependecnies

diff --git a/chicken-install.scm b/chicken-install.scm
index 54b56887..ecfd1c8b 100644
--- a/chicken-install.scm
+++ b/chicken-install.scm
@@ -375,33 +375,35 @@
 	(pp dag)
 	(for-each
 	 (lambda (e+d+v i)
-	   (when (and (not depinstall-ok)
-		      (= i 1)
-		      (> num 1))
-	     (when (and *no-install*
-			(not (yes-or-no?
-			      (string-append
-			       "You specified `-no-install', but this extension has dependencies"
-			       " that are required for building. Do you still want to install them?"))))
-	       (print "aborting installation.")
-	       (cleanup)
-	       (exit 1)))
-	   (print "installing " (car e+d+v) #\: (caddr e+d+v) " ...")
-	   (print "changing current directory to " (cadr e+d+v))
-	   (parameterize ((current-directory (cadr e+d+v)))
-	     (let ((cmd (make-install-command e+d+v (< i num))))
-	       (print "  " cmd)
-	       ($system cmd))
-	     (when (and *run-tests*
-			(file-exists? "tests")
-			(directory? "tests")
-			(file-exists? "tests/run.scm") )
-	       (set! *running-test* #t)
-	       (current-directory "tests")
-	       (command "~a -s run.scm ~a" *csi* (car e+d+v))
-	       (set! *running-test* #f))))
+	   (let ((isdep (> i 1)))
+	     (when (and (not depinstall-ok)
+			isdep
+			(= i num))
+	       (when (and *no-install*
+			   (not (yes-or-no?
+				 (string-append
+				  "You specified `-no-install', but this extension has dependencies"
+				  " that are required for building. Do you still want to install them?"))))
+		 (print "aborting installation.")
+		 (cleanup)
+		 (exit 1)))
+	     (print "installing " (car e+d+v) #\: (caddr e+d+v) " ...")
+	     (print "changing current directory to " (cadr e+d+v))
+	     (parameterize ((current-directory (cadr e+d+v)))
+	       (let ((cmd (make-install-command e+d+v (> i 1))))
+		 (print "  " cmd)
+		 ($system cmd))
+	       (when (and *run-tests*
+			  (not isdep)
+			  (file-exists? "tests")
+			  (directory? "tests")
+			  (file-exists? "tests/run.scm") )
+		 (set! *running-test* #t)
+		 (current-directory "tests")
+		 (command "~a -s run.scm ~a" *csi* (car e+d+v))
+		 (set! *running-test* #f)))))
 	 (map (cut assoc <> *eggs+dirs+vers*) dag)
-	 (iota num 1)))))
+	 (iota num num -1)))))
 
   (define (cleanup)
     (unless *keep*
Trap