From: Christophe Rhodes Date: Mon, 15 Mar 2004 15:24:52 +0000 (+0000) Subject: 0.8.8.25: X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=286cb407fcf618572b874ace57c119fe284d14c5;p=sbcl.git 0.8.8.25: More SB-POSIX test fixes ... allow building as root again, since it seems that's a desired feature ... test for not having EUID of 0 in EACCES posix tests instead (this will probably annoy antifuchs, but I forgot to commit version.lisp-expr for the last fix. Since this is logically a simple continuation, I haven't bothered to increment it again) --- diff --git a/NEWS b/NEWS index 1183175..0b1ee32 100644 --- a/NEWS +++ b/NEWS @@ -2320,11 +2320,6 @@ changes in sbcl-0.8.9 relative to sbcl-0.8.8: should matter to you only if you rebind the printer control variables and then find you want different bindings in the debugger than in the ordinary execution of your program.) - * minor incompatible change: the system no longer allows itself to - be built as root. This is primarily to allow the SB-POSIX contrib - module's test suite to assume that it is being run as an ordinary - user, with the attendant filesystem permissions semantics that - entails. * The runtime build system has been tweaked to support building (on SPARC/SunOS) using a C compiler which invokes Sun's own assembler and linker. (thanks to Nikodemus Siivola) diff --git a/contrib/sb-posix/posix-tests.lisp b/contrib/sb-posix/posix-tests.lisp index c304f7d..baadf8c 100644 --- a/contrib/sb-posix/posix-tests.lisp +++ b/contrib/sb-posix/posix-tests.lisp @@ -17,6 +17,14 @@ (defconstant +mode-rwx-all+ (logior sb-posix::s-irusr sb-posix::s-iwusr sb-posix::s-ixusr sb-posix::s-irgrp sb-posix::s-iwgrp sb-posix::s-ixgrp sb-posix::s-iroth sb-posix::s-iwoth sb-posix::s-ixoth))) + +(defmacro define-eacces-test (name form &rest values) + `(deftest ,name + (block ,name + (when (= (sb-posix:geteuid) 0) + (return-from ,name (values ,@values))) + ,form) + ,@values)) (deftest chdir.1 (sb-posix:chdir *test-directory*) @@ -95,7 +103,7 @@ (sb-posix:syscall-errno c))) #.sb-posix::eexist) -(deftest mkdir.error.3 +(define-eacces-test mkdir.error.3 (let* ((dir (merge-pathnames (make-pathname :directory '(:relative "mkdir.error.3")) *test-directory*)) @@ -166,7 +174,7 @@ (or (= errno sb-posix::eexist) (= errno sb-posix::enotempty)))))) t) -(deftest rmdir.error.5 +(define-eacces-test rmdir.error.5 (let* ((dir (merge-pathnames (make-pathname :directory '(:relative "rmdir.error.5")) *test-directory*)) @@ -233,7 +241,7 @@ (sb-posix:syscall-errno c))) #.sb-posix::enoent) -(deftest stat.error.2 +(define-eacces-test stat.error.2 (let* ((dir (merge-pathnames (make-pathname :directory '(:relative "stat.error.2")) *test-directory*)) diff --git a/make-config.sh b/make-config.sh index 7664551..ff693d1 100644 --- a/make-config.sh +++ b/make-config.sh @@ -18,9 +18,6 @@ echo //entering make-config.sh -echo //checking that we are not root -if [ `id -u` -eq 0 ] ; then echo 'Argh! we are (fake)root!'; exit 1; fi; - echo //ensuring the existence of output/ directory if [ ! -d output ] ; then mkdir output; fi diff --git a/version.lisp-expr b/version.lisp-expr index 93413af..150d4f7 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.8.8.24" +"0.8.8.25"