From 96399d44ad75b2ee2e36b14d1e0ac773652e80c1 Mon Sep 17 00:00:00 2001 From: Christophe Rhodes Date: Sat, 6 Dec 2003 16:11:32 +0000 Subject: [PATCH] 0.8.6.31: Grovel errnos rather than (wrongly, for *BSD) hardcoding them. --- src/code/unix.lisp | 8 -------- tools-for-build/grovel-headers.c | 11 +++++++++++ version.lisp-expr | 2 +- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/code/unix.lisp b/src/code/unix.lisp index a752549..db787af 100644 --- a/src/code/unix.lisp +++ b/src/code/unix.lisp @@ -782,13 +782,6 @@ previous timer after the body has finished executing" (progn ,@body)))))) - -(defconstant ENOENT 2) ; Unix error code, "No such file or directory" -(defconstant EINTR 4) ; Unix error code, "Interrupted system call" -(defconstant EIO 5) ; Unix error code, "I/O error" -(defconstant EEXIST 17) ; Unix error code, "File exists" -(defconstant ESPIPE 29) ; Unix error code, "Illegal seek" -(defconstant EWOULDBLOCK 11) ; Unix error code, "Operation would block" ;;; FIXME: Many Unix error code definitions were deleted from the old ;;; CMU CL source code here, but not in the exports of SB-UNIX. I ;;; (WHN) hope that someday I'll figure out an automatic way to detect @@ -796,7 +789,6 @@ previous timer after the body has finished executing" ;;; enough of them all in one place here that they should probably be ;;; removed by hand. - ;;;; support routines for dealing with Unix pathnames (defun unix-file-kind (name &optional check-for-links) diff --git a/tools-for-build/grovel-headers.c b/tools-for-build/grovel-headers.c index facc3f8..ff81d11 100644 --- a/tools-for-build/grovel-headers.c +++ b/tools-for-build/grovel-headers.c @@ -28,6 +28,7 @@ #include #include #include +#include #include "genesis/config.h" @@ -41,6 +42,7 @@ defconstant(char* lisp_name, long unix_number) lisp_name, unix_number, unix_number); } +#define DEFERRNO(name) defconstant(#name, name) #define DEFSIGNAL(name) defconstant(#name, name) int @@ -104,6 +106,15 @@ main(int argc, char *argv[]) defconstant("s-ifsock", S_IFSOCK); printf("\n"); + printf(";;; error numbers\n"); + DEFERRNO(ENOENT); + DEFERRNO(EINTR); + DEFERRNO(EIO); + DEFERRNO(EEXIST); + DEFERRNO(ESPIPE); + DEFERRNO(EWOULDBLOCK); + printf("\n"); + printf(";;; for wait3(2) in run-program.lisp\n"); defconstant("wnohang", WNOHANG); defconstant("wuntraced", WUNTRACED); diff --git a/version.lisp-expr b/version.lisp-expr index 565319a..5af4ef9 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.6.30" +"0.8.6.31" -- 1.7.10.4