Index: boost/atomic/detail/config.hpp =================================================================== --- boost/atomic/detail/config.hpp (revision 0) +++ boost/atomic/detail/config.hpp (working copy) @@ -0,0 +1,56 @@ +// boost/atomic/config.hpp -------------------------------------------------// + +// Copyright Beman Dawes 2003, 2006, 2008 +// Copyright 2012 Juergen Hunold + +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org/libs/atomic for documentation. + +#ifndef BOOST_ATOMIC_CONFIG_HPP +#define BOOST_ATOMIC_CONFIG_HPP + +#include + +// enable dynamic linking on Windows ---------------------------------------// + +// we need to import/export our code only if the user has specifically +// asked for it by defining either BOOST_ALL_DYN_LINK if they want all boost +// libraries to be dynamically linked, or BOOST_ATOMIC_DYN_LINK +// if they want just this one to be dynamically liked: +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_ATOMIC_DYN_LINK) +// export if this is our own source, otherwise import: +#ifdef BOOST_ATOMIC_SOURCE +# define BOOST_ATOMIC_DECL BOOST_SYMBOL_EXPORT +#else +# define BOOST_ATOMIC_DECL BOOST_SYMBOL_IMPORT +#endif // BOOST_ATOMIC_SOURCE +#endif // DYN_LINK +// +// if BOOST_ATOMIC_DECL isn't defined yet define it now: +#ifndef BOOST_ATOMIC_DECL +#define BOOST_ATOMIC_DECL +#endif + + +// enable automatic library variant selection ------------------------------// + +#if !defined(BOOST_ATOMIC_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_ATOMIC_NO_LIB) +// +// Set the name of our library; this will get undef'ed by auto_link.hpp +// once it's done with it: +// +#define BOOST_LIB_NAME boost_atomic +// +// If we're importing code from a dll, then tell auto_link.hpp about it: +// +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_ATOMIC_DYN_LINK) +# define BOOST_DYN_LINK +#endif +// +// And include the header that does the work: +// +#include +#endif // auto-linking disabled +#endif // BOOST_ATOMIC_CONFIG_HPP Property changes on: boost/atomic/detail/config.hpp ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/x-c++hdr \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Index: boost/atomic/detail/lockpool.hpp =================================================================== --- boost/atomic/detail/lockpool.hpp (revision 79956) +++ boost/atomic/detail/lockpool.hpp (working copy) @@ -7,6 +7,7 @@ // See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) +#include #ifndef BOOST_ATOMIC_FLAG_LOCK_FREE #include @@ -31,7 +32,7 @@ } }; private: - static mutex pool_[41]; + static BOOST_ATOMIC_DECL mutex pool_[41]; static mutex & lock_for(const volatile void * addr) @@ -69,7 +70,7 @@ }; private: - static atomic_flag pool_[41]; + static BOOST_ATOMIC_DECL atomic_flag pool_[41]; static lock_type & lock_for(const volatile void * addr) Index: libs/atomic/build/Jamfile.v2 =================================================================== --- libs/atomic/build/Jamfile.v2 (revision 79956) +++ libs/atomic/build/Jamfile.v2 (working copy) @@ -20,7 +20,15 @@ lib boost_atomic : atomic_sources - ; + : # requirements + shared:BOOST_ATOMIC_DYN_LINK=1 + static:BOOST_ATOMIC_STATIC_LINK=1 + BOOST_ATOMIC_SOURCE + : # default-build + : # usage-requirements + shared:BOOST_ATOMIC_DYN_LINK=1 + static:BOOST_ATOMIC_STATIC_LINK=1 +; boost-install boost_atomic ; Index: libs/atomic/test/Jamfile.v2 =================================================================== --- libs/atomic/test/Jamfile.v2 (revision 79956) +++ libs/atomic/test/Jamfile.v2 (working copy) @@ -12,7 +12,6 @@ : requirements ../../thread/build//boost_thread /boost/atomic//boost_atomic - static ; test-suite atomic