push_options.h 967 B

12345678910111213141516171819202122232425262728293031
  1. // Copyright Antony Polukhin, 2016-2021.
  2. //
  3. // Distributed under the Boost Software License, Version 1.0. (See
  4. // accompanying file LICENSE_1_0.txt or copy at
  5. // http://www.boost.org/LICENSE_1_0.txt)
  6. // No include guards! Intentionally.
  7. // Link or header only
  8. #if !defined(BOOST_STACKTRACE_LINK) && defined(BOOST_STACKTRACE_DYN_LINK)
  9. # define BOOST_STACKTRACE_LINK
  10. #endif
  11. #if defined(BOOST_STACKTRACE_LINK) && !defined(BOOST_STACKTRACE_DYN_LINK) && defined(BOOST_ALL_DYN_LINK)
  12. # define BOOST_STACKTRACE_DYN_LINK
  13. #endif
  14. #ifdef BOOST_STACKTRACE_LINK
  15. # if defined(BOOST_STACKTRACE_DYN_LINK)
  16. # ifdef BOOST_STACKTRACE_INTERNAL_BUILD_LIBS
  17. # define BOOST_STACKTRACE_FUNCTION BOOST_SYMBOL_EXPORT
  18. # else
  19. # define BOOST_STACKTRACE_FUNCTION BOOST_SYMBOL_IMPORT
  20. # endif
  21. # else
  22. # define BOOST_STACKTRACE_FUNCTION
  23. # endif
  24. #elif !defined(BOOST_STACKTRACE_DOXYGEN_INVOKED)
  25. # define BOOST_STACKTRACE_FUNCTION inline
  26. #endif