X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Frun-tests.lisp;h=8cb583f67656bda3ccd317d03711769030b60b07;hb=4ce92c253dbf6a5275ef3cafc193add284bc9795;hp=67ba2746f35775a515b3f4922cf8c4da59d8ad60;hpb=374667fd8a38e79869e63d56bacde7ad98a40852;p=sbcl.git diff --git a/tests/run-tests.lisp b/tests/run-tests.lisp index 67ba274..8cb583f 100644 --- a/tests/run-tests.lisp +++ b/tests/run-tests.lisp @@ -81,18 +81,21 @@ ;; We used to fork() for POSIX platforms, and use this for Windows. ;; However, it seems better to use the same solution everywhere. (process-exit-code - (sb-ext:run-program - (first *POSIX-ARGV*) - (append - (list "--core" SB-INT:*CORE-STRING* - "--noinform" - "--no-sysinit" - "--no-userinit") - (loop for form in (append load-forms forms) - collect "--eval" - collect (write-to-string form))) - :output sb-sys:*stdout* - :input sb-sys:*stdin*))) + (#-win32 with-open-file #-win32 (devnull "/dev/null") #+win32 progn + (sb-ext:run-program + (first *POSIX-ARGV*) + (append + (list "--core" SB-INT:*CORE-STRING* + "--noinform" + "--no-sysinit" + "--no-userinit" + "--noprint" + "--disable-debugger") + (loop for form in (append load-forms forms) + collect "--eval" + collect (write-to-string form))) + :output sb-sys:*stdout* + :input #-win32 devnull #+win32 sb-sys:*stdin*)))) (defun run-impure-in-child-sbcl (test-file test-code) (run-in-child-sbcl @@ -185,6 +188,7 @@ ;; What? No SB-POSIX:EXECV? `(let ((process (sb-ext:run-program "/bin/sh" (list (native-namestring ,file)) + :environment (test-util::test-env) :output *error-output*))) (sb-ext:quit :unix-status (process-exit-code process))))