From 6cfb8d4cfbe54b2951e36a4adc1d1c20f5249f2e Mon Sep 17 00:00:00 2001 From: "Jan (janneke) Nieuwenhuizen" Date: Tue, 29 Dec 2020 16:50:22 +0100 Subject: [PATCH] HACK resurrect configure. --- configure | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/configure b/configure index b6e72c98..9779880e 100755 --- a/configure +++ b/configure @@ -86,10 +86,10 @@ MES_ARENA=100000000 exec ${SCHEME-guile} -L . --no-auto-compile -e '(configure)' (define (verbose string . rest) (if %verbose? (apply stderr (cons string rest)))) -(define (gulp-pipe* . command) +(define (gulp-pipe command) (let* ((err (current-error-port)) (foo (set-current-error-port (open-output-file ".error"))) - (port (apply open-pipe* OPEN_READ command)) + (port (open-pipe command "r")) (output (read-string port)) (status (close-pipe port)) (error (with-input-from-file ".error" read-string))) @@ -100,6 +100,9 @@ MES_ARENA=100000000 exec ${SCHEME-guile} -L . --no-auto-compile -e '(configure)' (if (not (zero? status)) "" (string-trim-right (string-append output error))))) +(define (gulp-pipe* . command) + (gulp-pipe (string-join command))) + (define (tuple< a b) (cond ((and (null? a) (null? b)) #t) @@ -195,20 +198,17 @@ MES_ARENA=100000000 exec ${SCHEME-guile} -L . --no-auto-compile -e '(configure)' (version-option (dependency-version-option dependency)) (commands (dependency-commands dependency))) (let loop ((commands commands)) - (if (null? commands) dependency + (if (or (null? commands) + (not (car commands))) dependency (let ((command (car commands))) - (stdout "checking for ~a~a... " name + (stdout "checking for ~a~a... " (if (string-index command #\space) name command) (if (null? expected) "" (format #f " [~a]" (version->string expected)))) - (let* ((output (gulp-pipe* command version-option)) - ;;(foo (stderr "output=~s\n" output)) + (let* ((output (gulp-pipe (string-append command " " (if version-option version-option "")))) (actual (string->version output)) - ;;(foo (stderr "actual=~s\n" actual)) - ;;(foo (stderr "expected=~s\n" expected)) (pass? (and actual (tuple< expected actual))) - ;;(foo (stderr "PASS?~s\n" pass?)) (dependency (set-field dependency (dependency-version-found) actual))) - (stdout "~a ~a\n" (if pass? (if (pair? actual) "" " yes") + (stdout "~a ~a\n" (if pass? (if (pair? actual) "" "yes") (if actual " no, found" "no")) (or (version->string actual) "")) (if pass? (let ((file-name (or (PATH-search-path command)