Chris@16: #ifndef BOOST_SERIALIZATION_CONFIG_HPP Chris@16: #define BOOST_SERIALIZATION_CONFIG_HPP Chris@16: Chris@16: // config.hpp ---------------------------------------------// Chris@16: Chris@16: // (c) Copyright Robert Ramey 2004 Chris@16: // Use, modification, and distribution is subject to the Boost Software Chris@16: // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at Chris@16: // http://www.boost.org/LICENSE_1_0.txt) Chris@16: Chris@16: // See library home page at http://www.boost.org/libs/serialization Chris@16: Chris@16: //----------------------------------------------------------------------------// Chris@16: Chris@16: // This header implements separate compilation features as described in Chris@16: // http://www.boost.org/more/separate_compilation.html Chris@16: Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: Chris@16: // note: this version incorporates the related code into the the Chris@16: // the same library as BOOST_ARCHIVE. This could change some day in the Chris@16: // future Chris@16: Chris@16: // if BOOST_SERIALIZATION_DECL is defined undefine it now: Chris@16: #ifdef BOOST_SERIALIZATION_DECL Chris@16: #undef BOOST_SERIALIZATION_DECL Chris@16: #endif Chris@16: Chris@16: #ifdef BOOST_HAS_DECLSPEC // defined in config system Chris@16: // we need to import/export our code only if the user has specifically Chris@16: // asked for it by defining either BOOST_ALL_DYN_LINK if they want all boost Chris@16: // libraries to be dynamically linked, or BOOST_SERIALIZATION_DYN_LINK Chris@16: // if they want just this one to be dynamically liked: Chris@16: #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SERIALIZATION_DYN_LINK) Chris@16: #if !defined(BOOST_DYN_LINK) Chris@16: #define BOOST_DYN_LINK Chris@16: #endif Chris@16: // export if this is our own source, otherwise import: Chris@16: #if defined(BOOST_SERIALIZATION_SOURCE) Chris@16: #if defined(__BORLANDC__) Chris@16: #define BOOST_SERIALIZATION_DECL(T) T __export Chris@16: #else Chris@16: #define BOOST_SERIALIZATION_DECL(T) __declspec(dllexport) T Chris@16: #endif Chris@16: #else Chris@16: #if defined(__BORLANDC__) Chris@16: #define BOOST_SERIALIZATION_DECL(T) T __import Chris@16: #else Chris@16: #define BOOST_SERIALIZATION_DECL(T) __declspec(dllimport) T Chris@16: #endif Chris@16: #endif // defined(BOOST_SERIALIZATION_SOURCE) Chris@16: #endif // defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SERIALIZATION_DYN_LINK) Chris@16: #endif // BOOST_HAS_DECLSPEC Chris@16: Chris@16: // if BOOST_SERIALIZATION_DECL isn't defined yet define it now: Chris@16: #ifndef BOOST_SERIALIZATION_DECL Chris@16: #define BOOST_SERIALIZATION_DECL(T) T Chris@16: #endif Chris@16: Chris@16: // enable automatic library variant selection ------------------------------// Chris@16: Chris@16: #if !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_SERIALIZATION_NO_LIB) \ Chris@16: && !defined(BOOST_ARCHIVE_SOURCE) && !defined(BOOST_WARCHIVE_SOURCE) \ Chris@16: && !defined(BOOST_SERIALIZATION_SOURCE) Chris@16: // Chris@16: // Set the name of our library, this will get undef'ed by auto_link.hpp Chris@16: // once it's done with it: Chris@16: // Chris@16: #define BOOST_LIB_NAME boost_serialization Chris@16: // Chris@16: // If we're importing code from a dll, then tell auto_link.hpp about it: Chris@16: // Chris@16: #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SERIALIZATION_DYN_LINK) Chris@16: # define BOOST_DYN_LINK Chris@16: #endif Chris@16: // Chris@16: // And include the header that does the work: Chris@16: // Chris@16: #include Chris@16: Chris@16: #endif Chris@16: Chris@16: #endif // BOOST_SERIALIZATION_CONFIG_HPP