requires_threads.hpp
Go to the documentation of this file.
00001 //  (C) Copyright John Maddock 2003. 
00002 //  Use, modification and distribution are subject to the 
00003 //  Boost Software License, Version 1.0. (See accompanying file 
00004 //  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
00005 
00006 
00007 #ifndef BOOST_CONFIG_REQUIRES_THREADS_HPP
00008 #define BOOST_CONFIG_REQUIRES_THREADS_HPP
00009 
00010 #ifndef BOOST_CONFIG_HPP
00011 #  include <boost/config.hpp>
00012 #endif
00013 
00014 #if defined(BOOST_DISABLE_THREADS)
00015 
00016 //
00017 // special case to handle versions of gcc which don't currently support threads:
00018 //
00019 #if defined(__GNUC__) && ((__GNUC__ < 3) || (__GNUC_MINOR__ <= 3) || !defined(BOOST_STRICT_CONFIG))
00020 //
00021 // this is checked up to gcc 3.3:
00022 //
00023 #if defined(__sgi) || defined(__hpux)
00024 #  error "Multi-threaded programs are not supported by gcc on HPUX or Irix (last checked with gcc 3.3)"
00025 #endif
00026 
00027 #endif
00028 
00029 #  error "Threading support unavaliable: it has been explicitly disabled with BOOST_DISABLE_THREADS"
00030 
00031 #elif !defined(BOOST_HAS_THREADS)
00032 
00033 # if defined __COMO__
00034 //  Comeau C++
00035 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -D_MT (Windows) or -D_REENTRANT (Unix)"
00036 
00037 #elif defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC)
00038 //  Intel
00039 #ifdef _WIN32
00040 #  error "Compiler threading support is not turned on. Please set the correct command line options for threading: either /MT /MTd /MD or /MDd"
00041 #else
00042 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -openmp"
00043 #endif
00044 
00045 # elif defined __GNUC__
00046 //  GNU C++:
00047 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)"
00048 
00049 #elif defined __sgi
00050 //  SGI MIPSpro C++
00051 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -D_SGI_MP_SOURCE"
00052 
00053 #elif defined __DECCXX
00054 //  Compaq Tru64 Unix cxx
00055 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -pthread"
00056 
00057 #elif defined __BORLANDC__
00058 //  Borland
00059 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -tWM"
00060 
00061 #elif defined  __MWERKS__
00062 //  Metrowerks CodeWarrior
00063 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: either -runtime sm, -runtime smd, -runtime dm, or -runtime dmd"
00064 
00065 #elif defined  __SUNPRO_CC
00066 //  Sun Workshop Compiler C++
00067 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -mt"
00068 
00069 #elif defined __HP_aCC
00070 //  HP aCC
00071 #   error "Compiler threading support is not turned on. Please set the correct command line options for threading: -mt"
00072 
00073 #elif defined(__IBMCPP__)
00074 //  IBM Visual Age
00075 #   error "Compiler threading support is not turned on. Please compile the code with the xlC_r compiler"
00076 
00077 #elif defined _MSC_VER
00078 //  Microsoft Visual C++
00079 //
00080 //  Must remain the last #elif since some other vendors (Metrowerks, for
00081 //  example) also #define _MSC_VER
00082 #  error "Compiler threading support is not turned on. Please set the correct command line options for threading: either /MT /MTd /MD or /MDd"
00083 
00084 #else
00085 
00086 #  error "Compiler threading support is not turned on.  Please consult your compiler's documentation for the appropriate options to use"
00087 
00088 #endif // compilers
00089 
00090 #endif // BOOST_HAS_THREADS
00091 
00092 #endif // BOOST_CONFIG_REQUIRES_THREADS_HPP


appl
Author(s): petercai
autogenerated on Tue Jan 7 2014 11:02:29