diff --git a/lib/setup.h b/lib/setup.h
index 6d28e3c790934cfeeda94c328ce4da7cb9de6425..c343fb09374f94c2506db52f6253b94fc79f98c8 100644
--- a/lib/setup.h
+++ b/lib/setup.h
@@ -44,6 +44,14 @@
 typedef char bool;
 #endif                     /* (rabe) */
 
+#ifdef NEED_REENTRANT
+/* Solaris machines needs _REENTRANT set for a few function prototypes and
+   things to appear in the #include files. We need to #define it before all
+   #include files */
+#define _REENTRANT
+#endif
+
+
 #include <stdio.h>
 #ifndef OS
 #ifdef WIN32