|
Boost : |
From: Markus Schöpflin (markus.schoepflin_at_[hidden])
Date: 2005-04-28 06:45:49
Hello,
attached is a patch which makes the pool library honour the general boost
threading support flag. As a side effect, it also makes the pool library
usable on Tru64 because on that platform you can only include <pthread.h>
if you're actually compiling with -pthread.
Any objections to applying this patch, anyone?
Markus
Index: mutex.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/pool/detail/mutex.hpp,v
retrieving revision 1.6
diff -u -r1.6 mutex.hpp
--- mutex.hpp 28 Sep 2004 12:55:44 -0000 1.6
+++ mutex.hpp 28 Apr 2005 11:41:20 -0000
@@ -19,6 +19,10 @@
#define BOOST_MUTEX_HELPER_WIN32 1
#define BOOST_MUTEX_HELPER_PTHREAD 2
+#if !defined(BOOST_HAS_THREADS) && !defined(BOOST_NO_MT)
+# define BOOST_NO_MT
+#endif
+
#ifdef BOOST_NO_MT
// No multithreading -> make locks into no-ops
#define BOOST_MUTEX_HELPER BOOST_MUTEX_HELPER_NONE
@@ -37,12 +41,13 @@
#error Unable to determine platform mutex type; define BOOST_NO_MT to assume single-threaded
#endif
-
-#ifdef BOOST_WINDOWS
- #include <windows.h>
-#endif
-#ifdef _POSIX_THREADS
- #include <pthread.h>
+#ifndef BOOST_NO_MT
+# ifdef BOOST_WINDOWS
+# include <windows.h>
+# endif
+# ifdef _POSIX_THREADS
+# include <pthread.h>
+# endif
#endif
namespace boost {
@@ -50,6 +55,8 @@
namespace details {
namespace pool {
+#ifndef BOOST_NO_MT
+
#ifdef BOOST_WINDOWS
class win32_mutex
@@ -102,6 +109,8 @@
#endif // defined(_POSIX_THREADS)
+#endif // !defined(BOOST_NO_MT)
+
class null_mutex
{
private:
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk