mirror of
git://git.code.sf.net/p/sbcl/sbcl
synced 2026-09-10 07:26:40 -04:00
win32: get parallel-exec.sh working
The whole suite finishes in under 2 minutes on a 4 CPU VirtualBox on a macbook. Some tests fail due to incorrect tempdir isolation.
This commit is contained in:
parent
1e4a52cfb7
commit
ecf1c0c32f
15
tests/genmakefile.lisp
Normal file
15
tests/genmakefile.lisp
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
;;;
|
||||
;;; invocation: "$SBCL --script genmakefile.lisp >Makefile"
|
||||
;;;
|
||||
(let ((files (append (directory "*.test.sh")
|
||||
(directory "*.*pure*.lisp"))))
|
||||
(format t "~%all:")
|
||||
(dolist (file (mapcar 'pathname-name files))
|
||||
(format t " \\~% $(LOGDIR)/~a.log" file))
|
||||
(terpri)
|
||||
(terpri)
|
||||
(dolist (file files)
|
||||
(let ((in (format nil "~a.~a" (pathname-name file) (pathname-type file)))
|
||||
(out (format nil "$(LOGDIR)/~a.log" (pathname-name file))))
|
||||
(format t "~a: ~a~%~a./run-tests.sh ~a >~a 2>&1~%"
|
||||
out in #\tab in out))))
|
||||
|
|
@ -5,6 +5,20 @@ echo ==== Writing logs to $logdir ====
|
|||
junkdir=${SBCL_PAREXEC_TMP:-/tmp}/junk
|
||||
mkdir -p $junkdir $logdir
|
||||
|
||||
case `uname` in
|
||||
CYGWIN* | WindowsNT | MINGW* | MSYS*)
|
||||
if [ $# -ne 1 ]
|
||||
then
|
||||
echo $0: Need arg
|
||||
exit 1
|
||||
fi
|
||||
echo ";; Using -j$1"
|
||||
echo "LOGDIR=$logdir" >$logdir/Makefile
|
||||
../run-sbcl.sh --script genmakefile.lisp >>$logdir/Makefile
|
||||
exec $GNUMAKE -j $1 -f $logdir/Makefile
|
||||
;;
|
||||
esac
|
||||
|
||||
export TEST_DIRECTORY SBCL_HOME
|
||||
TEST_DIRECTORY=$junkdir SBCL_HOME=../obj/sbcl-home exec ../src/runtime/sbcl \
|
||||
--noinform --core ../output/sbcl.core \
|
||||
|
|
|
|||
Loading…
Reference in a new issue