
Raymond Toy pushed to branch issue-386-group-errno-syms at cmucl / cmucl Commits: 87efff14 by Raymond Toy at 2025-02-24T10:39:48-08:00 Add UNIX-ERRNO package and update for linux, darwin, solaris The new package UNIX-ERRNO contains all the errno symbols. We currently have distinct entries for linux, darwin, and solaris. All of these symbols have been removed from the UNIX package definition. However for backward compatibility we import all the external symbols from UNIX-ERRNO and re-export them from the UNIX package so that these symbols can still be accessed as external symbols in the UNIX package. - - - - - 1 changed file: - src/code/exports.lisp Changes: ===================================== src/code/exports.lisp ===================================== @@ -196,6 +196,336 @@ "MULTIPLY-BIGNUM-AND-FIXNUM" "MULTIPLY-BIGNUMS" "MULTIPLY-FIXNUMS" "NEGATE-BIGNUM" "SUBTRACT-BIGNUM")) +(defpackage "UNIX-ERRNO" + #+linux + (:export + "ESUCCESS" + "EPERM" + "ENOENT" + "ESRCH" + "EINTR" + "EIO" + "ENXIO" + "E2BIG" + "ENOEXEC" + "EBADF" + "ECHILD" + "EAGAIN" + "ENOMEM" + "EACCES" + "EFAULT" + "ENOTBLK" + "EBUSY" + "EEXIST" + "EXDEV" + "ENODEV" + "ENOTDIR" + "EISDIR" + "EINVAL" + "ENFILE" + "EMFILE" + "ENOTTY" + "ETXTBSY" + "EFBIG" + "ENOSPC" + "ESPIPE" + "EROFS" + "EMLINK" + "EPIPE" + "EDOM" + "ERANGE" + "EDEADLK" + "ENAMETOOLONG" + "ENOLCK" + "ENOSYS" + "ENOTEMPTY" + "ELOOP" + "EWOULDBLOCK" + "ENOMSG" + "EIDRM" + "ECHRNG" + "EL2NSYNC" + "EL3HLT" + "EL3RST" + "ELNRNG" + "EUNATCH" + "ENOCSI" + "EL2HLT" + "EBADE" + "EBADR" + "EXFULL" + "ENOANO" + "EBADRQC" + "EBADSLT" + "EDEADLOCK" + "EBFONT" + "ENOSTR" + "ENODATA" + "ETIME" + "ENOSR" + "ENONET" + "ENOPKG" + "EREMOTE" + "ENOLINK" + "EADV" + "ESRMNT" + "ECOMM" + "EPROTO" + "EMULTIHOP" + "EDOTDOT" + "EBADMSG" + "EOVERFLOW" + "ENOTUNIQ" + "EBADFD" + "EREMCHG" + "ELIBACC" + "ELIBBAD" + "ELIBSCN" + "ELIBMAX" + "ELIBEXEC" + "EILSEQ" + "ERESTART" + "ESTRPIPE" + "EUSERS" + "ENOTSOCK" + "EDESTADDRREQ" + "EMSGSIZE" + "EPROTOTYPE" + "ENOPROTOOPT" + "EPROTONOSUPPORT" + "ESOCKTNOSUPPORT" + "EOPNOTSUPP" + "EPFNOSUPPORT" + "EAFNOSUPPORT" + "EADDRINUSE" + "EADDRNOTAVAIL" + "ENETDOWN" + "ENETUNREACH" + "ENETRESET" + "ECONNABORTED" + "ECONNRESET" + "ENOBUFS" + "EISCONN" + "ENOTCONN" + "ESHUTDOWN" + "ETOOMANYREFS" + "ETIMEDOUT" + "ECONNREFUSED" + "EHOSTDOWN" + "EHOSTUNREACH" + "EALREADY" + "EINPROGRESS" + "ESTALE" + "EUCLEAN" + "ENOTNAM" + "ENAVAIL" + "EISNAM" + "EREMOTEIO" + "EDQUOT" + ) + #+(or bsd darwin) + (:export + "ESUCCESS" + "EPERM" + "ENOENT" + "ESRCH" + "EINTR" + "EIO" + "ENXIO" + "E2BIG" + "ENOEXEC" + "EBADF" + "ECHILD" + "EDEADLK" + "ENOMEM" + "EACCES" + "EFAULT" + "ENOTBLK" + "EBUSY" + "EEXIST" + "EXDEV" + "ENODEV" + "ENOTDIR" + "EISDIR" + "EINVAL" + "ENFILE" + "EMFILE" + "ENOTTY" + "ETXTBSY" + "EFBIG" + "ENOSPC" + "ESPIPE" + "EROFS" + "EMLINK" + "EPIPE" + "EDOM" + "ERANGE" + "EWOULDBLOCK" + "EAGAIN" + "EINPROGRESS" + "EALREADY" + "ENOTSOCK" + "EDESTADDRREQ" + "EMSGSIZE" + "EPROTOTYPE" + "ENOPROTOOPT" + "EPROTONOSUPPORT" + "ESOCKTNOSUPPORT" + "EOPNOTSUPP" + "EPFNOSUPPORT" + "EAFNOSUPPORT" + "EADDRINUSE" + "EADDRNOTAVAIL" + "ENETDOWN" + "ENETUNREACH" + "ENETRESET" + "ECONNABORTED" + "ECONNRESET" + "ENOBUFS" + "EISCONN" + "ENOTCONN" + "ESHUTDOWN" + "ETOOMANYREFS" + "ETIMEDOUT" + "ECONNREFUSED" + "ELOOP" + "ENAMETOOLONG" + "EHOSTDOWN" + "EHOSTUNREACH" + "ENOTEMPTY" + "EPROCLIM" + "EUSERS" + "EDQUOT" + "ELOCAL" + "EREMOTE" + "EVICEERR" + "EVICEOP" + ) + #+solaris + (:export + "ESUCCESS" + "EPERM" + "ENOENT" + "ESRCH" + "EINTR" + "EIO" + "ENXIO" + "E2BIG" + "ENOEXEC" + "EBADF" + "ECHILD" + "EAGAIN" + "ENOMEM" + "EACCES" + "EFAULT" + "ENOTBLK" + "EBUSY" + "EEXIST" + "EXDEV" + "ENODEV" + "ENOTDIR" + "EISDIR" + "EINVAL" + "ENFILE" + "EMFILE" + "ENOTTY" + "ETXTBSY" + "EFBIG" + "ENOSPC" + "ESPIPE" + "EROFS" + "EMLINK" + "EPIPE" + "EDOM" + "ERANGE" + "ENOMSG" + "EIDRM" + "ECHRNG" + "EL2NSYNC" + "EL3HLT" + "EL3RST" + "ELNRNG" + "EUNATCH" + "ENOCSI" + "EL2HLT" + "EDEADLK" + "ENOLCK" + "ECANCELED" + "ENOTSUP" + "EBADE" + "EBADR" + "EXFULL" + "ENOANO" + "EBADRQC" + "EBADSLT" + "EDEADLOCK" + "EBFONT" + "ENOSTR" + "ENODATA" + "ETIME" + "ENOSR" + "ENONET" + "ENOPKG" + "EREMOTE" + "ENOLINK" + "EADV" + "ESRMNT" + "ECOMM" + "EPROTO" + "EMULTIHOP" + "EBADMSG" + "ENAMETOOLONG" + "EOVERFLOW" + "ENOTUNIQ" + "EBADFD" + "EREMCHG" + "ELIBACC" + "ELIBBAD" + "ELIBSCN" + "ELIBMAX" + "ELIBEXEC" + "EILSEQ" + "ENOSYS" + "ELOOP" + "ERESTART" + "ESTRPIPE" + "ENOTEMPTY" + "EUSERS" + "ENOTSOCK" + "EDESTADDRREQ" + "EMSGSIZE" + "EPROTOTYPE" + "ENOPROTOOPT" + "EPROTONOSUPPORT" + "ESOCKTNOSUPPORT" + "EOPNOTSUPP" + "EPFNOSUPPORT" + "EAFNOSUPPORT" + "EADDRINUSE" + "EADDRNOTAVAIL" + "ENETDOWN" + "ENETUNREACH" + "ENETRESET" + "ECONNABORTED" + "ECONNRESET" + "ENOBUFS" + "EISCONN" + "ENOTCONN" + "ESHUTDOWN" + "ETOOMANYREFS" + "ETIMEDOUT" + "ECONNREFUSED" + "EHOSTDOWN" + "EHOSTUNREACH" + "EWOULDBLOCK" + "EALREADY" + "EINPROGRESS" + "ESTALE" + ) + #-(or linux solaris bsd darwin) + (:export + )) + (defpackage "UNIX" (:export "UNIX-CURRENT-DIRECTORY" "UNIX-OPEN" @@ -554,133 +884,14 @@ "WRITEOTH" "XMT1EN" ) - ;; Errno symbols arranged by OS - #+linux - (:export "ESUCCESS" - "EPERM" - "ENOENT" - "ESRCH" - "EINTR" - "EIO" - "ENXIO" - "E2BIG" - "ENOEXEC" - "EBADF" - "ECHILD" - "EAGAIN" - "ENOMEM" - "EACCES" - "EFAULT" - "ENOTBLK" - "EBUSY" - "EEXIST" - "EXDEV" - "ENODEV" - "ENOTDIR" - "EISDIR" - "EINVAL" - "ENFILE" - "EMFILE" - "ENOTTY" - "ETXTBSY" - "EFBIG" - "ENOSPC" - "ESPIPE" - "EROFS" - "EMLINK" - "EPIPE" - "EDOM" - "ERANGE" - "EDEADLK" - "ENAMETOOLONG" - "ENOLCK" - "ENOSYS" - "ENOTEMPTY" - "ELOOP" - "EWOULDBLOCK" - "ENOMSG" - "EIDRM" - "ECHRNG" - "EL2NSYNC" - "EL3HLT" - "EL3RST" - "ELNRNG" - "EUNATCH" - "ENOCSI" - "EL2HLT" - "EBADE" - "EBADR" - "EXFULL" - "ENOANO" - "EBADRQC" - "EBADSLT" - "EDEADLOCK" - "EBFONT" - "ENOSTR" - "ENODATA" - "ETIME" - "ENOSR" - "ENONET" - "ENOPKG" - "EREMOTE" - "ENOLINK" - "EADV" - "ESRMNT" - "ECOMM" - "EPROTO" - "EMULTIHOP" - "EDOTDOT" - "EBADMSG" - "EOVERFLOW" - "ENOTUNIQ" - "EBADFD" - "EREMCHG" - "ELIBACC" - "ELIBBAD" - "ELIBSCN" - "ELIBMAX" - "ELIBEXEC" - "EILSEQ" - "ERESTART" - "ESTRPIPE" - "EUSERS" - "ENOTSOCK" - "EDESTADDRREQ" - "EMSGSIZE" - "EPROTOTYPE" - "ENOPROTOOPT" - "EPROTONOSUPPORT" - "ESOCKTNOSUPPORT" - "EOPNOTSUPP" - "EPFNOSUPPORT" - "EAFNOSUPPORT" - "EADDRINUSE" - "EADDRNOTAVAIL" - "ENETDOWN" - "ENETUNREACH" - "ENETRESET" - "ECONNABORTED" - "ECONNRESET" - "ENOBUFS" - "EISCONN" - "ENOTCONN" - "ESHUTDOWN" - "ETOOMANYREFS" - "ETIMEDOUT" - "ECONNREFUSED" - "EHOSTDOWN" - "EHOSTUNREACH" - "EALREADY" - "EINPROGRESS" - "ESTALE" - "EUCLEAN" - "ENOTNAM" - "ENAVAIL" - "EISNAM" - "EREMOTEIO" - "EDQUOT" - ) ) + +;; Import all of the symbols from UNIX-ERRNO into UNIX and the export +;; them. +(ext:without-package-locks + (do-external-symbols (sym "UNIX-ERRNO") + (shadowing-import sym "UNIX") + (export sym "UNIX"))) (defpackage "FORMAT") View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/commit/87efff147420ed21ce5514b2... -- View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/commit/87efff147420ed21ce5514b2... You're receiving this email because of your account on gitlab.common-lisp.net.