diff options
Diffstat (limited to 'lib/posix')
-rw-r--r-- | lib/posix/detect.nim | 824 | ||||
-rw-r--r-- | lib/posix/linux_amd64_consts.nim | 620 | ||||
-rw-r--r-- | lib/posix/linux_consts.nim | 620 |
3 files changed, 2064 insertions, 0 deletions
diff --git a/lib/posix/detect.nim b/lib/posix/detect.nim new file mode 100644 index 000000000..d92269707 --- /dev/null +++ b/lib/posix/detect.nim @@ -0,0 +1,824 @@ +# Posix detect program +# (c) 2009 Andreas Rumpf + +# This program produces a C program that produces a Nimrod include file. +# The Nimrod include file lists the values of each POSIX constant. +# This is needed because POSIX is brain-dead: It only cares for C, any other +# language is ignored. It would have been easier had they specified the +# concrete values of the constants. Sigh. + +import os, strutils + +const + cc = "gcc -o $1 $1.c" + + cfile = """ +/* Generated by detect.nim */ + +#include <stdlib.h> +#include <stdio.h> +$1 + +int main() { + FILE* f; + f = fopen("$3_$4_consts.nim", "w+"); + fputs("# Generated by detect.nim\nconst\n", f); + $2 + fclose(f); +} +""" + +type + TTypeKind = enum + cint, cshort, clong, cstring, pointer + +var + hd = "" + tl = "" + +proc myExec(cmd: string): bool = + return executeShellCommand(cmd) == 0 + +proc header(s: string): bool = + const testh = "testh" + var f: TFile + if openFile(f, appendFileExt(testh, "c"), fmWrite): + f.write("#include $1\n" % s) + f.write("int main() { return 0; }\n") + closeFile(f) + result = myExec(cc % testh) + removeFile(appendFileExt(testh, "c")) + if result: + addf(hd, "#include $1\n", s) + echo("Found: ", s) + else: + echo("Not found: ", s) + +proc main = + const gen = "genconsts" + var f: TFile + if openFile(f, appendFileExt(gen, "c"), fmWrite): + f.write(cfile % [hd, tl, system.hostOS, system.hostCPU]) + closeFile(f) + if not myExec(cc % gen): quit(1) + if not myExec("./" & gen): quit(1) + removeFile(appendFileExt(gen, "c")) + echo("Success") + +proc v(name: string, typ: TTypeKind=cint) = + var n = if name[0] == '_': copy(name, 1) else: name + var t = $typ + case typ + of pointer: + addf(tl, + "#ifdef $3\n fprintf(f, \" $1* = cast[$2](%p)\\n\", $3);\n#endif\n", + n, t, name) + + of cstring: + addf(tl, + "#ifdef $3\n fprintf(f, \" $1* = $2(\\\"%s\\\")\\n\", $3);\n#endif\n", + n, t, name) + of clong: + addf(tl, + "#ifdef $3\n fprintf(f, \" $1* = $2(%ld)\\n\", $3);\n#endif\n", + n, t, name) + else: + addf(tl, + "#ifdef $3\n fprintf(f, \" $1* = $2(%d)\\n\", $3);\n#endif\n", + n, t, name) + +if header("<aio.h>"): + v("AIO_ALLDONE") + v("AIO_CANCELED") + v("AIO_NOTCANCELED") + v("LIO_NOP") + v("LIO_NOWAIT") + v("LIO_READ") + v("LIO_WAIT") + v("LIO_WRITE") + +if header("<dlfcn.h>"): + v("RTLD_LAZY") + v("RTLD_NOW") + v("RTLD_GLOBAL") + v("RTLD_LOCAL") + +if header("<errno.h>"): + v("E2BIG") + v("EACCES") + v("EADDRINUSE") + v("EADDRNOTAVAIL") + v("EAFNOSUPPORT") + v("EAGAIN") + v("EALREADY") + v("EBADF") + v("EBADMSG") + v("EBUSY") + v("ECANCELED") + v("ECHILD") + v("ECONNABORTED") + v("ECONNREFUSED") + v("ECONNRESET") + v("EDEADLK") + v("EDESTADDRREQ") + v("EDOM") + v("EDQUOT") + v("EEXIST") + v("EFAULT") + v("EFBIG") + v("EHOSTUNREACH") + v("EIDRM") + v("EILSEQ") + v("EINPROGRESS") + v("EINTR") + v("EINVAL") + v("EIO") + v("EISCONN") + v("EISDIR") + v("ELOOP") + v("EMFILE") + v("EMLINK") + v("EMSGSIZE") + v("EMULTIHOP") + v("ENAMETOOLONG") + v("ENETDOWN") + v("ENETRESET") + v("ENETUNREACH") + v("ENFILE") + v("ENOBUFS") + v("ENODATA") + v("ENODEV") + v("ENOENT") + v("ENOEXEC") + v("ENOLCK") + v("ENOLINK") + v("ENOMEM") + v("ENOMSG") + v("ENOPROTOOPT") + v("ENOSPC") + v("ENOSR") + v("ENOSTR") + v("ENOSYS") + v("ENOTCONN") + v("ENOTDIR") + v("ENOTEMPTY") + v("ENOTSOCK") + v("ENOTSUP") + v("ENOTTY") + v("ENXIO") + v("EOPNOTSUPP") + v("EOVERFLOW") + v("EPERM") + v("EPIPE") + v("EPROTO") + v("EPROTONOSUPPORT") + v("EPROTOTYPE") + v("ERANGE") + v("EROFS") + v("ESPIPE") + v("ESRCH") + v("ESTALE") + v("ETIME") + v("ETIMEDOUT") + v("ETXTBSY") + v("EWOULDBLOCK") + v("EXDEV") + +if header("<fcntl.h>"): + v("F_DUPFD") + v("F_GETFD") + v("F_SETFD") + v("F_GETFL") + v("F_SETFL") + v("F_GETLK") + v("F_SETLK") + v("F_SETLKW") + v("F_GETOWN") + v("F_SETOWN") + v("FD_CLOEXEC") + v("F_RDLCK") + v("F_UNLCK") + v("F_WRLCK") + v("O_CREAT") + v("O_EXCL") + v("O_NOCTTY") + v("O_TRUNC") + v("O_APPEND") + v("O_DSYNC") + v("O_NONBLOCK") + v("O_RSYNC") + v("O_SYNC") + v("O_ACCMODE") + v("O_RDONLY") + v("O_RDWR") + v("O_WRONLY") + v("POSIX_FADV_NORMAL") + v("POSIX_FADV_SEQUENTIAL") + v("POSIX_FADV_RANDOM") + v("POSIX_FADV_WILLNEED") + v("POSIX_FADV_DONTNEED") + v("POSIX_FADV_NOREUSE") + +if header("<fenv.h>"): + v("FE_DIVBYZERO") + v("FE_INEXACT") + v("FE_INVALID") + v("FE_OVERFLOW") + v("FE_UNDERFLOW") + v("FE_ALL_EXCEPT") + v("FE_DOWNWARD") + v("FE_TONEAREST") + v("FE_TOWARDZERO") + v("FE_UPWARD") + v("FE_DFL_ENV", pointer) + +if header("<fmtmsg.h>"): + v("MM_HARD") + v("MM_SOFT") + v("MM_FIRM") + v("MM_APPL") + v("MM_UTIL") + v("MM_OPSYS") + v("MM_RECOVER") + v("MM_NRECOV") + v("MM_HALT") + v("MM_ERROR") + v("MM_WARNING") + v("MM_INFO") + v("MM_NOSEV") + v("MM_PRINT") + v("MM_CONSOLE") + v("MM_OK") + v("MM_NOTOK") + v("MM_NOMSG") + v("MM_NOCON") + +if header("<fnmatch.h>"): + v("FNM_NOMATCH") + v("FNM_PATHNAME") + v("FNM_PERIOD") + v("FNM_NOESCAPE") + v("FNM_NOSYS") + +if header("<ftw.h>"): + v("FTW_F") + v("FTW_D") + v("FTW_DNR") + v("FTW_DP") + v("FTW_NS") + v("FTW_SL") + v("FTW_SLN") + v("FTW_PHYS") + v("FTW_MOUNT") + v("FTW_DEPTH") + v("FTW_CHDIR") + +if header("<glob.h>"): + v("GLOB_APPEND") + v("GLOB_DOOFFS") + v("GLOB_ERR") + v("GLOB_MARK") + v("GLOB_NOCHECK") + v("GLOB_NOESCAPE") + v("GLOB_NOSORT") + v("GLOB_ABORTED") + v("GLOB_NOMATCH") + v("GLOB_NOSPACE") + v("GLOB_NOSYS") + +if header("<langinfo.h>"): + v("CODESET") + v("D_T_FMT") + v("D_FMT") + v("T_FMT") + v("T_FMT_AMPM") + v("AM_STR") + v("PM_STR") + v("DAY_1") + v("DAY_2") + v("DAY_3") + v("DAY_4") + v("DAY_5") + v("DAY_6") + v("DAY_7") + v("ABDAY_1") + v("ABDAY_2") + v("ABDAY_3") + v("ABDAY_4") + v("ABDAY_5") + v("ABDAY_6") + v("ABDAY_7") + v("MON_1") + v("MON_2") + v("MON_3") + v("MON_4") + v("MON_5") + v("MON_6") + v("MON_7") + v("MON_8") + v("MON_9") + v("MON_10") + v("MON_11") + v("MON_12") + v("ABMON_1") + v("ABMON_2") + v("ABMON_3") + v("ABMON_4") + v("ABMON_5") + v("ABMON_6") + v("ABMON_7") + v("ABMON_8") + v("ABMON_9") + v("ABMON_10") + v("ABMON_11") + v("ABMON_12") + v("ERA") + v("ERA_D_FMT") + v("ERA_D_T_FMT") + v("ERA_T_FMT") + v("ALT_DIGITS") + v("RADIXCHAR") + v("THOUSEP") + v("YESEXPR") + v("NOEXPR") + v("CRNCYSTR") + +if header("<locale.h>"): + v("LC_ALL") #{.importc, header: .}: cint + v("LC_COLLATE") #{.importc, header: "<locale.h>".}: cint + v("LC_CTYPE") #{.importc, header: "<locale.h>".}: cint + v("LC_MESSAGES") #{.importc, header: "<locale.h>".}: cint + v("LC_MONETARY") #{.importc, header: "<locale.h>".}: cint + v("LC_NUMERIC") #{.importc, header: "<locale.h>".}: cint + v("LC_TIME") #{.importc, header: "<locale.h>".}: cint + +if header("<pthread.h>"): + v("PTHREAD_BARRIER_SERIAL_THREAD") + v("PTHREAD_CANCEL_ASYNCHRONOUS") + v("PTHREAD_CANCEL_ENABLE") + v("PTHREAD_CANCEL_DEFERRED") + v("PTHREAD_CANCEL_DISABLE") + #v("PTHREAD_CANCELED") + #v("PTHREAD_COND_INITIALIZER") + v("PTHREAD_CREATE_DETACHED") + v("PTHREAD_CREATE_JOINABLE") + v("PTHREAD_EXPLICIT_SCHED") + v("PTHREAD_INHERIT_SCHED") + v("PTHREAD_MUTEX_DEFAULT") + v("PTHREAD_MUTEX_ERRORCHECK") + #v("PTHREAD_MUTEX_INITIALIZER") + v("PTHREAD_MUTEX_NORMAL") + v("PTHREAD_MUTEX_RECURSIVE") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_ONCE_INIT") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_PRIO_INHERIT") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_PRIO_NONE") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_PRIO_PROTECT") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_PROCESS_SHARED") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_PROCESS_PRIVATE") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_SCOPE_PROCESS") #{.importc, header: "<pthread.h>".}: cint + v("PTHREAD_SCOPE_SYSTEM") #{.importc, header: "<pthread.h>".}: cint + +if header("<unistd.h>"): + v("_POSIX_ASYNC_IO") + v("_POSIX_PRIO_IO") + v("_POSIX_SYNC_IO") + v("F_OK") + v("R_OK") + v("W_OK") + v("X_OK") + + v("_CS_PATH") + v("_CS_POSIX_V6_ILP32_OFF32_CFLAGS") + v("_CS_POSIX_V6_ILP32_OFF32_LDFLAGS") + v("_CS_POSIX_V6_ILP32_OFF32_LIBS") + v("_CS_POSIX_V6_ILP32_OFFBIG_CFLAGS") + v("_CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS") + v("_CS_POSIX_V6_ILP32_OFFBIG_LIBS") + v("_CS_POSIX_V6_LP64_OFF64_CFLAGS") + v("_CS_POSIX_V6_LP64_OFF64_LDFLAGS") + v("_CS_POSIX_V6_LP64_OFF64_LIBS") + v("_CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS") + v("_CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS") + v("_CS_POSIX_V6_LPBIG_OFFBIG_LIBS") + v("_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS") + + v("F_LOCK") + v("F_TEST") #{.importc: "F_TEST", header: "<unistd.h>".}: cint + v("F_TLOCK") #{.importc: "F_TLOCK", header: "<unistd.h>".}: cint + v("F_ULOCK") #{.importc: "F_ULOCK", header: "<unistd.h>".}: cint + v("_PC_2_SYMLINKS") #{.importc: "_PC_2_SYMLINKS", header: "<unistd.h>".}: cint + v("_PC_ALLOC_SIZE_MIN") + v("_PC_ASYNC_IO") #{.importc: "_PC_ASYNC_IO", header: "<unistd.h>".}: cint + v("_PC_CHOWN_RESTRICTED") + v("_PC_FILESIZEBITS") #{.importc: "_PC_FILESIZEBITS", header: "<unistd.h>".}: cint + v("_PC_LINK_MAX") #{.importc: "_PC_LINK_MAX", header: "<unistd.h>".}: cint + v("_PC_MAX_CANON") #{.importc: "_PC_MAX_CANON", header: "<unistd.h>".}: cint + v("_PC_MAX_INPUT") #{.importc: "_PC_MAX_INPUT", header: "<unistd.h>".}: cint + v("_PC_NAME_MAX") #{.importc: "_PC_NAME_MAX", header: "<unistd.h>".}: cint + v("_PC_NO_TRUNC") #{.importc: "_PC_NO_TRUNC", header: "<unistd.h>".}: cint + v("_PC_PATH_MAX") #{.importc: "_PC_PATH_MAX", header: "<unistd.h>".}: cint + v("_PC_PIPE_BUF") #{.importc: "_PC_PIPE_BUF", header: "<unistd.h>".}: cint + v("_PC_PRIO_IO") #{.importc: "_PC_PRIO_IO", header: "<unistd.h>".}: cint + v("_PC_REC_INCR_XFER_SIZE") + v("_PC_REC_MIN_XFER_SIZE") + v("_PC_REC_XFER_ALIGN") + v("_PC_SYMLINK_MAX") #{.importc: "_PC_SYMLINK_MAX", header: "<unistd.h>".}: cint + v("_PC_SYNC_IO") #{.importc: "_PC_SYNC_IO", header: "<unistd.h>".}: cint + v("_PC_VDISABLE") #{.importc: "_PC_VDISABLE", header: "<unistd.h>".}: cint + v("_SC_2_C_BIND") #{.importc: "_SC_2_C_BIND", header: "<unistd.h>".}: cint + v("_SC_2_C_DEV") #{.importc: "_SC_2_C_DEV", header: "<unistd.h>".}: cint + v("_SC_2_CHAR_TERM") #{.importc: "_SC_2_CHAR_TERM", header: "<unistd.h>".}: cint + v("_SC_2_FORT_DEV") #{.importc: "_SC_2_FORT_DEV", header: "<unistd.h>".}: cint + v("_SC_2_FORT_RUN") #{.importc: "_SC_2_FORT_RUN", header: "<unistd.h>".}: cint + v("_SC_2_LOCALEDEF") #{.importc: "_SC_2_LOCALEDEF", header: "<unistd.h>".}: cint + v("_SC_2_PBS") #{.importc: "_SC_2_PBS", header: "<unistd.h>".}: cint + v("_SC_2_PBS_ACCOUNTING") + v("_SC_2_PBS_CHECKPOINT") + v("_SC_2_PBS_LOCATE") #{.importc: "_SC_2_PBS_LOCATE", header: "<unistd.h>".}: cint + v("_SC_2_PBS_MESSAGE") #{.importc: "_SC_2_PBS_MESSAGE", header: "<unistd.h>".}: cint + v("_SC_2_PBS_TRACK") #{.importc: "_SC_2_PBS_TRACK", header: "<unistd.h>".}: cint + v("_SC_2_SW_DEV") #{.importc: "_SC_2_SW_DEV", header: "<unistd.h>".}: cint + v("_SC_2_UPE") #{.importc: "_SC_2_UPE", header: "<unistd.h>".}: cint + v("_SC_2_VERSION") #{.importc: "_SC_2_VERSION", header: "<unistd.h>".}: cint + v("_SC_ADVISORY_INFO") #{.importc: "_SC_ADVISORY_INFO", header: "<unistd.h>".}: cint + v("_SC_AIO_LISTIO_MAX") + v("_SC_AIO_MAX") #{.importc: "_SC_AIO_MAX", header: "<unistd.h>".}: cint + v("_SC_AIO_PRIO_DELTA_MAX") + v("_SC_ARG_MAX") #{.importc: "_SC_ARG_MAX", header: "<unistd.h>".}: cint + v("_SC_ASYNCHRONOUS_IO") + v("_SC_ATEXIT_MAX") #{.importc: "_SC_ATEXIT_MAX", header: "<unistd.h>".}: cint + v("_SC_BARRIERS") #{.importc: "_SC_BARRIERS", header: "<unistd.h>".}: cint + v("_SC_BC_BASE_MAX") #{.importc: "_SC_BC_BASE_MAX", header: "<unistd.h>".}: cint + v("_SC_BC_DIM_MAX") #{.importc: "_SC_BC_DIM_MAX", header: "<unistd.h>".}: cint + v("_SC_BC_SCALE_MAX") #{.importc: "_SC_BC_SCALE_MAX", header: "<unistd.h>".}: cint + v("_SC_BC_STRING_MAX") #{.importc: "_SC_BC_STRING_MAX", header: "<unistd.h>".}: cint + v("_SC_CHILD_MAX") #{.importc: "_SC_CHILD_MAX", header: "<unistd.h>".}: cint + v("_SC_CLK_TCK") #{.importc: "_SC_CLK_TCK", header: "<unistd.h>".}: cint + v("_SC_CLOCK_SELECTION") + v("_SC_COLL_WEIGHTS_MAX") + v("_SC_CPUTIME") #{.importc: "_SC_CPUTIME", header: "<unistd.h>".}: cint + v("_SC_DELAYTIMER_MAX") + v("_SC_EXPR_NEST_MAX") #{.importc: "_SC_EXPR_NEST_MAX", header: "<unistd.h>".}: cint + v("_SC_FSYNC") #{.importc: "_SC_FSYNC", header: "<unistd.h>".}: cint + v("_SC_GETGR_R_SIZE_MAX") + v("_SC_GETPW_R_SIZE_MAX") + v("_SC_HOST_NAME_MAX") #{.importc: "_SC_HOST_NAME_MAX", header: "<unistd.h>".}: cint + v("_SC_IOV_MAX") #{.importc: "_SC_IOV_MAX", header: "<unistd.h>".}: cint + v("_SC_IPV6") #{.importc: "_SC_IPV6", header: "<unistd.h>".}: cint + v("_SC_JOB_CONTROL") #{.importc: "_SC_JOB_CONTROL", header: "<unistd.h>".}: cint + v("_SC_LINE_MAX") #{.importc: "_SC_LINE_MAX", header: "<unistd.h>".}: cint + v("_SC_LOGIN_NAME_MAX") + v("_SC_MAPPED_FILES") #{.importc: "_SC_MAPPED_FILES", header: "<unistd.h>".}: cint + v("_SC_MEMLOCK") #{.importc: "_SC_MEMLOCK", header: "<unistd.h>".}: cint + v("_SC_MEMLOCK_RANGE") #{.importc: "_SC_MEMLOCK_RANGE", header: "<unistd.h>".}: cint + v("_SC_MEMORY_PROTECTION") + v("_SC_MESSAGE_PASSING") + v("_SC_MONOTONIC_CLOCK") + v("_SC_MQ_OPEN_MAX") #{.importc: "_SC_MQ_OPEN_MAX", header: "<unistd.h>".}: cint + v("_SC_MQ_PRIO_MAX") #{.importc: "_SC_MQ_PRIO_MAX", header: "<unistd.h>".}: cint + v("_SC_NGROUPS_MAX") #{.importc: "_SC_NGROUPS_MAX", header: "<unistd.h>".}: cint + v("_SC_OPEN_MAX") #{.importc: "_SC_OPEN_MAX", header: "<unistd.h>".}: cint + v("_SC_PAGE_SIZE") #{.importc: "_SC_PAGE_SIZE", header: "<unistd.h>".}: cint + v("_SC_PRIORITIZED_IO") + v("_SC_PRIORITY_SCHEDULING") + v("_SC_RAW_SOCKETS") #{.importc: "_SC_RAW_SOCKETS", header: "<unistd.h>".}: cint + v("_SC_RE_DUP_MAX") #{.importc: "_SC_RE_DUP_MAX", header: "<unistd.h>".}: cint + v("_SC_READER_WRITER_LOCKS") + v("_SC_REALTIME_SIGNALS") + v("_SC_REGEXP") #{.importc: "_SC_REGEXP", header: "<unistd.h>".}: cint + v("_SC_RTSIG_MAX") #{.importc: "_SC_RTSIG_MAX", header: "<unistd.h>".}: cint + v("_SC_SAVED_IDS") #{.importc: "_SC_SAVED_IDS", header: "<unistd.h>".}: cint + v("_SC_SEM_NSEMS_MAX") #{.importc: "_SC_SEM_NSEMS_MAX", header: "<unistd.h>".}: cint + v("_SC_SEM_VALUE_MAX") #{.importc: "_SC_SEM_VALUE_MAX", header: "<unistd.h>".}: cint + v("_SC_SEMAPHORES") #{.importc: "_SC_SEMAPHORES", header: "<unistd.h>".}: cint + v("_SC_SHARED_MEMORY_OBJECTS") + v("_SC_SHELL") #{.importc: "_SC_SHELL", header: "<unistd.h>".}: cint + v("_SC_SIGQUEUE_MAX") #{.importc: "_SC_SIGQUEUE_MAX", header: "<unistd.h>".}: cint + v("_SC_SPAWN") #{.importc: "_SC_SPAWN", header: "<unistd.h>".}: cint + v("_SC_SPIN_LOCKS") #{.importc: "_SC_SPIN_LOCKS", header: "<unistd.h>".}: cint + v("_SC_SPORADIC_SERVER") + v("_SC_SS_REPL_MAX") #{.importc: "_SC_SS_REPL_MAX", header: "<unistd.h>".}: cint + v("_SC_STREAM_MAX") #{.importc: "_SC_STREAM_MAX", header: "<unistd.h>".}: cint + v("_SC_SYMLOOP_MAX") #{.importc: "_SC_SYMLOOP_MAX", header: "<unistd.h>".}: cint + v("_SC_SYNCHRONIZED_IO") + v("_SC_THREAD_ATTR_STACKADDR") + v("_SC_THREAD_ATTR_STACKSIZE") + v("_SC_THREAD_CPUTIME") + v("_SC_THREAD_DESTRUCTOR_ITERATIONS") + v("_SC_THREAD_KEYS_MAX") + v("_SC_THREAD_PRIO_INHERIT") + v("_SC_THREAD_PRIO_PROTECT") + v("_SC_THREAD_PRIORITY_SCHEDULING") + v("_SC_THREAD_PROCESS_SHARED") + v("_SC_THREAD_SAFE_FUNCTIONS") + v("_SC_THREAD_SPORADIC_SERVER") + v("_SC_THREAD_STACK_MIN") + v("_SC_THREAD_THREADS_MAX") + v("_SC_THREADS") #{.importc: "_SC_THREADS", header: "<unistd.h>".}: cint + v("_SC_TIMEOUTS") #{.importc: "_SC_TIMEOUTS", header: "<unistd.h>".}: cint + v("_SC_TIMER_MAX") #{.importc: "_SC_TIMER_MAX", header: "<unistd.h>".}: cint + v("_SC_TIMERS") #{.importc: "_SC_TIMERS", header: "<unistd.h>".}: cint + v("_SC_TRACE") #{.importc: "_SC_TRACE", header: "<unistd.h>".}: cint + v("_SC_TRACE_EVENT_FILTER") + v("_SC_TRACE_EVENT_NAME_MAX") + v("_SC_TRACE_INHERIT") #{.importc: "_SC_TRACE_INHERIT", header: "<unistd.h>".}: cint + v("_SC_TRACE_LOG") #{.importc: "_SC_TRACE_LOG", header: "<unistd.h>".}: cint + v("_SC_TRACE_NAME_MAX") + v("_SC_TRACE_SYS_MAX") #{.importc: "_SC_TRACE_SYS_MAX", header: "<unistd.h>".}: cint + v("_SC_TRACE_USER_EVENT_MAX") + v("_SC_TTY_NAME_MAX") #{.importc: "_SC_TTY_NAME_MAX", header: "<unistd.h>".}: cint + v("_SC_TYPED_MEMORY_OBJECTS") + v("_SC_TZNAME_MAX") #{.importc: "_SC_TZNAME_MAX", header: "<unistd.h>".}: cint + v("_SC_V6_ILP32_OFF32") + v("_SC_V6_ILP32_OFFBIG") + v("_SC_V6_LP64_OFF64") #{.importc: "_SC_V6_LP64_OFF64", header: "<unistd.h>".}: cint + v("_SC_V6_LPBIG_OFFBIG") + v("_SC_VERSION") #{.importc: "_SC_VERSION", header: "<unistd.h>".}: cint + v("_SC_XBS5_ILP32_OFF32") + v("_SC_XBS5_ILP32_OFFBIG") + v("_SC_XBS5_LP64_OFF64") + v("_SC_XBS5_LPBIG_OFFBIG") + v("_SC_XOPEN_CRYPT") #{.importc: "_SC_XOPEN_CRYPT", header: "<unistd.h>".}: cint + v("_SC_XOPEN_ENH_I18N") + v("_SC_XOPEN_LEGACY") #{.importc: "_SC_XOPEN_LEGACY", header: "<unistd.h>".}: cint + v("_SC_XOPEN_REALTIME") + v("_SC_XOPEN_REALTIME_THREADS") + v("_SC_XOPEN_SHM") #{.importc: "_SC_XOPEN_SHM", header: "<unistd.h>".}: cint + v("_SC_XOPEN_STREAMS") #{.importc: "_SC_XOPEN_STREAMS", header: "<unistd.h>".}: cint + v("_SC_XOPEN_UNIX") #{.importc: "_SC_XOPEN_UNIX", header: "<unistd.h>".}: cint + v("_SC_XOPEN_VERSION") #{.importc: "_SC_XOPEN_VERSION", header: "<unistd.h>".}: cint + + v("SEEK_SET") #{.importc, header: "<unistd.h>".}: cint + v("SEEK_CUR") #{.importc, header: "<unistd.h>".}: cint + v("SEEK_END") #{.importc, header: "<unistd.h>".}: cint + + +if header("<semaphore.h>"): + v("SEM_FAILED", pointer) + +if header("<sys/ipc.h>"): + v("IPC_CREAT") #{.importc, header: .}: cint + v("IPC_EXCL") #{.importc, header: "<sys/ipc.h>".}: cint + v("IPC_NOWAIT") #{.importc, header: "<sys/ipc.h>".}: cint + v("IPC_PRIVATE") #{.importc, header: "<sys/ipc.h>".}: cint + v("IPC_RMID") #{.importc, header: "<sys/ipc.h>".}: cint + v("IPC_SET") #{.importc, header: "<sys/ipc.h>".}: cint + v("IPC_STAT") #{.importc, header: "<sys/ipc.h>".}: cint + +if header("<sys/stat.h>"): + v("S_IFMT") #{.importc, header: .}: cint + v("S_IFBLK") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFCHR") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFIFO") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFREG") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFDIR") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFLNK") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IFSOCK") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IRWXU") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IRUSR") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IWUSR") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IXUSR") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IRWXG") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IRGRP") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IWGRP") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IXGRP") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IRWXO") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IROTH") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IWOTH") #{.importc, header: "<sys/stat.h>".}: cint + v("S_IXOTH") #{.importc, header: "<sys/stat.h>".}: cint + v("S_ISUID") #{.importc, header: "<sys/stat.h>".}: cint + v("S_ISGID") #{.importc, header: "<sys/stat.h>".}: cint + v("S_ISVTX") #{.importc, header: "<sys/stat.h>".}: cint + +if header("<sys/statvfs.h>"): + v("ST_RDONLY") #{.importc, header: .}: cint + v("ST_NOSUID") #{.importc, header: "<sys/statvfs.h>".}: cint + +if header("<sys/mman.h>"): + v("PROT_READ") #{.importc, header: .}: cint + v("PROT_WRITE") #{.importc, header: "<sys/mman.h>".}: cint + v("PROT_EXEC") #{.importc, header: "<sys/mman.h>".}: cint + v("PROT_NONE") #{.importc, header: "<sys/mman.h>".}: cint + v("MAP_SHARED") #{.importc, header: "<sys/mman.h>".}: cint + v("MAP_PRIVATE") #{.importc, header: "<sys/mman.h>".}: cint + v("MAP_FIXED") #{.importc, header: "<sys/mman.h>".}: cint + v("MS_ASYNC") #{.importc, header: "<sys/mman.h>".}: cint + v("MS_SYNC") #{.importc, header: "<sys/mman.h>".}: cint + v("MS_INVALIDATE") #{.importc, header: "<sys/mman.h>".}: cint + v("MCL_CURRENT") #{.importc, header: "<sys/mman.h>".}: cint + v("MCL_FUTURE") #{.importc, header: "<sys/mman.h>".}: cint + + v("MAP_FAILED", pointer) + v("POSIX_MADV_NORMAL") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_MADV_SEQUENTIAL") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_MADV_RANDOM") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_MADV_WILLNEED") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_MADV_DONTNEED") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_TYPED_MEM_ALLOCATE") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_TYPED_MEM_ALLOCATE_CONTIG") #{.importc, header: "<sys/mman.h>".}: cint + v("POSIX_TYPED_MEM_MAP_ALLOCATABLE") #{.importc, header: "<sys/mman.h>".}: cint + +if header("<time.h>"): + v("CLOCKS_PER_SEC", clong) + v("CLOCK_PROCESS_CPUTIME_ID") + v("CLOCK_THREAD_CPUTIME_ID") + v("CLOCK_REALTIME") + v("TIMER_ABSTIME") + v("CLOCK_MONOTONIC") + +if header("<sys/wait.h>"): + v("WNOHANG") #{.importc, header: .}: cint + v("WUNTRACED") #{.importc, header: "<sys/wait.h>".}: cint + #v("WEXITSTATUS") + #v("WIFCONTINUED") + #v("WIFEXITED") + #v("WIFSIGNALED") + #v("WIFSTOPPED") + #v("WSTOPSIG") + #v("WTERMSIG") + v("WEXITED") #{.importc, header: "<sys/wait.h>".}: cint + v("WSTOPPED") #{.importc, header: "<sys/wait.h>".}: cint + v("WCONTINUED") #{.importc, header: "<sys/wait.h>".}: cint + v("WNOWAIT") #{.importc, header: "<sys/wait.h>".}: cint + v("P_ALL") #{.importc, header: "<sys/wait.h>".}: cint + v("P_PID") #{.importc, header: "<sys/wait.h>".}: cint + v("P_PGID") #{.importc, header: "<sys/wait.h>".}: cint + +if header("<signal.h>"): + v("SIGEV_NONE") #{.importc, header: "<signal.h>".}: cint + v("SIGEV_SIGNAL") #{.importc, header: "<signal.h>".}: cint + v("SIGEV_THREAD") #{.importc, header: "<signal.h>".}: cint + v("SIGABRT") #{.importc, header: "<signal.h>".}: cint + v("SIGALRM") #{.importc, header: "<signal.h>".}: cint + v("SIGBUS") #{.importc, header: "<signal.h>".}: cint + v("SIGCHLD") #{.importc, header: "<signal.h>".}: cint + v("SIGCONT") #{.importc, header: "<signal.h>".}: cint + v("SIGFPE") #{.importc, header: "<signal.h>".}: cint + v("SIGHUP") #{.importc, header: "<signal.h>".}: cint + v("SIGILL") #{.importc, header: "<signal.h>".}: cint + v("SIGINT") #{.importc, header: "<signal.h>".}: cint + v("SIGKILL") #{.importc, header: "<signal.h>".}: cint + v("SIGPIPE") #{.importc, header: "<signal.h>".}: cint + v("SIGQUIT") #{.importc, header: "<signal.h>".}: cint + v("SIGSEGV") #{.importc, header: "<signal.h>".}: cint + v("SIGSTOP") #{.importc, header: "<signal.h>".}: cint + v("SIGTERM") #{.importc, header: "<signal.h>".}: cint + v("SIGTSTP") #{.importc, header: "<signal.h>".}: cint + v("SIGTTIN") #{.importc, header: "<signal.h>".}: cint + v("SIGTTOU") #{.importc, header: "<signal.h>".}: cint + v("SIGUSR1") #{.importc, header: "<signal.h>".}: cint + v("SIGUSR2") #{.importc, header: "<signal.h>".}: cint + v("SIGPOLL") #{.importc, header: "<signal.h>".}: cint + v("SIGPROF") #{.importc, header: "<signal.h>".}: cint + v("SIGSYS") #{.importc, header: "<signal.h>".}: cint + v("SIGTRAP") #{.importc, header: "<signal.h>".}: cint + v("SIGURG") #{.importc, header: "<signal.h>".}: cint + v("SIGVTALRM") #{.importc, header: "<signal.h>".}: cint + v("SIGXCPU") #{.importc, header: "<signal.h>".}: cint + v("SIGXFSZ") #{.importc, header: "<signal.h>".}: cint + v("SA_NOCLDSTOP") #{.importc, header: "<signal.h>".}: cint + v("SIG_BLOCK") #{.importc, header: "<signal.h>".}: cint + v("SIG_UNBLOCK") #{.importc, header: "<signal.h>".}: cint + v("SIG_SETMASK") #{.importc, header: "<signal.h>".}: cint + v("SA_ONSTACK") #{.importc, header: "<signal.h>".}: cint + v("SA_RESETHAND") #{.importc, header: "<signal.h>".}: cint + v("SA_RESTART") #{.importc, header: "<signal.h>".}: cint + v("SA_SIGINFO") #{.importc, header: "<signal.h>".}: cint + v("SA_NOCLDWAIT") #{.importc, header: "<signal.h>".}: cint + v("SA_NODEFER") #{.importc, header: "<signal.h>".}: cint + v("SS_ONSTACK") #{.importc, header: "<signal.h>".}: cint + v("SS_DISABLE") #{.importc, header: "<signal.h>".}: cint + v("MINSIGSTKSZ") #{.importc, header: "<signal.h>".}: cint + v("SIGSTKSZ") #{.importc, header: "<signal.h>".}: cint + +if header("<nl_types.h>"): + v("NL_SETD") #{.importc, header: .}: cint + v("NL_CAT_LOCALE") #{.importc, header: "<nl_types.h>".}: cint + +if header("<sched.h>"): + v("SCHED_FIFO") + v("SCHED_RR") + v("SCHED_SPORADIC") + v("SCHED_OTHER") + +if header("<sys/select.h>"): + v("FD_SETSIZE") + +if header("<net/if.h>"): + v("IF_NAMESIZE") + +if header("<sys/socket.h>"): + v("SCM_RIGHTS") #{.importc, header: .}: cint + v("SOCK_DGRAM") #{.importc, header: "<sys/socket.h>".}: cint + v("SOCK_RAW") #{.importc, header: "<sys/socket.h>".}: cint + v("SOCK_SEQPACKET") #{.importc, header: "<sys/socket.h>".}: cint + v("SOCK_STREAM") #{.importc, header: "<sys/socket.h>".}: cint + v("SOL_SOCKET") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_ACCEPTCONN") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_BROADCAST") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_DEBUG") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_DONTROUTE") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_ERROR") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_KEEPALIVE") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_LINGER") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_OOBINLINE") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_RCVBUF") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_RCVLOWAT") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_RCVTIMEO") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_REUSEADDR") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_SNDBUF") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_SNDLOWAT") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_SNDTIMEO") #{.importc, header: "<sys/socket.h>".}: cint + v("SO_TYPE") #{.importc, header: "<sys/socket.h>".}: cint + v("SOMAXCONN") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_CTRUNC") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_DONTROUTE") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_EOR") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_OOB") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_PEEK") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_TRUNC") #{.importc, header: "<sys/socket.h>".}: cint + v("MSG_WAITALL") #{.importc, header: "<sys/socket.h>".}: cint + v("AF_INET") #{.importc, header: "<sys/socket.h>".}: cint + v("AF_INET6") #{.importc, header: "<sys/socket.h>".}: cint + v("AF_UNIX") #{.importc, header: "<sys/socket.h>".}: cint + v("AF_UNSPEC") #{.importc, header: "<sys/socket.h>".}: cint + v("SHUT_RD") #{.importc, header: "<sys/socket.h>".}: cint + v("SHUT_RDWR") #{.importc, header: "<sys/socket.h>".}: cint + v("SHUT_WR") #{.importc, header: "<sys/socket.h>".}: cint + +if header("<netinet/in.h>"): + v("IPPROTO_IP") #{.importc, header: .}: cint + v("IPPROTO_IPV6") #{.importc, header: "<netinet/in.h>".}: cint + v("IPPROTO_ICMP") #{.importc, header: "<netinet/in.h>".}: cint + v("IPPROTO_RAW") #{.importc, header: "<netinet/in.h>".}: cint + v("IPPROTO_TCP") #{.importc, header: "<netinet/in.h>".}: cint + v("IPPROTO_UDP") #{.importc, header: "<netinet/in.h>".}: cint + v("INADDR_ANY") #{.importc, header: "<netinet/in.h>".}: TinAddrScalar + v("INADDR_BROADCAST") #{.importc, header: "<netinet/in.h>".}: TinAddrScalar + v("INET_ADDRSTRLEN") #{.importc, header: "<netinet/in.h>".}: cint + + v("IPV6_JOIN_GROUP") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_LEAVE_GROUP") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_MULTICAST_HOPS") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_MULTICAST_IF") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_MULTICAST_LOOP") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_UNICAST_HOPS") #{.importc, header: "<netinet/in.h>".}: cint + v("IPV6_V6ONLY") #{.importc, header: "<netinet/in.h>".}: cint + + v("TCP_NODELAY") #{.importc, header: "<netinet/tcp.h>".}: cint + +if header("<netdb.h>"): + v("IPPORT_RESERVED") + + v("HOST_NOT_FOUND") + v("NO_DATA") + v("NO_RECOVERY") + v("TRY_AGAIN") + + v("AI_PASSIVE") + v("AI_CANONNAME") + v("AI_NUMERICHOST") + v("AI_NUMERICSERV") + v("AI_V4MAPPED") + v("AI_ALL") + v("AI_ADDRCONFIG") + + v("NI_NOFQDN") + v("NI_NUMERICHOST") + v("NI_NAMEREQD") + v("NI_NUMERICSERV") + v("NI_NUMERICSCOPE") + v("NI_DGRAM") + v("EAI_AGAIN") + v("EAI_BADFLAGS") + v("EAI_FAIL") + v("EAI_FAMILY") + v("EAI_MEMORY") + v("EAI_NONAME") + v("EAI_SERVICE") + v("EAI_SOCKTYPE") + v("EAI_SYSTEM") + v("EAI_OVERFLOW") + +if header("<poll.h>"): + v("POLLIN", cshort) + v("POLLRDNORM", cshort) + v("POLLRDBAND", cshort) + v("POLLPRI", cshort) + v("POLLOUT", cshort) + v("POLLWRNORM", cshort) + v("POLLWRBAND", cshort) + v("POLLERR", cshort) + v("POLLHUP", cshort) + v("POLLNVAL", cshort) + +if header("<spawn.h>"): + v("POSIX_SPAWN_RESETIDS") + v("POSIX_SPAWN_SETPGROUP") + v("POSIX_SPAWN_SETSCHEDPARAM") + v("POSIX_SPAWN_SETSCHEDULER") + v("POSIX_SPAWN_SETSIGDEF") + v("POSIX_SPAWN_SETSIGMASK") + +main() + diff --git a/lib/posix/linux_amd64_consts.nim b/lib/posix/linux_amd64_consts.nim new file mode 100644 index 000000000..2fadcd83b --- /dev/null +++ b/lib/posix/linux_amd64_consts.nim @@ -0,0 +1,620 @@ +# Generated by detect.nim +const + AIO_ALLDONE* = cint(2) + AIO_CANCELED* = cint(0) + AIO_NOTCANCELED* = cint(1) + LIO_NOP* = cint(2) + LIO_NOWAIT* = cint(1) + LIO_READ* = cint(0) + LIO_WAIT* = cint(0) + LIO_WRITE* = cint(1) + RTLD_LAZY* = cint(1) + RTLD_NOW* = cint(2) + RTLD_GLOBAL* = cint(256) + RTLD_LOCAL* = cint(0) + E2BIG* = cint(7) + EACCES* = cint(13) + EADDRINUSE* = cint(98) + EADDRNOTAVAIL* = cint(99) + EAFNOSUPPORT* = cint(97) + EAGAIN* = cint(11) + EALREADY* = cint(114) + EBADF* = cint(9) + EBADMSG* = cint(74) + EBUSY* = cint(16) + ECANCELED* = cint(125) + ECHILD* = cint(10) + ECONNABORTED* = cint(103) + ECONNREFUSED* = cint(111) + ECONNRESET* = cint(104) + EDEADLK* = cint(35) + EDESTADDRREQ* = cint(89) + EDOM* = cint(33) + EDQUOT* = cint(122) + EEXIST* = cint(17) + EFAULT* = cint(14) + EFBIG* = cint(27) + EHOSTUNREACH* = cint(113) + EIDRM* = cint(43) + EILSEQ* = cint(84) + EINPROGRESS* = cint(115) + EINTR* = cint(4) + EINVAL* = cint(22) + EIO* = cint(5) + EISCONN* = cint(106) + EISDIR* = cint(21) + ELOOP* = cint(40) + EMFILE* = cint(24) + EMLINK* = cint(31) + EMSGSIZE* = cint(90) + EMULTIHOP* = cint(72) + ENAMETOOLONG* = cint(36) + ENETDOWN* = cint(100) + ENETRESET* = cint(102) + ENETUNREACH* = cint(101) + ENFILE* = cint(23) + ENOBUFS* = cint(105) + ENODATA* = cint(61) + ENODEV* = cint(19) + ENOENT* = cint(2) + ENOEXEC* = cint(8) + ENOLCK* = cint(37) + ENOLINK* = cint(67) + ENOMEM* = cint(12) + ENOMSG* = cint(42) + ENOPROTOOPT* = cint(92) + ENOSPC* = cint(28) + ENOSR* = cint(63) + ENOSTR* = cint(60) + ENOSYS* = cint(38) + ENOTCONN* = cint(107) + ENOTDIR* = cint(20) + ENOTEMPTY* = cint(39) + ENOTSOCK* = cint(88) + ENOTSUP* = cint(95) + ENOTTY* = cint(25) + ENXIO* = cint(6) + EOPNOTSUPP* = cint(95) + EOVERFLOW* = cint(75) + EPERM* = cint(1) + EPIPE* = cint(32) + EPROTO* = cint(71) + EPROTONOSUPPORT* = cint(93) + EPROTOTYPE* = cint(91) + ERANGE* = cint(34) + EROFS* = cint(30) + ESPIPE* = cint(29) + ESRCH* = cint(3) + ESTALE* = cint(116) + ETIME* = cint(62) + ETIMEDOUT* = cint(110) + ETXTBSY* = cint(26) + EWOULDBLOCK* = cint(11) + EXDEV* = cint(18) + F_DUPFD* = cint(0) + F_GETFD* = cint(1) + F_SETFD* = cint(2) + F_GETFL* = cint(3) + F_SETFL* = cint(4) + F_GETLK* = cint(5) + F_SETLK* = cint(6) + F_SETLKW* = cint(7) + F_GETOWN* = cint(9) + F_SETOWN* = cint(8) + FD_CLOEXEC* = cint(1) + F_RDLCK* = cint(0) + F_UNLCK* = cint(2) + F_WRLCK* = cint(1) + O_CREAT* = cint(64) + O_EXCL* = cint(128) + O_NOCTTY* = cint(256) + O_TRUNC* = cint(512) + O_APPEND* = cint(1024) + O_DSYNC* = cint(4096) + O_NONBLOCK* = cint(2048) + O_RSYNC* = cint(4096) + O_SYNC* = cint(4096) + O_ACCMODE* = cint(3) + O_RDONLY* = cint(0) + O_RDWR* = cint(2) + O_WRONLY* = cint(1) + POSIX_FADV_NORMAL* = cint(0) + POSIX_FADV_SEQUENTIAL* = cint(2) + POSIX_FADV_RANDOM* = cint(1) + POSIX_FADV_WILLNEED* = cint(3) + POSIX_FADV_DONTNEED* = cint(4) + POSIX_FADV_NOREUSE* = cint(5) + FE_DIVBYZERO* = cint(4) + FE_INEXACT* = cint(32) + FE_INVALID* = cint(1) + FE_OVERFLOW* = cint(8) + FE_UNDERFLOW* = cint(16) + FE_ALL_EXCEPT* = cint(61) + FE_DOWNWARD* = cint(1024) + FE_TONEAREST* = cint(0) + FE_TOWARDZERO* = cint(3072) + FE_UPWARD* = cint(2048) + FE_DFL_ENV* = cast[pointer](0xffffffffffffffff) + MM_HARD* = cint(1) + MM_SOFT* = cint(2) + MM_FIRM* = cint(4) + MM_APPL* = cint(8) + MM_UTIL* = cint(16) + MM_OPSYS* = cint(32) + MM_RECOVER* = cint(64) + MM_NRECOV* = cint(128) + MM_HALT* = cint(1) + MM_ERROR* = cint(2) + MM_WARNING* = cint(3) + MM_INFO* = cint(4) + MM_NOSEV* = cint(0) + MM_PRINT* = cint(256) + MM_CONSOLE* = cint(512) + MM_OK* = cint(0) + MM_NOTOK* = cint(-1) + MM_NOMSG* = cint(1) + MM_NOCON* = cint(4) + FNM_NOMATCH* = cint(1) + FNM_PATHNAME* = cint(1) + FNM_PERIOD* = cint(4) + FNM_NOESCAPE* = cint(2) + FTW_F* = cint(0) + FTW_D* = cint(1) + FTW_DNR* = cint(2) + FTW_NS* = cint(3) + FTW_SL* = cint(4) + GLOB_APPEND* = cint(32) + GLOB_DOOFFS* = cint(8) + GLOB_ERR* = cint(1) + GLOB_MARK* = cint(2) + GLOB_NOCHECK* = cint(16) + GLOB_NOESCAPE* = cint(64) + GLOB_NOSORT* = cint(4) + GLOB_ABORTED* = cint(2) + GLOB_NOMATCH* = cint(3) + GLOB_NOSPACE* = cint(1) + GLOB_NOSYS* = cint(4) + CODESET* = cint(14) + D_T_FMT* = cint(131112) + D_FMT* = cint(131113) + T_FMT* = cint(131114) + T_FMT_AMPM* = cint(131115) + AM_STR* = cint(131110) + PM_STR* = cint(131111) + DAY_1* = cint(131079) + DAY_2* = cint(131080) + DAY_3* = cint(131081) + DAY_4* = cint(131082) + DAY_5* = cint(131083) + DAY_6* = cint(131084) + DAY_7* = cint(131085) + ABDAY_1* = cint(131072) + ABDAY_2* = cint(131073) + ABDAY_3* = cint(131074) + ABDAY_4* = cint(131075) + ABDAY_5* = cint(131076) + ABDAY_6* = cint(131077) + ABDAY_7* = cint(131078) + MON_1* = cint(131098) + MON_2* = cint(131099) + MON_3* = cint(131100) + MON_4* = cint(131101) + MON_5* = cint(131102) + MON_6* = cint(131103) + MON_7* = cint(131104) + MON_8* = cint(131105) + MON_9* = cint(131106) + MON_10* = cint(131107) + MON_11* = cint(131108) + MON_12* = cint(131109) + ABMON_1* = cint(131086) + ABMON_2* = cint(131087) + ABMON_3* = cint(131088) + ABMON_4* = cint(131089) + ABMON_5* = cint(131090) + ABMON_6* = cint(131091) + ABMON_7* = cint(131092) + ABMON_8* = cint(131093) + ABMON_9* = cint(131094) + ABMON_10* = cint(131095) + ABMON_11* = cint(131096) + ABMON_12* = cint(131097) + ERA* = cint(131116) + ERA_D_FMT* = cint(131118) + ERA_D_T_FMT* = cint(131120) + ERA_T_FMT* = cint(131121) + ALT_DIGITS* = cint(131119) + RADIXCHAR* = cint(65536) + THOUSEP* = cint(65537) + YESEXPR* = cint(327680) + NOEXPR* = cint(327681) + CRNCYSTR* = cint(262159) + LC_ALL* = cint(6) + LC_COLLATE* = cint(3) + LC_CTYPE* = cint(0) + LC_MESSAGES* = cint(5) + LC_MONETARY* = cint(4) + LC_NUMERIC* = cint(1) + LC_TIME* = cint(2) + PTHREAD_BARRIER_SERIAL_THREAD* = cint(-1) + PTHREAD_CANCEL_ASYNCHRONOUS* = cint(1) + PTHREAD_CANCEL_ENABLE* = cint(0) + PTHREAD_CANCEL_DEFERRED* = cint(0) + PTHREAD_CANCEL_DISABLE* = cint(1) + PTHREAD_CREATE_DETACHED* = cint(1) + PTHREAD_CREATE_JOINABLE* = cint(0) + PTHREAD_EXPLICIT_SCHED* = cint(1) + PTHREAD_INHERIT_SCHED* = cint(0) + PTHREAD_ONCE_INIT* = cint(0) + PTHREAD_PROCESS_SHARED* = cint(1) + PTHREAD_PROCESS_PRIVATE* = cint(0) + PTHREAD_SCOPE_PROCESS* = cint(1) + PTHREAD_SCOPE_SYSTEM* = cint(0) + POSIX_ASYNC_IO* = cint(1) + F_OK* = cint(0) + R_OK* = cint(4) + W_OK* = cint(2) + X_OK* = cint(1) + CS_PATH* = cint(0) + CS_POSIX_V6_ILP32_OFF32_CFLAGS* = cint(1116) + CS_POSIX_V6_ILP32_OFF32_LDFLAGS* = cint(1117) + CS_POSIX_V6_ILP32_OFF32_LIBS* = cint(1118) + CS_POSIX_V6_ILP32_OFFBIG_CFLAGS* = cint(1120) + CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS* = cint(1121) + CS_POSIX_V6_ILP32_OFFBIG_LIBS* = cint(1122) + CS_POSIX_V6_LP64_OFF64_CFLAGS* = cint(1124) + CS_POSIX_V6_LP64_OFF64_LDFLAGS* = cint(1125) + CS_POSIX_V6_LP64_OFF64_LIBS* = cint(1126) + CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS* = cint(1128) + CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS* = cint(1129) + CS_POSIX_V6_LPBIG_OFFBIG_LIBS* = cint(1130) + CS_POSIX_V6_WIDTH_RESTRICTED_ENVS* = cint(1) + F_LOCK* = cint(1) + F_TEST* = cint(3) + F_TLOCK* = cint(2) + F_ULOCK* = cint(0) + PC_2_SYMLINKS* = cint(20) + PC_ALLOC_SIZE_MIN* = cint(18) + PC_ASYNC_IO* = cint(10) + PC_CHOWN_RESTRICTED* = cint(6) + PC_FILESIZEBITS* = cint(13) + PC_LINK_MAX* = cint(0) + PC_MAX_CANON* = cint(1) + PC_MAX_INPUT* = cint(2) + PC_NAME_MAX* = cint(3) + PC_NO_TRUNC* = cint(7) + PC_PATH_MAX* = cint(4) + PC_PIPE_BUF* = cint(5) + PC_PRIO_IO* = cint(11) + PC_REC_INCR_XFER_SIZE* = cint(14) + PC_REC_MIN_XFER_SIZE* = cint(16) + PC_REC_XFER_ALIGN* = cint(17) + PC_SYMLINK_MAX* = cint(19) + PC_SYNC_IO* = cint(9) + PC_VDISABLE* = cint(8) + SC_2_C_BIND* = cint(47) + SC_2_C_DEV* = cint(48) + SC_2_CHAR_TERM* = cint(95) + SC_2_FORT_DEV* = cint(49) + SC_2_FORT_RUN* = cint(50) + SC_2_LOCALEDEF* = cint(52) + SC_2_PBS* = cint(168) + SC_2_PBS_ACCOUNTING* = cint(169) + SC_2_PBS_CHECKPOINT* = cint(175) + SC_2_PBS_LOCATE* = cint(170) + SC_2_PBS_MESSAGE* = cint(171) + SC_2_PBS_TRACK* = cint(172) + SC_2_SW_DEV* = cint(51) + SC_2_UPE* = cint(97) + SC_2_VERSION* = cint(46) + SC_ADVISORY_INFO* = cint(132) + SC_AIO_LISTIO_MAX* = cint(23) + SC_AIO_MAX* = cint(24) + SC_AIO_PRIO_DELTA_MAX* = cint(25) + SC_ARG_MAX* = cint(0) + SC_ASYNCHRONOUS_IO* = cint(12) + SC_ATEXIT_MAX* = cint(87) + SC_BARRIERS* = cint(133) + SC_BC_BASE_MAX* = cint(36) + SC_BC_DIM_MAX* = cint(37) + SC_BC_SCALE_MAX* = cint(38) + SC_BC_STRING_MAX* = cint(39) + SC_CHILD_MAX* = cint(1) + SC_CLK_TCK* = cint(2) + SC_CLOCK_SELECTION* = cint(137) + SC_COLL_WEIGHTS_MAX* = cint(40) + SC_CPUTIME* = cint(138) + SC_DELAYTIMER_MAX* = cint(26) + SC_EXPR_NEST_MAX* = cint(42) + SC_FSYNC* = cint(15) + SC_GETGR_R_SIZE_MAX* = cint(69) + SC_GETPW_R_SIZE_MAX* = cint(70) + SC_HOST_NAME_MAX* = cint(180) + SC_IOV_MAX* = cint(60) + SC_IPV6* = cint(235) + SC_JOB_CONTROL* = cint(7) + SC_LINE_MAX* = cint(43) + SC_LOGIN_NAME_MAX* = cint(71) + SC_MAPPED_FILES* = cint(16) + SC_MEMLOCK* = cint(17) + SC_MEMLOCK_RANGE* = cint(18) + SC_MEMORY_PROTECTION* = cint(19) + SC_MESSAGE_PASSING* = cint(20) + SC_MONOTONIC_CLOCK* = cint(149) + SC_MQ_OPEN_MAX* = cint(27) + SC_MQ_PRIO_MAX* = cint(28) + SC_NGROUPS_MAX* = cint(3) + SC_OPEN_MAX* = cint(4) + SC_PAGE_SIZE* = cint(30) + SC_PRIORITIZED_IO* = cint(13) + SC_PRIORITY_SCHEDULING* = cint(10) + SC_RAW_SOCKETS* = cint(236) + SC_RE_DUP_MAX* = cint(44) + SC_READER_WRITER_LOCKS* = cint(153) + SC_REALTIME_SIGNALS* = cint(9) + SC_REGEXP* = cint(155) + SC_RTSIG_MAX* = cint(31) + SC_SAVED_IDS* = cint(8) + SC_SEM_NSEMS_MAX* = cint(32) + SC_SEM_VALUE_MAX* = cint(33) + SC_SEMAPHORES* = cint(21) + SC_SHARED_MEMORY_OBJECTS* = cint(22) + SC_SHELL* = cint(157) + SC_SIGQUEUE_MAX* = cint(34) + SC_SPAWN* = cint(159) + SC_SPIN_LOCKS* = cint(154) + SC_SPORADIC_SERVER* = cint(160) + SC_STREAM_MAX* = cint(5) + SC_SYMLOOP_MAX* = cint(173) + SC_SYNCHRONIZED_IO* = cint(14) + SC_THREAD_ATTR_STACKADDR* = cint(77) + SC_THREAD_ATTR_STACKSIZE* = cint(78) + SC_THREAD_CPUTIME* = cint(139) + SC_THREAD_DESTRUCTOR_ITERATIONS* = cint(73) + SC_THREAD_KEYS_MAX* = cint(74) + SC_THREAD_PRIO_INHERIT* = cint(80) + SC_THREAD_PRIO_PROTECT* = cint(81) + SC_THREAD_PRIORITY_SCHEDULING* = cint(79) + SC_THREAD_PROCESS_SHARED* = cint(82) + SC_THREAD_SAFE_FUNCTIONS* = cint(68) + SC_THREAD_SPORADIC_SERVER* = cint(161) + SC_THREAD_STACK_MIN* = cint(75) + SC_THREAD_THREADS_MAX* = cint(76) + SC_THREADS* = cint(67) + SC_TIMEOUTS* = cint(164) + SC_TIMER_MAX* = cint(35) + SC_TIMERS* = cint(11) + SC_TRACE* = cint(181) + SC_TRACE_EVENT_FILTER* = cint(182) + SC_TRACE_INHERIT* = cint(183) + SC_TRACE_LOG* = cint(184) + SC_TTY_NAME_MAX* = cint(72) + SC_TYPED_MEMORY_OBJECTS* = cint(165) + SC_TZNAME_MAX* = cint(6) + SC_V6_ILP32_OFF32* = cint(176) + SC_V6_ILP32_OFFBIG* = cint(177) + SC_V6_LP64_OFF64* = cint(178) + SC_V6_LPBIG_OFFBIG* = cint(179) + SC_VERSION* = cint(29) + SC_XBS5_ILP32_OFF32* = cint(125) + SC_XBS5_ILP32_OFFBIG* = cint(126) + SC_XBS5_LP64_OFF64* = cint(127) + SC_XBS5_LPBIG_OFFBIG* = cint(128) + SC_XOPEN_CRYPT* = cint(92) + SC_XOPEN_ENH_I18N* = cint(93) + SC_XOPEN_LEGACY* = cint(129) + SC_XOPEN_REALTIME* = cint(130) + SC_XOPEN_REALTIME_THREADS* = cint(131) + SC_XOPEN_SHM* = cint(94) + SC_XOPEN_UNIX* = cint(91) + SC_XOPEN_VERSION* = cint(89) + SEEK_SET* = cint(0) + SEEK_CUR* = cint(1) + SEEK_END* = cint(2) + SEM_FAILED* = cast[pointer]((nil)) + IPC_CREAT* = cint(512) + IPC_EXCL* = cint(1024) + IPC_NOWAIT* = cint(2048) + IPC_PRIVATE* = cint(0) + IPC_RMID* = cint(0) + IPC_SET* = cint(1) + IPC_STAT* = cint(2) + S_IFMT* = cint(61440) + S_IFBLK* = cint(24576) + S_IFCHR* = cint(8192) + S_IFIFO* = cint(4096) + S_IFREG* = cint(32768) + S_IFDIR* = cint(16384) + S_IFLNK* = cint(40960) + S_IFSOCK* = cint(49152) + S_IRWXU* = cint(448) + S_IRUSR* = cint(256) + S_IWUSR* = cint(128) + S_IXUSR* = cint(64) + S_IRWXG* = cint(56) + S_IRGRP* = cint(32) + S_IWGRP* = cint(16) + S_IXGRP* = cint(8) + S_IRWXO* = cint(7) + S_IROTH* = cint(4) + S_IWOTH* = cint(2) + S_IXOTH* = cint(1) + S_ISUID* = cint(2048) + S_ISGID* = cint(1024) + S_ISVTX* = cint(512) + ST_RDONLY* = cint(1) + ST_NOSUID* = cint(2) + PROT_READ* = cint(1) + PROT_WRITE* = cint(2) + PROT_EXEC* = cint(4) + PROT_NONE* = cint(0) + MAP_SHARED* = cint(1) + MAP_PRIVATE* = cint(2) + MAP_FIXED* = cint(16) + MS_ASYNC* = cint(1) + MS_SYNC* = cint(4) + MS_INVALIDATE* = cint(2) + MCL_CURRENT* = cint(1) + MCL_FUTURE* = cint(2) + MAP_FAILED* = cast[pointer](0xffffffffffffffff) + POSIX_MADV_NORMAL* = cint(0) + POSIX_MADV_SEQUENTIAL* = cint(2) + POSIX_MADV_RANDOM* = cint(1) + POSIX_MADV_WILLNEED* = cint(3) + POSIX_MADV_DONTNEED* = cint(4) + CLOCKS_PER_SEC* = clong(1000000) + CLOCK_PROCESS_CPUTIME_ID* = cint(2) + CLOCK_THREAD_CPUTIME_ID* = cint(3) + CLOCK_REALTIME* = cint(0) + TIMER_ABSTIME* = cint(1) + CLOCK_MONOTONIC* = cint(1) + WNOHANG* = cint(1) + WUNTRACED* = cint(2) + WEXITED* = cint(4) + WSTOPPED* = cint(2) + WCONTINUED* = cint(8) + WNOWAIT* = cint(16777216) + SIGEV_NONE* = cint(1) + SIGEV_SIGNAL* = cint(0) + SIGEV_THREAD* = cint(2) + SIGABRT* = cint(6) + SIGALRM* = cint(14) + SIGBUS* = cint(7) + SIGCHLD* = cint(17) + SIGCONT* = cint(18) + SIGFPE* = cint(8) + SIGHUP* = cint(1) + SIGILL* = cint(4) + SIGINT* = cint(2) + SIGKILL* = cint(9) + SIGPIPE* = cint(13) + SIGQUIT* = cint(3) + SIGSEGV* = cint(11) + SIGSTOP* = cint(19) + SIGTERM* = cint(15) + SIGTSTP* = cint(20) + SIGTTIN* = cint(21) + SIGTTOU* = cint(22) + SIGUSR1* = cint(10) + SIGUSR2* = cint(12) + SIGPOLL* = cint(29) + SIGPROF* = cint(27) + SIGSYS* = cint(31) + SIGTRAP* = cint(5) + SIGURG* = cint(23) + SIGVTALRM* = cint(26) + SIGXCPU* = cint(24) + SIGXFSZ* = cint(25) + SA_NOCLDSTOP* = cint(1) + SIG_BLOCK* = cint(0) + SIG_UNBLOCK* = cint(1) + SIG_SETMASK* = cint(2) + SA_ONSTACK* = cint(134217728) + SA_RESETHAND* = cint(-2147483648) + SA_RESTART* = cint(268435456) + SA_SIGINFO* = cint(4) + SA_NOCLDWAIT* = cint(2) + SA_NODEFER* = cint(1073741824) + SS_ONSTACK* = cint(1) + SS_DISABLE* = cint(2) + MINSIGSTKSZ* = cint(2048) + SIGSTKSZ* = cint(8192) + NL_SETD* = cint(1) + NL_CAT_LOCALE* = cint(1) + SCHED_FIFO* = cint(1) + SCHED_RR* = cint(2) + SCHED_OTHER* = cint(0) + FD_SETSIZE* = cint(1024) + IF_NAMESIZE* = cint(16) + SCM_RIGHTS* = cint(1) + SOCK_DGRAM* = cint(2) + SOCK_RAW* = cint(3) + SOCK_SEQPACKET* = cint(5) + SOCK_STREAM* = cint(1) + SOL_SOCKET* = cint(1) + SO_ACCEPTCONN* = cint(30) + SO_BROADCAST* = cint(6) + SO_DEBUG* = cint(1) + SO_DONTROUTE* = cint(5) + SO_ERROR* = cint(4) + SO_KEEPALIVE* = cint(9) + SO_LINGER* = cint(13) + SO_OOBINLINE* = cint(10) + SO_RCVBUF* = cint(8) + SO_RCVLOWAT* = cint(18) + SO_RCVTIMEO* = cint(20) + SO_REUSEADDR* = cint(2) + SO_SNDBUF* = cint(7) + SO_SNDLOWAT* = cint(19) + SO_SNDTIMEO* = cint(21) + SO_TYPE* = cint(3) + SOMAXCONN* = cint(128) + MSG_CTRUNC* = cint(8) + MSG_DONTROUTE* = cint(4) + MSG_EOR* = cint(128) + MSG_OOB* = cint(1) + MSG_PEEK* = cint(2) + MSG_TRUNC* = cint(32) + MSG_WAITALL* = cint(256) + AF_INET* = cint(2) + AF_INET6* = cint(10) + AF_UNIX* = cint(1) + AF_UNSPEC* = cint(0) + SHUT_RD* = cint(0) + SHUT_RDWR* = cint(2) + SHUT_WR* = cint(1) + IPPROTO_IP* = cint(0) + IPPROTO_IPV6* = cint(41) + IPPROTO_ICMP* = cint(1) + IPPROTO_RAW* = cint(255) + IPPROTO_TCP* = cint(6) + IPPROTO_UDP* = cint(17) + INADDR_ANY* = cint(0) + INADDR_BROADCAST* = cint(-1) + INET_ADDRSTRLEN* = cint(16) + IPV6_JOIN_GROUP* = cint(20) + IPV6_LEAVE_GROUP* = cint(21) + IPV6_MULTICAST_HOPS* = cint(18) + IPV6_MULTICAST_IF* = cint(17) + IPV6_MULTICAST_LOOP* = cint(19) + IPV6_UNICAST_HOPS* = cint(16) + IPV6_V6ONLY* = cint(26) + IPPORT_RESERVED* = cint(1024) + HOST_NOT_FOUND* = cint(1) + NO_DATA* = cint(4) + NO_RECOVERY* = cint(3) + TRY_AGAIN* = cint(2) + AI_PASSIVE* = cint(1) + AI_CANONNAME* = cint(2) + AI_NUMERICHOST* = cint(4) + AI_NUMERICSERV* = cint(1024) + AI_V4MAPPED* = cint(8) + AI_ALL* = cint(16) + AI_ADDRCONFIG* = cint(32) + NI_NOFQDN* = cint(4) + NI_NUMERICHOST* = cint(1) + NI_NAMEREQD* = cint(8) + NI_NUMERICSERV* = cint(2) + NI_DGRAM* = cint(16) + EAI_AGAIN* = cint(-3) + EAI_BADFLAGS* = cint(-1) + EAI_FAIL* = cint(-4) + EAI_FAMILY* = cint(-6) + EAI_MEMORY* = cint(-10) + EAI_NONAME* = cint(-2) + EAI_SERVICE* = cint(-8) + EAI_SOCKTYPE* = cint(-7) + EAI_SYSTEM* = cint(-11) + EAI_OVERFLOW* = cint(-12) + POLLIN* = cshort(1) + POLLPRI* = cshort(2) + POLLOUT* = cshort(4) + POLLERR* = cshort(8) + POLLHUP* = cshort(16) + POLLNVAL* = cshort(32) + POSIX_SPAWN_RESETIDS* = cint(1) + POSIX_SPAWN_SETPGROUP* = cint(2) + POSIX_SPAWN_SETSCHEDPARAM* = cint(16) + POSIX_SPAWN_SETSCHEDULER* = cint(32) + POSIX_SPAWN_SETSIGDEF* = cint(4) + POSIX_SPAWN_SETSIGMASK* = cint(8) diff --git a/lib/posix/linux_consts.nim b/lib/posix/linux_consts.nim new file mode 100644 index 000000000..2fadcd83b --- /dev/null +++ b/lib/posix/linux_consts.nim @@ -0,0 +1,620 @@ +# Generated by detect.nim +const + AIO_ALLDONE* = cint(2) + AIO_CANCELED* = cint(0) + AIO_NOTCANCELED* = cint(1) + LIO_NOP* = cint(2) + LIO_NOWAIT* = cint(1) + LIO_READ* = cint(0) + LIO_WAIT* = cint(0) + LIO_WRITE* = cint(1) + RTLD_LAZY* = cint(1) + RTLD_NOW* = cint(2) + RTLD_GLOBAL* = cint(256) + RTLD_LOCAL* = cint(0) + E2BIG* = cint(7) + EACCES* = cint(13) + EADDRINUSE* = cint(98) + EADDRNOTAVAIL* = cint(99) + EAFNOSUPPORT* = cint(97) + EAGAIN* = cint(11) + EALREADY* = cint(114) + EBADF* = cint(9) + EBADMSG* = cint(74) + EBUSY* = cint(16) + ECANCELED* = cint(125) + ECHILD* = cint(10) + ECONNABORTED* = cint(103) + ECONNREFUSED* = cint(111) + ECONNRESET* = cint(104) + EDEADLK* = cint(35) + EDESTADDRREQ* = cint(89) + EDOM* = cint(33) + EDQUOT* = cint(122) + EEXIST* = cint(17) + EFAULT* = cint(14) + EFBIG* = cint(27) + EHOSTUNREACH* = cint(113) + EIDRM* = cint(43) + EILSEQ* = cint(84) + EINPROGRESS* = cint(115) + EINTR* = cint(4) + EINVAL* = cint(22) + EIO* = cint(5) + EISCONN* = cint(106) + EISDIR* = cint(21) + ELOOP* = cint(40) + EMFILE* = cint(24) + EMLINK* = cint(31) + EMSGSIZE* = cint(90) + EMULTIHOP* = cint(72) + ENAMETOOLONG* = cint(36) + ENETDOWN* = cint(100) + ENETRESET* = cint(102) + ENETUNREACH* = cint(101) + ENFILE* = cint(23) + ENOBUFS* = cint(105) + ENODATA* = cint(61) + ENODEV* = cint(19) + ENOENT* = cint(2) + ENOEXEC* = cint(8) + ENOLCK* = cint(37) + ENOLINK* = cint(67) + ENOMEM* = cint(12) + ENOMSG* = cint(42) + ENOPROTOOPT* = cint(92) + ENOSPC* = cint(28) + ENOSR* = cint(63) + ENOSTR* = cint(60) + ENOSYS* = cint(38) + ENOTCONN* = cint(107) + ENOTDIR* = cint(20) + ENOTEMPTY* = cint(39) + ENOTSOCK* = cint(88) + ENOTSUP* = cint(95) + ENOTTY* = cint(25) + ENXIO* = cint(6) + EOPNOTSUPP* = cint(95) + EOVERFLOW* = cint(75) + EPERM* = cint(1) + EPIPE* = cint(32) + EPROTO* = cint(71) + EPROTONOSUPPORT* = cint(93) + EPROTOTYPE* = cint(91) + ERANGE* = cint(34) + EROFS* = cint(30) + ESPIPE* = cint(29) + ESRCH* = cint(3) + ESTALE* = cint(116) + ETIME* = cint(62) + ETIMEDOUT* = cint(110) + ETXTBSY* = cint(26) + EWOULDBLOCK* = cint(11) + EXDEV* = cint(18) + F_DUPFD* = cint(0) + F_GETFD* = cint(1) + F_SETFD* = cint(2) + F_GETFL* = cint(3) + F_SETFL* = cint(4) + F_GETLK* = cint(5) + F_SETLK* = cint(6) + F_SETLKW* = cint(7) + F_GETOWN* = cint(9) + F_SETOWN* = cint(8) + FD_CLOEXEC* = cint(1) + F_RDLCK* = cint(0) + F_UNLCK* = cint(2) + F_WRLCK* = cint(1) + O_CREAT* = cint(64) + O_EXCL* = cint(128) + O_NOCTTY* = cint(256) + O_TRUNC* = cint(512) + O_APPEND* = cint(1024) + O_DSYNC* = cint(4096) + O_NONBLOCK* = cint(2048) + O_RSYNC* = cint(4096) + O_SYNC* = cint(4096) + O_ACCMODE* = cint(3) + O_RDONLY* = cint(0) + O_RDWR* = cint(2) + O_WRONLY* = cint(1) + POSIX_FADV_NORMAL* = cint(0) + POSIX_FADV_SEQUENTIAL* = cint(2) + POSIX_FADV_RANDOM* = cint(1) + POSIX_FADV_WILLNEED* = cint(3) + POSIX_FADV_DONTNEED* = cint(4) + POSIX_FADV_NOREUSE* = cint(5) + FE_DIVBYZERO* = cint(4) + FE_INEXACT* = cint(32) + FE_INVALID* = cint(1) + FE_OVERFLOW* = cint(8) + FE_UNDERFLOW* = cint(16) + FE_ALL_EXCEPT* = cint(61) + FE_DOWNWARD* = cint(1024) + FE_TONEAREST* = cint(0) + FE_TOWARDZERO* = cint(3072) + FE_UPWARD* = cint(2048) + FE_DFL_ENV* = cast[pointer](0xffffffffffffffff) + MM_HARD* = cint(1) + MM_SOFT* = cint(2) + MM_FIRM* = cint(4) + MM_APPL* = cint(8) + MM_UTIL* = cint(16) + MM_OPSYS* = cint(32) + MM_RECOVER* = cint(64) + MM_NRECOV* = cint(128) + MM_HALT* = cint(1) + MM_ERROR* = cint(2) + MM_WARNING* = cint(3) + MM_INFO* = cint(4) + MM_NOSEV* = cint(0) + MM_PRINT* = cint(256) + MM_CONSOLE* = cint(512) + MM_OK* = cint(0) + MM_NOTOK* = cint(-1) + MM_NOMSG* = cint(1) + MM_NOCON* = cint(4) + FNM_NOMATCH* = cint(1) + FNM_PATHNAME* = cint(1) + FNM_PERIOD* = cint(4) + FNM_NOESCAPE* = cint(2) + FTW_F* = cint(0) + FTW_D* = cint(1) + FTW_DNR* = cint(2) + FTW_NS* = cint(3) + FTW_SL* = cint(4) + GLOB_APPEND* = cint(32) + GLOB_DOOFFS* = cint(8) + GLOB_ERR* = cint(1) + GLOB_MARK* = cint(2) + GLOB_NOCHECK* = cint(16) + GLOB_NOESCAPE* = cint(64) + GLOB_NOSORT* = cint(4) + GLOB_ABORTED* = cint(2) + GLOB_NOMATCH* = cint(3) + GLOB_NOSPACE* = cint(1) + GLOB_NOSYS* = cint(4) + CODESET* = cint(14) + D_T_FMT* = cint(131112) + D_FMT* = cint(131113) + T_FMT* = cint(131114) + T_FMT_AMPM* = cint(131115) + AM_STR* = cint(131110) + PM_STR* = cint(131111) + DAY_1* = cint(131079) + DAY_2* = cint(131080) + DAY_3* = cint(131081) + DAY_4* = cint(131082) + DAY_5* = cint(131083) + DAY_6* = cint(131084) + DAY_7* = cint(131085) + ABDAY_1* = cint(131072) + ABDAY_2* = cint(131073) + ABDAY_3* = cint(131074) + ABDAY_4* = cint(131075) + ABDAY_5* = cint(131076) + ABDAY_6* = cint(131077) + ABDAY_7* = cint(131078) + MON_1* = cint(131098) + MON_2* = cint(131099) + MON_3* = cint(131100) + MON_4* = cint(131101) + MON_5* = cint(131102) + MON_6* = cint(131103) + MON_7* = cint(131104) + MON_8* = cint(131105) + MON_9* = cint(131106) + MON_10* = cint(131107) + MON_11* = cint(131108) + MON_12* = cint(131109) + ABMON_1* = cint(131086) + ABMON_2* = cint(131087) + ABMON_3* = cint(131088) + ABMON_4* = cint(131089) + ABMON_5* = cint(131090) + ABMON_6* = cint(131091) + ABMON_7* = cint(131092) + ABMON_8* = cint(131093) + ABMON_9* = cint(131094) + ABMON_10* = cint(131095) + ABMON_11* = cint(131096) + ABMON_12* = cint(131097) + ERA* = cint(131116) + ERA_D_FMT* = cint(131118) + ERA_D_T_FMT* = cint(131120) + ERA_T_FMT* = cint(131121) + ALT_DIGITS* = cint(131119) + RADIXCHAR* = cint(65536) + THOUSEP* = cint(65537) + YESEXPR* = cint(327680) + NOEXPR* = cint(327681) + CRNCYSTR* = cint(262159) + LC_ALL* = cint(6) + LC_COLLATE* = cint(3) + LC_CTYPE* = cint(0) + LC_MESSAGES* = cint(5) + LC_MONETARY* = cint(4) + LC_NUMERIC* = cint(1) + LC_TIME* = cint(2) + PTHREAD_BARRIER_SERIAL_THREAD* = cint(-1) + PTHREAD_CANCEL_ASYNCHRONOUS* = cint(1) + PTHREAD_CANCEL_ENABLE* = cint(0) + PTHREAD_CANCEL_DEFERRED* = cint(0) + PTHREAD_CANCEL_DISABLE* = cint(1) + PTHREAD_CREATE_DETACHED* = cint(1) + PTHREAD_CREATE_JOINABLE* = cint(0) + PTHREAD_EXPLICIT_SCHED* = cint(1) + PTHREAD_INHERIT_SCHED* = cint(0) + PTHREAD_ONCE_INIT* = cint(0) + PTHREAD_PROCESS_SHARED* = cint(1) + PTHREAD_PROCESS_PRIVATE* = cint(0) + PTHREAD_SCOPE_PROCESS* = cint(1) + PTHREAD_SCOPE_SYSTEM* = cint(0) + POSIX_ASYNC_IO* = cint(1) + F_OK* = cint(0) + R_OK* = cint(4) + W_OK* = cint(2) + X_OK* = cint(1) + CS_PATH* = cint(0) + CS_POSIX_V6_ILP32_OFF32_CFLAGS* = cint(1116) + CS_POSIX_V6_ILP32_OFF32_LDFLAGS* = cint(1117) + CS_POSIX_V6_ILP32_OFF32_LIBS* = cint(1118) + CS_POSIX_V6_ILP32_OFFBIG_CFLAGS* = cint(1120) + CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS* = cint(1121) + CS_POSIX_V6_ILP32_OFFBIG_LIBS* = cint(1122) + CS_POSIX_V6_LP64_OFF64_CFLAGS* = cint(1124) + CS_POSIX_V6_LP64_OFF64_LDFLAGS* = cint(1125) + CS_POSIX_V6_LP64_OFF64_LIBS* = cint(1126) + CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS* = cint(1128) + CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS* = cint(1129) + CS_POSIX_V6_LPBIG_OFFBIG_LIBS* = cint(1130) + CS_POSIX_V6_WIDTH_RESTRICTED_ENVS* = cint(1) + F_LOCK* = cint(1) + F_TEST* = cint(3) + F_TLOCK* = cint(2) + F_ULOCK* = cint(0) + PC_2_SYMLINKS* = cint(20) + PC_ALLOC_SIZE_MIN* = cint(18) + PC_ASYNC_IO* = cint(10) + PC_CHOWN_RESTRICTED* = cint(6) + PC_FILESIZEBITS* = cint(13) + PC_LINK_MAX* = cint(0) + PC_MAX_CANON* = cint(1) + PC_MAX_INPUT* = cint(2) + PC_NAME_MAX* = cint(3) + PC_NO_TRUNC* = cint(7) + PC_PATH_MAX* = cint(4) + PC_PIPE_BUF* = cint(5) + PC_PRIO_IO* = cint(11) + PC_REC_INCR_XFER_SIZE* = cint(14) + PC_REC_MIN_XFER_SIZE* = cint(16) + PC_REC_XFER_ALIGN* = cint(17) + PC_SYMLINK_MAX* = cint(19) + PC_SYNC_IO* = cint(9) + PC_VDISABLE* = cint(8) + SC_2_C_BIND* = cint(47) + SC_2_C_DEV* = cint(48) + SC_2_CHAR_TERM* = cint(95) + SC_2_FORT_DEV* = cint(49) + SC_2_FORT_RUN* = cint(50) + SC_2_LOCALEDEF* = cint(52) + SC_2_PBS* = cint(168) + SC_2_PBS_ACCOUNTING* = cint(169) + SC_2_PBS_CHECKPOINT* = cint(175) + SC_2_PBS_LOCATE* = cint(170) + SC_2_PBS_MESSAGE* = cint(171) + SC_2_PBS_TRACK* = cint(172) + SC_2_SW_DEV* = cint(51) + SC_2_UPE* = cint(97) + SC_2_VERSION* = cint(46) + SC_ADVISORY_INFO* = cint(132) + SC_AIO_LISTIO_MAX* = cint(23) + SC_AIO_MAX* = cint(24) + SC_AIO_PRIO_DELTA_MAX* = cint(25) + SC_ARG_MAX* = cint(0) + SC_ASYNCHRONOUS_IO* = cint(12) + SC_ATEXIT_MAX* = cint(87) + SC_BARRIERS* = cint(133) + SC_BC_BASE_MAX* = cint(36) + SC_BC_DIM_MAX* = cint(37) + SC_BC_SCALE_MAX* = cint(38) + SC_BC_STRING_MAX* = cint(39) + SC_CHILD_MAX* = cint(1) + SC_CLK_TCK* = cint(2) + SC_CLOCK_SELECTION* = cint(137) + SC_COLL_WEIGHTS_MAX* = cint(40) + SC_CPUTIME* = cint(138) + SC_DELAYTIMER_MAX* = cint(26) + SC_EXPR_NEST_MAX* = cint(42) + SC_FSYNC* = cint(15) + SC_GETGR_R_SIZE_MAX* = cint(69) + SC_GETPW_R_SIZE_MAX* = cint(70) + SC_HOST_NAME_MAX* = cint(180) + SC_IOV_MAX* = cint(60) + SC_IPV6* = cint(235) + SC_JOB_CONTROL* = cint(7) + SC_LINE_MAX* = cint(43) + SC_LOGIN_NAME_MAX* = cint(71) + SC_MAPPED_FILES* = cint(16) + SC_MEMLOCK* = cint(17) + SC_MEMLOCK_RANGE* = cint(18) + SC_MEMORY_PROTECTION* = cint(19) + SC_MESSAGE_PASSING* = cint(20) + SC_MONOTONIC_CLOCK* = cint(149) + SC_MQ_OPEN_MAX* = cint(27) + SC_MQ_PRIO_MAX* = cint(28) + SC_NGROUPS_MAX* = cint(3) + SC_OPEN_MAX* = cint(4) + SC_PAGE_SIZE* = cint(30) + SC_PRIORITIZED_IO* = cint(13) + SC_PRIORITY_SCHEDULING* = cint(10) + SC_RAW_SOCKETS* = cint(236) + SC_RE_DUP_MAX* = cint(44) + SC_READER_WRITER_LOCKS* = cint(153) + SC_REALTIME_SIGNALS* = cint(9) + SC_REGEXP* = cint(155) + SC_RTSIG_MAX* = cint(31) + SC_SAVED_IDS* = cint(8) + SC_SEM_NSEMS_MAX* = cint(32) + SC_SEM_VALUE_MAX* = cint(33) + SC_SEMAPHORES* = cint(21) + SC_SHARED_MEMORY_OBJECTS* = cint(22) + SC_SHELL* = cint(157) + SC_SIGQUEUE_MAX* = cint(34) + SC_SPAWN* = cint(159) + SC_SPIN_LOCKS* = cint(154) + SC_SPORADIC_SERVER* = cint(160) + SC_STREAM_MAX* = cint(5) + SC_SYMLOOP_MAX* = cint(173) + SC_SYNCHRONIZED_IO* = cint(14) + SC_THREAD_ATTR_STACKADDR* = cint(77) + SC_THREAD_ATTR_STACKSIZE* = cint(78) + SC_THREAD_CPUTIME* = cint(139) + SC_THREAD_DESTRUCTOR_ITERATIONS* = cint(73) + SC_THREAD_KEYS_MAX* = cint(74) + SC_THREAD_PRIO_INHERIT* = cint(80) + SC_THREAD_PRIO_PROTECT* = cint(81) + SC_THREAD_PRIORITY_SCHEDULING* = cint(79) + SC_THREAD_PROCESS_SHARED* = cint(82) + SC_THREAD_SAFE_FUNCTIONS* = cint(68) + SC_THREAD_SPORADIC_SERVER* = cint(161) + SC_THREAD_STACK_MIN* = cint(75) + SC_THREAD_THREADS_MAX* = cint(76) + SC_THREADS* = cint(67) + SC_TIMEOUTS* = cint(164) + SC_TIMER_MAX* = cint(35) + SC_TIMERS* = cint(11) + SC_TRACE* = cint(181) + SC_TRACE_EVENT_FILTER* = cint(182) + SC_TRACE_INHERIT* = cint(183) + SC_TRACE_LOG* = cint(184) + SC_TTY_NAME_MAX* = cint(72) + SC_TYPED_MEMORY_OBJECTS* = cint(165) + SC_TZNAME_MAX* = cint(6) + SC_V6_ILP32_OFF32* = cint(176) + SC_V6_ILP32_OFFBIG* = cint(177) + SC_V6_LP64_OFF64* = cint(178) + SC_V6_LPBIG_OFFBIG* = cint(179) + SC_VERSION* = cint(29) + SC_XBS5_ILP32_OFF32* = cint(125) + SC_XBS5_ILP32_OFFBIG* = cint(126) + SC_XBS5_LP64_OFF64* = cint(127) + SC_XBS5_LPBIG_OFFBIG* = cint(128) + SC_XOPEN_CRYPT* = cint(92) + SC_XOPEN_ENH_I18N* = cint(93) + SC_XOPEN_LEGACY* = cint(129) + SC_XOPEN_REALTIME* = cint(130) + SC_XOPEN_REALTIME_THREADS* = cint(131) + SC_XOPEN_SHM* = cint(94) + SC_XOPEN_UNIX* = cint(91) + SC_XOPEN_VERSION* = cint(89) + SEEK_SET* = cint(0) + SEEK_CUR* = cint(1) + SEEK_END* = cint(2) + SEM_FAILED* = cast[pointer]((nil)) + IPC_CREAT* = cint(512) + IPC_EXCL* = cint(1024) + IPC_NOWAIT* = cint(2048) + IPC_PRIVATE* = cint(0) + IPC_RMID* = cint(0) + IPC_SET* = cint(1) + IPC_STAT* = cint(2) + S_IFMT* = cint(61440) + S_IFBLK* = cint(24576) + S_IFCHR* = cint(8192) + S_IFIFO* = cint(4096) + S_IFREG* = cint(32768) + S_IFDIR* = cint(16384) + S_IFLNK* = cint(40960) + S_IFSOCK* = cint(49152) + S_IRWXU* = cint(448) + S_IRUSR* = cint(256) + S_IWUSR* = cint(128) + S_IXUSR* = cint(64) + S_IRWXG* = cint(56) + S_IRGRP* = cint(32) + S_IWGRP* = cint(16) + S_IXGRP* = cint(8) + S_IRWXO* = cint(7) + S_IROTH* = cint(4) + S_IWOTH* = cint(2) + S_IXOTH* = cint(1) + S_ISUID* = cint(2048) + S_ISGID* = cint(1024) + S_ISVTX* = cint(512) + ST_RDONLY* = cint(1) + ST_NOSUID* = cint(2) + PROT_READ* = cint(1) + PROT_WRITE* = cint(2) + PROT_EXEC* = cint(4) + PROT_NONE* = cint(0) + MAP_SHARED* = cint(1) + MAP_PRIVATE* = cint(2) + MAP_FIXED* = cint(16) + MS_ASYNC* = cint(1) + MS_SYNC* = cint(4) + MS_INVALIDATE* = cint(2) + MCL_CURRENT* = cint(1) + MCL_FUTURE* = cint(2) + MAP_FAILED* = cast[pointer](0xffffffffffffffff) + POSIX_MADV_NORMAL* = cint(0) + POSIX_MADV_SEQUENTIAL* = cint(2) + POSIX_MADV_RANDOM* = cint(1) + POSIX_MADV_WILLNEED* = cint(3) + POSIX_MADV_DONTNEED* = cint(4) + CLOCKS_PER_SEC* = clong(1000000) + CLOCK_PROCESS_CPUTIME_ID* = cint(2) + CLOCK_THREAD_CPUTIME_ID* = cint(3) + CLOCK_REALTIME* = cint(0) + TIMER_ABSTIME* = cint(1) + CLOCK_MONOTONIC* = cint(1) + WNOHANG* = cint(1) + WUNTRACED* = cint(2) + WEXITED* = cint(4) + WSTOPPED* = cint(2) + WCONTINUED* = cint(8) + WNOWAIT* = cint(16777216) + SIGEV_NONE* = cint(1) + SIGEV_SIGNAL* = cint(0) + SIGEV_THREAD* = cint(2) + SIGABRT* = cint(6) + SIGALRM* = cint(14) + SIGBUS* = cint(7) + SIGCHLD* = cint(17) + SIGCONT* = cint(18) + SIGFPE* = cint(8) + SIGHUP* = cint(1) + SIGILL* = cint(4) + SIGINT* = cint(2) + SIGKILL* = cint(9) + SIGPIPE* = cint(13) + SIGQUIT* = cint(3) + SIGSEGV* = cint(11) + SIGSTOP* = cint(19) + SIGTERM* = cint(15) + SIGTSTP* = cint(20) + SIGTTIN* = cint(21) + SIGTTOU* = cint(22) + SIGUSR1* = cint(10) + SIGUSR2* = cint(12) + SIGPOLL* = cint(29) + SIGPROF* = cint(27) + SIGSYS* = cint(31) + SIGTRAP* = cint(5) + SIGURG* = cint(23) + SIGVTALRM* = cint(26) + SIGXCPU* = cint(24) + SIGXFSZ* = cint(25) + SA_NOCLDSTOP* = cint(1) + SIG_BLOCK* = cint(0) + SIG_UNBLOCK* = cint(1) + SIG_SETMASK* = cint(2) + SA_ONSTACK* = cint(134217728) + SA_RESETHAND* = cint(-2147483648) + SA_RESTART* = cint(268435456) + SA_SIGINFO* = cint(4) + SA_NOCLDWAIT* = cint(2) + SA_NODEFER* = cint(1073741824) + SS_ONSTACK* = cint(1) + SS_DISABLE* = cint(2) + MINSIGSTKSZ* = cint(2048) + SIGSTKSZ* = cint(8192) + NL_SETD* = cint(1) + NL_CAT_LOCALE* = cint(1) + SCHED_FIFO* = cint(1) + SCHED_RR* = cint(2) + SCHED_OTHER* = cint(0) + FD_SETSIZE* = cint(1024) + IF_NAMESIZE* = cint(16) + SCM_RIGHTS* = cint(1) + SOCK_DGRAM* = cint(2) + SOCK_RAW* = cint(3) + SOCK_SEQPACKET* = cint(5) + SOCK_STREAM* = cint(1) + SOL_SOCKET* = cint(1) + SO_ACCEPTCONN* = cint(30) + SO_BROADCAST* = cint(6) + SO_DEBUG* = cint(1) + SO_DONTROUTE* = cint(5) + SO_ERROR* = cint(4) + SO_KEEPALIVE* = cint(9) + SO_LINGER* = cint(13) + SO_OOBINLINE* = cint(10) + SO_RCVBUF* = cint(8) + SO_RCVLOWAT* = cint(18) + SO_RCVTIMEO* = cint(20) + SO_REUSEADDR* = cint(2) + SO_SNDBUF* = cint(7) + SO_SNDLOWAT* = cint(19) + SO_SNDTIMEO* = cint(21) + SO_TYPE* = cint(3) + SOMAXCONN* = cint(128) + MSG_CTRUNC* = cint(8) + MSG_DONTROUTE* = cint(4) + MSG_EOR* = cint(128) + MSG_OOB* = cint(1) + MSG_PEEK* = cint(2) + MSG_TRUNC* = cint(32) + MSG_WAITALL* = cint(256) + AF_INET* = cint(2) + AF_INET6* = cint(10) + AF_UNIX* = cint(1) + AF_UNSPEC* = cint(0) + SHUT_RD* = cint(0) + SHUT_RDWR* = cint(2) + SHUT_WR* = cint(1) + IPPROTO_IP* = cint(0) + IPPROTO_IPV6* = cint(41) + IPPROTO_ICMP* = cint(1) + IPPROTO_RAW* = cint(255) + IPPROTO_TCP* = cint(6) + IPPROTO_UDP* = cint(17) + INADDR_ANY* = cint(0) + INADDR_BROADCAST* = cint(-1) + INET_ADDRSTRLEN* = cint(16) + IPV6_JOIN_GROUP* = cint(20) + IPV6_LEAVE_GROUP* = cint(21) + IPV6_MULTICAST_HOPS* = cint(18) + IPV6_MULTICAST_IF* = cint(17) + IPV6_MULTICAST_LOOP* = cint(19) + IPV6_UNICAST_HOPS* = cint(16) + IPV6_V6ONLY* = cint(26) + IPPORT_RESERVED* = cint(1024) + HOST_NOT_FOUND* = cint(1) + NO_DATA* = cint(4) + NO_RECOVERY* = cint(3) + TRY_AGAIN* = cint(2) + AI_PASSIVE* = cint(1) + AI_CANONNAME* = cint(2) + AI_NUMERICHOST* = cint(4) + AI_NUMERICSERV* = cint(1024) + AI_V4MAPPED* = cint(8) + AI_ALL* = cint(16) + AI_ADDRCONFIG* = cint(32) + NI_NOFQDN* = cint(4) + NI_NUMERICHOST* = cint(1) + NI_NAMEREQD* = cint(8) + NI_NUMERICSERV* = cint(2) + NI_DGRAM* = cint(16) + EAI_AGAIN* = cint(-3) + EAI_BADFLAGS* = cint(-1) + EAI_FAIL* = cint(-4) + EAI_FAMILY* = cint(-6) + EAI_MEMORY* = cint(-10) + EAI_NONAME* = cint(-2) + EAI_SERVICE* = cint(-8) + EAI_SOCKTYPE* = cint(-7) + EAI_SYSTEM* = cint(-11) + EAI_OVERFLOW* = cint(-12) + POLLIN* = cshort(1) + POLLPRI* = cshort(2) + POLLOUT* = cshort(4) + POLLERR* = cshort(8) + POLLHUP* = cshort(16) + POLLNVAL* = cshort(32) + POSIX_SPAWN_RESETIDS* = cint(1) + POSIX_SPAWN_SETPGROUP* = cint(2) + POSIX_SPAWN_SETSCHEDPARAM* = cint(16) + POSIX_SPAWN_SETSCHEDULER* = cint(32) + POSIX_SPAWN_SETSIGDEF* = cint(4) + POSIX_SPAWN_SETSIGMASK* = cint(8) |