;;; layer.
 (define-alien-type fd-mask unsigned-long)
 
-(eval-when (:compile-toplevel :load-toplevel :execute)
-  (defconstant fd-setsize 1024))
-
 (define-alien-type nil
   (struct fd-set
           (fds-bits (array fd-mask #.(/ fd-setsize
 
 #endif
 
 #include <sys/stat.h>
+#include <sys/select.h>
 #include <fcntl.h>
 #include <unistd.h>
 #include <signal.h>
 
     printf("(in-package \"SB!UNIX\")\n\n");
 
+    defconstant("fd-setsize", FD_SETSIZE);
+
     printf(";;; langinfo\n");
     defconstant("codeset", CODESET);
 
 
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.42.39"
+"1.0.42.40"