For pthread rwlock use _XOPEN_SOURCE define.
[silc.git] / includes / silc.h.in
index e633638d87a0a1ba6ee3b9e84b40bb7a739592d5..85810c1d327f3726f5741f8192d4ba8b7f5587dc 100644 (file)
@@ -4,7 +4,7 @@
 
   Author: Pekka Riikonen <priikone@silcnet.org>
 
-  Copyright (C) 1997 - 2006 Pekka Riikonen
+  Copyright (C) 1997 - 2007 Pekka Riikonen
 
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
@@ -90,6 +90,19 @@ extern "C" {
 #define DLLAPI
 #endif
 
+#ifdef SILC_HAVE_PTHREAD
+/* For pthreads rwlock support */
+#ifndef _XOPEN_SOURCE
+#define _XOPEN_SOURCE 500
+#else
+#ifdef _XOPEN_SOURCE < 500
+#define _XOPEN_SOURCE_SAVE _XOPEN_SOURCE
+#undef _XOPEN_SOURCE
+#define _XOPEN_SOURCE 500
+#endif /* _XOPEN_SOURCE < 500 */
+#endif /* _XOPEN_SOURCE */
+#endif /* SILC_HAVE_PTHREAD */
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -181,6 +194,11 @@ extern "C" {
 
 #ifdef SILC_HAVE_PTHREAD
 #include <pthread.h>
+#ifdef _XOPEN_SOURCE_SAVE
+#undef _XOPEN_SOURCE
+#define _XOPEN_SOURCE _XOPEN_SOURCE_SAVE
+#undef _XOPEN_SOURCE_SAVE
+#endif /* _XOPEN_SOURCE_SAVE */
 #endif
 
 #ifdef HAVE_STDDEF_H
@@ -222,6 +240,7 @@ extern "C" {
 /* SILC util library includes */
 #include "silcstack.h"
 #include "silcmemory.h"
+#include "silcsnprintf.h"
 
 /* Math library includes */
 #include "silcmp.h"