#include <fcntl.h>
#include <unistd.h>
#include <signal.h>
+#include <errno.h>
+#include <dlfcn.h>
#include "genesis/config.h"
lisp_name, unix_number, unix_number);
}
+#define DEFERRNO(name) defconstant(#name, name)
#define DEFSIGNAL(name) defconstant(#name, name)
int
\n\
");
+ printf("(in-package \"SB!ALIEN\")\n\n");
+
+ printf (";;;flags for dlopen()\n");
+
+ defconstant ("rtld-lazy", RTLD_LAZY);
+ defconstant ("rtld-now", RTLD_NOW);
+ defconstant ("rtld-global", RTLD_GLOBAL);
+
printf("(in-package \"SB!UNIX\")\n\n");
printf(";;; types, types, types\n");
DEFTYPE("uid-t", uid_t);
printf("\n");
- printf(";;; fcntl.h (or unistd.h on OpenBSD)\n");
+ printf(";;; fcntl.h (or unistd.h on OpenBSD and NetBSD)\n");
defconstant("r_ok", R_OK);
defconstant("w_ok", W_OK);
defconstant("x_ok", X_OK);
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);
DEFSIGNAL(SIGBUS);
DEFSIGNAL(SIGCHLD);
DEFSIGNAL(SIGCONT);
-/* FIXME: Maybe #ifdef SIGEMT would be a smarter conditional? */
-#if (!(defined LISP_FEATURE_LINUX) || !((defined LISP_FEATURE_PPC) || (defined LISP_FEATURE_X86)))
+#ifdef SIGEMT
DEFSIGNAL(SIGEMT);
#endif
DEFSIGNAL(SIGFPE);