diff --git a/test-suite/tests/00-socket.test b/test-suite/tests/00-socket.test index d3a4f9fbd..faf029132 100644 --- a/test-suite/tests/00-socket.test +++ b/test-suite/tests/00-socket.test @@ -29,6 +29,10 @@ (when (string-ci=? "darwin" (utsname:sysname (uname))) (throw 'untested))) +(define (skip-on-freebsd) + (when (string-ci=? "FreeBSD" (utsname:sysname (uname))) + (throw 'untested))) + (define (skip-on-cygwin-msys) (when (or (string-contains %host-type "cygwin") (string-contains %host-type "msys")) @@ -348,6 +352,7 @@ (pass-if "bind abstract" (skip-on-darwin) (skip-on-cygwin-msys) + (skip-on-freebsd) (catch 'system-error (lambda () (bind server-socket AF_UNIX path) diff --git a/test-suite/tests/ports.test b/test-suite/tests/ports.test index 82881aa28..a29d5652c 100644 --- a/test-suite/tests/ports.test +++ b/test-suite/tests/ports.test @@ -43,6 +43,10 @@ (when (string-ci=? "darwin" (utsname:sysname (uname))) (throw 'untested))) +(define (skip-on-freebsd) + (when (string-ci=? "FreeBSD" (utsname:sysname (uname))) + (throw 'untested))) + ;;;; Some general utilities for testing ports. @@ -220,6 +224,7 @@ (pass-if-equal "SEEK_DATA while in hole" 4096 (skip-on-darwin) + (skip-on-freebsd) (if (defined? 'SEEK_DATA) (call-with-input-file file (lambda (port) @@ -233,6 +238,7 @@ (pass-if-equal "SEEK_HOLE while in hole" 10 (skip-on-darwin) + (skip-on-freebsd) (if (defined? 'SEEK_HOLE) (call-with-input-file file (lambda (port) diff --git a/test-suite/tests/posix.test b/test-suite/tests/posix.test index 7b7590b9b..aa8a0bf11 100644 --- a/test-suite/tests/posix.test +++ b/test-suite/tests/posix.test @@ -26,6 +26,10 @@ (when (string-ci=? "darwin" (utsname:sysname (uname))) (throw 'untested))) +(define (skip-on-freebsd) + (when (string-ci=? "FreeBSD" (utsname:sysname (uname))) + (throw 'untested))) + ;; FIXME: The following exec tests are disabled since on an i386 debian with ;; glibc 2.3.2 they seem to interact badly with threads.test, the latter ;; dies with signal 32 (one of the SIGRTs). Don't know how or why, or who's @@ -383,6 +387,7 @@ (pass-if-equal "https://bugs.gnu.org/63024" 0 + (skip-on-freebsd) (if (file-exists? "/proc/self/fd/0") ;on GNU/Linux? (parameterize ((current-output-port (%make-void-port "w0"))) (system* "guile" "-c" @@ -434,7 +439,7 @@ (let ((str (get-string-all (car c+d)))) (close-port (car c+d)) (waitpid pid) - str))) + (string-trim str)))) (pass-if-equal "env with #:environment and #:output" "GNU=guile\n" @@ -485,6 +490,7 @@ ;; write such test. However due to posix_spawnp being buggy on macOS it is ;; always replaced, so whatever. (skip-on-darwin) + (skip-on-freebsd) (catch 'system-error (lambda () (spawn "this-does-not-exist" '("nope")