auto_link.hpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // (C) Copyright Ion Gaztanaga 2007-2013. Distributed under the Boost
  4. // Software License, Version 1.0. (See accompanying file
  5. // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. //
  7. // See http://www.boost.org/libs/container for documentation.
  8. //
  9. //////////////////////////////////////////////////////////////////////////////
  10. #ifndef BOOST_CONTAINER_DETAIL_AUTO_LINK_HPP_INCLUDED
  11. #define BOOST_CONTAINER_DETAIL_AUTO_LINK_HPP_INCLUDED
  12. #ifndef BOOST_CONFIG_HPP
  13. # include <boost/config.hpp>
  14. #endif
  15. #if defined(BOOST_HAS_PRAGMA_ONCE)
  16. # pragma once
  17. #endif
  18. //Define BOOST_CONTAINER_DYNAMIC_LINKING which is independent from BOOST_*_NO_LIB
  19. //and is needed is some tests that need to disable some checks (like operator new replacements)
  20. //that don't work across DLL boundaries
  21. #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_CONTAINER_DYN_LINK)
  22. # define BOOST_CONTAINER_DYNAMIC_LINKING
  23. #endif
  24. //
  25. // Automatically link to the correct build variant where possible.
  26. //
  27. #if !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_CONTAINER_NO_LIB) && !defined(BOOST_CONTAINER_SOURCE)
  28. //
  29. // Set the name of our library, this will get undef'ed by auto_link.hpp
  30. // once it's done with it:
  31. //
  32. #define BOOST_LIB_NAME boost_container
  33. //
  34. // If we're importing code from a dll, then tell auto_link.hpp about it:
  35. //
  36. #if defined(BOOST_CONTAINER_DYNAMIC_LINKING)
  37. # define BOOST_DYN_LINK
  38. #endif
  39. //
  40. // And include the header that does the work:
  41. //
  42. #include <boost/config/auto_link.hpp>
  43. #endif // auto-linking disabled
  44. #endif //#ifndef BOOST_CONTAINER_DETAIL_AUTO_LINK_HPP_INCLUDED