X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=boost%2Fboost%2Fdetail%2Flightweight_mutex.hpp;h=9155940738bb15be12de08f3e96aeaeb1272d445;hb=fce4ab0e79bfda9651d7d7f3c951bfb5d7516fc5;hp=1310da375596714da19547580cc3f591ac8e70a4;hpb=e1644a68eb123c267a7ef2e651c66b788c38f03a;p=lyx.git diff --git a/boost/boost/detail/lightweight_mutex.hpp b/boost/boost/detail/lightweight_mutex.hpp index 1310da3755..9155940738 100644 --- a/boost/boost/detail/lightweight_mutex.hpp +++ b/boost/boost/detail/lightweight_mutex.hpp @@ -1,14 +1,16 @@ #ifndef BOOST_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED #define BOOST_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED -#if _MSC_VER >= 1020 -#pragma once +// MS compatible compilers support #pragma once + +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +# pragma once #endif // // boost/detail/lightweight_mutex.hpp - lightweight mutex // -// Copyright (c) 2002 Peter Dimov and Multi Media Ltd. +// Copyright (c) 2002, 2003 Peter Dimov and Multi Media Ltd. // // Permission to copy, use, modify, sell and distribute this software // is granted provided this copyright notice appears in all copies. @@ -64,15 +66,23 @@ // shared_ptr_timing_test.cpp will compile succesfully with a stub do-nothing // pthreads library, since it doesn't create any threads. -#ifndef BOOST_HAS_THREADS -# include +#if (defined(WIN32) || defined(_WIN32) || defined(__WIN32__)) && !defined(BOOST_LWM_USE_CRITICAL_SECTION) && !defined(BOOST_LWM_USE_PTHREADS) +# define BOOST_LWM_WIN32 +#endif + +#if !defined(BOOST_HAS_THREADS) +# if defined(BOOST_LWM_WIN32) +# include +# else +# include +# endif #elif defined(BOOST_LWM_USE_SPINLOCK) && defined(BOOST_USE_ASM_ATOMIC_H) # include #elif defined(BOOST_LWM_USE_CRITICAL_SECTION) # include #elif defined(BOOST_LWM_USE_PTHREADS) # include -#elif defined(WIN32) || defined(_WIN32) || defined(__WIN32__) +#elif defined(BOOST_LWM_WIN32) # include #elif defined(BOOST_LWM_USE_SPINLOCK) && defined(__sgi) # include