X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fundefineds.h;h=b1cb325e5580d1031256d669b709db627ed6d88b;hb=4ba392170e98744f0ef0b8e08a5d42b988f1d0c9;hp=0826b59382c7db6f32e6683f761a70bd916f4d3d;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/runtime/undefineds.h b/src/runtime/undefineds.h index 0826b59..b1cb325 100644 --- a/src/runtime/undefineds.h +++ b/src/runtime/undefineds.h @@ -1,5 +1,21 @@ /* * routines that must be linked into the core for Lisp to work + * + * but note this is only the BSD version, as per the FIXME + * + * FIXME: It's tedious and error-prone having to edit both this file and + * the analogous ldso-stubs.S file when we change the references to + * functions, enough so that it would probably be good to rewrite + * both files in terms of a shared list of function names. + * E.g. the function names could be in shared-function-names.h + * SHARED_FUNCTION(cos) + * SHARED_FUNCTION(sinh) + * SHARED_FUNCTION(strlen) + * etc. and the per-OS files could look like + * #define SHARED_FUNCTION(f) .... + * #include "shared-function-names.h" + * ...then going on to do OS-specific things + * "Once and only once." */ /* @@ -13,23 +29,17 @@ * files for more information. */ -/* - * $Header$ - */ - /* Pick up all the syscalls. */ F(accept) F(access) F(acct) -#ifndef hpux -F(adjtime) -#endif F(bind) F(brk) #if defined(hpux) \ || defined(SVR4) \ || defined(__FreeBSD__) \ - || defined(__OpenBSD__) + || defined(__OpenBSD__) \ + || defined(__NetBSD__) F(cfgetospeed) F(cfsetospeed) F(cfgetispeed) @@ -46,6 +56,7 @@ F(dup) F(dup2) F(execve) F(exit) +F(_exit) F(fchmod) F(fchown) F(fcntl) @@ -63,9 +74,6 @@ F(getegid) F(geteuid) F(getgid) F(getgroups) -#if !defined (SOLARIS) || defined(SOLARIS25) -F(gethostid) -#endif F(gethostname) F(getitimer) #if !defined(hpux) && !defined(SVR4) || defined(SOLARIS25) @@ -132,57 +140,46 @@ F(sethostname) #endif F(setitimer) F(setpgrp) +F(setsid) #if !defined(SVR4) || defined(SOLARIS25) F(setpriority) #endif -#if !defined(mach) \ - && !defined(SOLARIS) \ - && !defined(__FreeBSD__) \ - && !defined(__OpenBSD__) \ - && !defined(SUNOS) \ - && !defined(osf1) \ - && !defined(irix) \ - && !defined(hpux) -F(setquota) -#endif -#if !defined(hpux) && !defined(SVR4) || defined(SOLARIS25) -F(setregid) -F(setreuid) -#endif F(setrlimit) F(setsockopt) F(settimeofday) F(shutdown) -#ifndef SVR4 -F(sigblock) -#endif -F(sigpause) -#if !defined(ibmrt) && !defined(hpux) && !defined(SVR4) && !defined(__i386__) +#if !defined(hpux) && !defined(SVR4) && !defined(LISP_FEATURE_X86) F(sigreturn) #endif -#if !defined(SVR4) && !defined(__FreeBSD__) && !defined(__OpenBSD__) +#if !defined(SVR4) F(sigsetmask) +#endif +#if !defined(SVR4) && !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) F(sigstack) F(sigvec) #endif F(socket) F(socketpair) F(stat) -#ifndef SVR4 +#if !defined(SVR4) && !defined(__OpenBSD__) F(swapon) #endif F(symlink) F(sync) F(syscall) -#if defined(hpux) || defined(SVR4) +#if defined(hpux) || defined(SVR4) || defined(__linux__) F(closedir) F(opendir) +#if defined(readdir) +#undef reddir +#endif F(readdir) #endif #if defined(hpux) \ || defined(SVR4) \ || defined(__FreeBSD__) \ || defined(__OpenBSD__) \ + || defined(__NetBSD__) \ || defined(__linux__) F(tcgetattr) F(tcsetattr) @@ -200,7 +197,8 @@ F(umask) && !defined(parisc) \ && !defined(SOLARIS) \ && !defined(__OpenBSD__) \ - && !defined(__FreeBSD__) + && !defined(__FreeBSD__) \ + && !defined(__NetBSD__) F(umount) #endif F(unlink) @@ -210,17 +208,18 @@ F(utimes) #ifndef irix F(vfork) #endif -#if !defined(osf1) && !defined(__FreeBSD__) && !defined(__OpenBSD__) +#if !defined(osf1) && !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) F(vhangup) #endif F(wait) +F(waitpid) #if !defined(SOLARIS) || defined(SOLARIS25) F(wait3) #endif F(write) F(writev) -/* Math routines. */ +/* math routines */ F(cos) F(sin) F(tan) @@ -247,33 +246,40 @@ F(pow) #ifndef hpux F(cbrt) #endif -#ifndef __i386__ +#ifndef LISP_FEATURE_X86 F(sqrt) #endif F(hypot) -/* Network support. */ +/* string things */ +F(strlen) + +/* network support */ F(gethostbyname) F(gethostbyaddr) -/* Other miscellaneous things. */ -#if defined(SVR4) +/* other miscellaneous things */ +/* FIXME: NetBSD plays some renaming games, and so cannot simply + reference symbols here. "NetBSD needs to get fixed here too PEM + 2004-03-27" */ +#if defined(SVR4) || defined(__FreeBSD__) F(setpgid) F(getpgid) D(timezone) +#if !defined(__FreeBSD__) D(altzone) D(daylight) -D(tzname) -F(dlopen) -F(dlsym) -F(dlclose) -F(dlerror) #endif -#if !defined (SOLARIS) || defined(SOLARIS25) -F(getwd) +D(tzname) #endif +F(getcwd) F(ttyname) #ifdef irix F(_getpty) #endif + +F(dlopen) +F(dlsym) +F(dlclose) +F(dlerror)