annotate DEPENDENCIES/generic/include/boost/asio/detail/push_options.hpp @ 46:d572322e2efe

Fix to .cat file check (was susceptible to DOS line-endings) and subrepo update
author Chris Cannam
date Thu, 07 Aug 2014 14:39:38 +0100
parents 2665513ce2d3
children c530137014c0
rev   line source
Chris@16 1 //
Chris@16 2 // detail/push_options.hpp
Chris@16 3 // ~~~~~~~~~~~~~~~~~~~~~~~
Chris@16 4 //
Chris@16 5 // Copyright (c) 2003-2013 Christopher M. Kohlhoff (chris at kohlhoff dot com)
Chris@16 6 //
Chris@16 7 // Distributed under the Boost Software License, Version 1.0. (See accompanying
Chris@16 8 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
Chris@16 9 //
Chris@16 10
Chris@16 11 // No header guard
Chris@16 12
Chris@16 13 #if defined(__COMO__)
Chris@16 14
Chris@16 15 // Comeau C++
Chris@16 16
Chris@16 17 #elif defined(__DMC__)
Chris@16 18
Chris@16 19 // Digital Mars C++
Chris@16 20
Chris@16 21 #elif defined(__INTEL_COMPILER) || defined(__ICL) \
Chris@16 22 || defined(__ICC) || defined(__ECC)
Chris@16 23
Chris@16 24 // Intel C++
Chris@16 25
Chris@16 26 #elif defined(__GNUC__)
Chris@16 27
Chris@16 28 // GNU C++
Chris@16 29
Chris@16 30 # if defined(__MINGW32__) || defined(__CYGWIN__)
Chris@16 31 # pragma pack (push, 8)
Chris@16 32 # endif
Chris@16 33
Chris@16 34 # if defined(__OBJC__)
Chris@16 35 # if !defined(__APPLE_CC__) || (__APPLE_CC__ <= 1)
Chris@16 36 # if !defined(BOOST_ASIO_DISABLE_OBJC_WORKAROUND)
Chris@16 37 # if !defined(Protocol) && !defined(id)
Chris@16 38 # define Protocol cpp_Protocol
Chris@16 39 # define id cpp_id
Chris@16 40 # define BOOST_ASIO_OBJC_WORKAROUND
Chris@16 41 # endif
Chris@16 42 # endif
Chris@16 43 # endif
Chris@16 44 # endif
Chris@16 45
Chris@16 46 #elif defined(__KCC)
Chris@16 47
Chris@16 48 // Kai C++
Chris@16 49
Chris@16 50 #elif defined(__sgi)
Chris@16 51
Chris@16 52 // SGI MIPSpro C++
Chris@16 53
Chris@16 54 #elif defined(__DECCXX)
Chris@16 55
Chris@16 56 // Compaq Tru64 Unix cxx
Chris@16 57
Chris@16 58 #elif defined(__ghs)
Chris@16 59
Chris@16 60 // Greenhills C++
Chris@16 61
Chris@16 62 #elif defined(__BORLANDC__)
Chris@16 63
Chris@16 64 // Borland C++
Chris@16 65
Chris@16 66 # pragma option push -a8 -b -Ve- -Vx- -w-inl -vi-
Chris@16 67 # pragma nopushoptwarn
Chris@16 68 # pragma nopackwarning
Chris@16 69 # if !defined(__MT__)
Chris@16 70 # error Multithreaded RTL must be selected.
Chris@16 71 # endif // !defined(__MT__)
Chris@16 72
Chris@16 73 #elif defined(__MWERKS__)
Chris@16 74
Chris@16 75 // Metrowerks CodeWarrior
Chris@16 76
Chris@16 77 #elif defined(__SUNPRO_CC)
Chris@16 78
Chris@16 79 // Sun Workshop Compiler C++
Chris@16 80
Chris@16 81 #elif defined(__HP_aCC)
Chris@16 82
Chris@16 83 // HP aCC
Chris@16 84
Chris@16 85 #elif defined(__MRC__) || defined(__SC__)
Chris@16 86
Chris@16 87 // MPW MrCpp or SCpp
Chris@16 88
Chris@16 89 #elif defined(__IBMCPP__)
Chris@16 90
Chris@16 91 // IBM Visual Age
Chris@16 92
Chris@16 93 #elif defined(_MSC_VER)
Chris@16 94
Chris@16 95 // Microsoft Visual C++
Chris@16 96 //
Chris@16 97 // Must remain the last #elif since some other vendors (Metrowerks, for example)
Chris@16 98 // also #define _MSC_VER
Chris@16 99
Chris@16 100 # pragma warning (disable:4103)
Chris@16 101 # pragma warning (push)
Chris@16 102 # pragma warning (disable:4127)
Chris@16 103 # pragma warning (disable:4180)
Chris@16 104 # pragma warning (disable:4244)
Chris@16 105 # pragma warning (disable:4355)
Chris@16 106 # pragma warning (disable:4510)
Chris@16 107 # pragma warning (disable:4512)
Chris@16 108 # pragma warning (disable:4610)
Chris@16 109 # pragma warning (disable:4675)
Chris@16 110 # if defined(_M_IX86) && defined(_Wp64)
Chris@16 111 // The /Wp64 option is broken. If you want to check 64 bit portability, use a
Chris@16 112 // 64 bit compiler!
Chris@16 113 # pragma warning (disable:4311)
Chris@16 114 # pragma warning (disable:4312)
Chris@16 115 # endif // defined(_M_IX86) && defined(_Wp64)
Chris@16 116 # pragma pack (push, 8)
Chris@16 117 // Note that if the /Og optimisation flag is enabled with MSVC6, the compiler
Chris@16 118 // has a tendency to incorrectly optimise away some calls to member template
Chris@16 119 // functions, even though those functions contain code that should not be
Chris@16 120 // optimised away! Therefore we will always disable this optimisation option
Chris@16 121 // for the MSVC6 compiler.
Chris@16 122 # if (_MSC_VER < 1300)
Chris@16 123 # pragma optimize ("g", off)
Chris@16 124 # endif
Chris@16 125 # if !defined(_MT)
Chris@16 126 # error Multithreaded RTL must be selected.
Chris@16 127 # endif // !defined(_MT)
Chris@16 128
Chris@16 129 # if defined(__cplusplus_cli) || defined(__cplusplus_winrt)
Chris@16 130 # if !defined(BOOST_ASIO_DISABLE_CLR_WORKAROUND)
Chris@16 131 # if !defined(generic)
Chris@16 132 # define generic cpp_generic
Chris@16 133 # define BOOST_ASIO_CLR_WORKAROUND
Chris@16 134 # endif
Chris@16 135 # endif
Chris@16 136 # endif
Chris@16 137
Chris@16 138 #endif