0.7.4.40:
[sbcl.git] / src / runtime / undefineds.h
index 0688a08..c8ec517 100644 (file)
@@ -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."
  */
 
 /*
@@ -12,7 +28,7 @@
  * provided with absolutely no warranty. See the COPYING and CREDITS
  * files for more information.
  */
-
+   
 /* Pick up all the syscalls. */
 F(accept)
 F(access)
@@ -56,9 +72,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,15 +145,13 @@ 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(__i386__)
 F(sigreturn)
 #endif
-#if !defined(SVR4) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
+#if !defined(SVR4)
 F(sigsetmask)
+#endif
+#if !defined(SVR4) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
 F(sigstack)
 F(sigvec)
 #endif
@@ -153,7 +164,7 @@ F(swapon)
 F(symlink)
 F(sync)
 F(syscall)
-#if defined(hpux) || defined(SVR4) || defined(linux)
+#if defined(hpux) || defined(SVR4) || defined(__linux__)
 F(closedir)
 F(opendir)
 #if defined(readdir)
@@ -202,7 +213,7 @@ F(wait3)
 F(write)
 F(writev)
 
-/* Math routines. */
+/* math routines */
 F(cos)
 F(sin)
 F(tan)
@@ -234,11 +245,14 @@ F(sqrt)
 #endif
 F(hypot)
 
-/* Network support. */
+/* string things */
+F(strlen)
+
+/* network support */
 F(gethostbyname)
 F(gethostbyaddr)
 
-/* Other miscellaneous things. */
+/* other miscellaneous things */
 #if defined(SVR4) || defined(__FreeBSD__)
 F(setpgid)
 F(getpgid)
@@ -249,9 +263,7 @@ D(daylight)
 #endif
 D(tzname)
 #endif
-#if !defined (SOLARIS) ||  defined(SOLARIS25)
-F(getwd)
-#endif
+F(getcwd)
 F(ttyname)
 
 #ifdef irix