ChipMaster's trial hacks on C++CMS starting with v1.2.1. Not sure I'll follow on with the v2 since it looks to be breaking and mostly frivolous.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

90 lines
2.0 KiB

  1. //
  2. // Copyright (C) 2009-2012 Artyom Beilis (Tonkikh)
  3. //
  4. // Distributed under the Boost Software License, Version 1.0. (See
  5. // accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8. #ifndef BOOSTER_CONFIG_H
  9. #define BOOSTER_CONFIG_H
  10. #if defined(__WIN32) || defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__)
  11. # define BOOSTER_SYMBOL_VISIBLE
  12. # if defined(DLL_EXPORT)
  13. # if defined(BOOSTER_SOURCE)
  14. # define BOOSTER_API __declspec(dllexport)
  15. # else
  16. # define BOOSTER_API __declspec(dllimport)
  17. # endif
  18. # else
  19. # define BOOSTER_API
  20. # endif
  21. #else // ELF BINARIES
  22. # if defined(BOOSTER_SOURCE) && defined(BOOSTER_VISIBILITY_SUPPORT)
  23. # define BOOSTER_API __attribute__ ((visibility("default")))
  24. # define BOOSTER_SYMBOL_VISIBLE __attribute__ ((visibility("default")))
  25. # else
  26. # define BOOSTER_API
  27. # define BOOSTER_SYMBOL_VISIBLE
  28. # endif
  29. #endif
  30. #if (defined(WIN32) || defined(_WIN32) || defined(__WIN32)) && !defined(__CYGWIN__)
  31. #define BOOSTER_WIN_NATIVE
  32. #endif
  33. #if defined(__CYGWIN__)
  34. #define BOOSTER_CYGWIN
  35. #endif
  36. #if defined(BOOSTER_WIN_NATIVE) || defined(BOOSTER_CYGWIN)
  37. #define BOOSTER_WIN32
  38. #endif
  39. #if !defined(BOOSTER_WIN_NATIVE)
  40. #define BOOSTER_POSIX
  41. #endif
  42. #if defined(_MSC_VER)
  43. #define BOOSTER_MSVC
  44. // This warning is really not revevant
  45. #pragma warning (disable: 4275 4251)
  46. #endif
  47. #undef BOOSTER_HAS_CHAR16_T
  48. #undef BOOSTER_HAS_CHAR32_T
  49. #undef BOOSTER_NO_STD_WSTRING
  50. #undef BOOSTER_NO_SWPRINTF
  51. #ifdef __GNUC__
  52. # define BOOSTER_GCC
  53. #endif
  54. #if defined(__GNUC__) && __GNUC__ < 4
  55. # define BOOSTER_GCC3
  56. #endif
  57. #if defined(__CYGWIN__) || (defined(BOOSTER_WIN32) && defined(BOOSTER_GCC3))
  58. # define BOOSTER_NO_STD_WSTRING
  59. #endif
  60. #if defined(BOOSTER_WIN32) && defined(BOOSTER_GCC)
  61. # define BOOST_NO_SWPRINTF
  62. #endif
  63. #if defined __GNUC__ || defined __clang__
  64. #define BOOSTER_UNUSED __attribute__((unused))
  65. #else
  66. #define BOOSTER_UNUSED
  67. #endif
  68. #if defined __clang__
  69. #define BOOSTER_UNUSED_MEMBER __attribute__((unused))
  70. #else
  71. #define BOOSTER_UNUSED_MEMBER
  72. #endif
  73. #endif /// BOOSTER_CONFIG_H