Index: boost/thread/detail/config.hpp =================================================================== --- boost/thread/detail/config.hpp (revision 47258) +++ boost/thread/detail/config.hpp (working copy) @@ -45,17 +45,17 @@ # endif #endif -#if defined(BOOST_HAS_DECLSPEC) -# if defined(BOOST_THREAD_BUILD_DLL) //Build dll -# define BOOST_THREAD_DECL __declspec(dllexport) -# elif defined(BOOST_THREAD_USE_DLL) //Use dll -# define BOOST_THREAD_DECL __declspec(dllimport) -# else -# define BOOST_THREAD_DECL -# endif +#if defined(BOOST_THREAD_BUILD_DLL) //Build dll +# define BOOST_THREAD_DECL BOOST_DSO_EXPORT +#elif defined(BOOST_THREAD_USE_DLL) //Use dll +# define BOOST_THREAD_DECL BOOST_DSO_IMPORT #else +# define BOOST_THREAD_DECL +#endif + +#if !defined(BOOST_THREAD_DECL) # define BOOST_THREAD_DECL -#endif // BOOST_HAS_DECLSPEC +#endif // // Automatically link to the correct build variant where possible. Index: boost/math/tr1.hpp =================================================================== --- boost/math/tr1.hpp (revision 47258) +++ boost/math/tr1.hpp (working copy) @@ -20,7 +20,6 @@ #endif // __cplusplus -#ifdef BOOST_HAS_DECLSPEC // defined in config system // 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_MATH_TR1_DYN_LINK @@ -28,12 +27,11 @@ #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_MATH_TR1_DYN_LINK) // export if this is our own source, otherwise import: #ifdef BOOST_MATH_TR1_SOURCE -# define BOOST_MATH_TR1_DECL __declspec(dllexport) +# define BOOST_MATH_TR1_DECL BOOST_DSO_EXPORT #else -# define BOOST_MATH_TR1_DECL __declspec(dllimport) +# define BOOST_MATH_TR1_DECL BOOST_DSO_IMPORT #endif // BOOST_MATH_TR1_SOURCE #endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC // // if BOOST_MATH_TR1_DECL isn't defined yet define it now: #ifndef BOOST_MATH_TR1_DECL Index: boost/signals/detail/config.hpp =================================================================== --- boost/signals/detail/config.hpp (revision 47258) +++ boost/signals/detail/config.hpp (working copy) @@ -17,15 +17,13 @@ #include -#ifdef BOOST_HAS_DECLSPEC -# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SIGNALS_DYN_LINK) -# ifdef BOOST_SIGNALS_SOURCE -# define BOOST_SIGNALS_DECL __declspec(dllexport) -# else -# define BOOST_SIGNALS_DECL __declspec(dllimport) -# endif // BOOST_SIGNALS_SOURCE -# endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SIGNALS_DYN_LINK) +# ifdef BOOST_SIGNALS_SOURCE +# define BOOST_SIGNALS_DECL BOOST_DSO_EXPORT +# else +# define BOOST_SIGNALS_DECL BOOST_DSO_IMPORT +# endif // BOOST_SIGNALS_SOURCE +#endif // DYN_LINK #ifndef BOOST_SIGNALS_DECL # define BOOST_SIGNALS_DECL Index: boost/wave/wave_config.hpp =================================================================== --- boost/wave/wave_config.hpp (revision 47258) +++ boost/wave/wave_config.hpp (working copy) @@ -402,15 +402,14 @@ /////////////////////////////////////////////////////////////////////////////// // Set up dll import/export options -#if defined(BOOST_HAS_DECLSPEC) && \ - (defined(BOOST_WAVE_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && \ +#if (defined(BOOST_WAVE_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && \ !defined(BOOST_WAVE_STATIC_LINK) #if defined(BOOST_WAVE_SOURCE) -#define BOOST_WAVE_DECL __declspec(dllexport) +#define BOOST_WAVE_DECL BOOST_DSO_EXPORT #define BOOST_WAVE_BUILD_DLL #else -#define BOOST_WAVE_DECL __declspec(dllimport) +#define BOOST_WAVE_DECL BOOST_DSO_IMPORT #endif #endif // building a shared library Index: boost/regex/config.hpp =================================================================== --- boost/regex/config.hpp (revision 47258) +++ boost/regex/config.hpp (working copy) @@ -180,12 +180,12 @@ * ****************************************************************************/ -#if defined(BOOST_HAS_DECLSPEC) && (defined(BOOST_REGEX_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_REGEX_STATIC_LINK) +#if (defined(BOOST_REGEX_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_REGEX_STATIC_LINK) # if defined(BOOST_REGEX_SOURCE) -# define BOOST_REGEX_DECL __declspec(dllexport) +# define BOOST_REGEX_DECL BOOST_DSO_EXPORT # define BOOST_REGEX_BUILD_DLL # else -# define BOOST_REGEX_DECL __declspec(dllimport) +# define BOOST_REGEX_DECL BOOST_DSO_IMPORT # endif #endif Index: boost/filesystem/config.hpp =================================================================== --- boost/filesystem/config.hpp (revision 47258) +++ boost/filesystem/config.hpp (working copy) @@ -70,7 +70,6 @@ # error Dynamic linking Boost.Filesystem does not work for Borland; use static linking instead # endif -#ifdef BOOST_HAS_DECLSPEC // defined in config system // 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_FILESYSTEM_DYN_LINK @@ -78,12 +77,11 @@ #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_FILESYSTEM_DYN_LINK) // export if this is our own source, otherwise import: #ifdef BOOST_FILESYSTEM_SOURCE -# define BOOST_FILESYSTEM_DECL __declspec(dllexport) +# define BOOST_FILESYSTEM_DECL BOOST_DSO_EXPORT #else -# define BOOST_FILESYSTEM_DECL __declspec(dllimport) +# define BOOST_FILESYSTEM_DECL BOOST_DSO_IMPORT #endif // BOOST_FILESYSTEM_SOURCE #endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC // // if BOOST_FILESYSTEM_DECL isn't defined yet define it now: #ifndef BOOST_FILESYSTEM_DECL Index: boost/config.hpp =================================================================== --- boost/config.hpp (revision 47258) +++ boost/config.hpp (working copy) @@ -56,6 +56,9 @@ // get config suffix code: #include +//macroses for exporting symbols from shared libraries +#include + #endif // BOOST_CONFIG_HPP Index: boost/iostreams/detail/config/dyn_link.hpp =================================================================== --- boost/iostreams/detail/config/dyn_link.hpp (revision 47258) +++ boost/iostreams/detail/config/dyn_link.hpp (working copy) @@ -20,15 +20,13 @@ //------------------Enable dynamic linking on windows-------------------------// -#ifdef BOOST_HAS_DECLSPEC -# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_IOSTREAMS_DYN_LINK) -# ifdef BOOST_IOSTREAMS_SOURCE -# define BOOST_IOSTREAMS_DECL __declspec(dllexport) -# else -# define BOOST_IOSTREAMS_DECL __declspec(dllimport) -# endif +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_IOSTREAMS_DYN_LINK) +# ifdef BOOST_IOSTREAMS_SOURCE +# define BOOST_IOSTREAMS_DECL BOOST_DSO_EXPORT +# else +# define BOOST_IOSTREAMS_DECL BOOST_DSO_IMPORT # endif -#endif +#endif #ifndef BOOST_IOSTREAMS_DECL # define BOOST_IOSTREAMS_DECL Index: boost/mpi/python/config.hpp =================================================================== --- boost/mpi/python/config.hpp (revision 47258) +++ boost/mpi/python/config.hpp (working copy) @@ -20,12 +20,12 @@ * * *****************************************************************************/ -#if defined(BOOST_HAS_DECLSPEC) && (defined(BOOST_MPI_PYTHON_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_MPI_PYTHON_STATIC_LINK) +#if (defined(BOOST_MPI_PYTHON_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_MPI_PYTHON_STATIC_LINK) # if defined(BOOST_MPI_PYTHON_SOURCE) -# define BOOST_MPI_PYTHON_DECL __declspec(dllexport) +# define BOOST_MPI_PYTHON_DECL BOOST_DSO_EXPORT # define BOOST_MPI_PYTHON_BUILD_DLL # else -# define BOOST_MPI_PYTHON_DECL __declspec(dllimport) +# define BOOST_MPI_PYTHON_DECL BOOST_DSO_IMPORT # endif #endif Index: boost/mpi/config.hpp =================================================================== --- boost/mpi/config.hpp (revision 47258) +++ boost/mpi/config.hpp (working copy) @@ -80,12 +80,12 @@ * * *****************************************************************************/ -#if defined(BOOST_HAS_DECLSPEC) && (defined(BOOST_MPI_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_MPI_STATIC_LINK) +#if (defined(BOOST_MPI_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)) && !defined(BOOST_MPI_STATIC_LINK) # if defined(BOOST_MPI_SOURCE) -# define BOOST_MPI_DECL __declspec(dllexport) +# define BOOST_MPI_DECL BOOST_DSO_EXPORT # define BOOST_MPI_BUILD_DLL # else -# define BOOST_MPI_DECL __declspec(dllimport) +# define BOOST_MPI_DECL BOOST_DSO_IMPORT # endif #endif Index: boost/date_time/compiler_config.hpp =================================================================== --- boost/date_time/compiler_config.hpp (revision 47258) +++ boost/date_time/compiler_config.hpp (working copy) @@ -96,20 +96,19 @@ * */ -#ifdef BOOST_HAS_DECLSPEC // defined in config system - // 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_DATE_TIME_DYN_LINK - // if they want just this one to be dynamically liked: -# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_DATE_TIME_DYN_LINK) +// 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_DATE_TIME_DYN_LINK +// if they want just this one to be dynamically liked: +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_DATE_TIME_DYN_LINK) // export if this is our own source, otherwise import: -# ifdef BOOST_DATE_TIME_SOURCE -# define BOOST_DATE_TIME_DECL __declspec(dllexport) -# else -# define BOOST_DATE_TIME_DECL __declspec(dllimport) -# endif // BOOST_DATE_TIME_SOURCE -# endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC +# ifdef BOOST_DATE_TIME_SOURCE +# define BOOST_DATE_TIME_DECL BOOST_DSO_EXPORT +# else +# define BOOST_DATE_TIME_DECL BOOST_DSO_IMPORT +# endif // BOOST_DATE_TIME_SOURCE +#endif // DYN_LINK + // // if BOOST_WHATEVER_DECL isn't defined yet define it now: #ifndef BOOST_DATE_TIME_DECL Index: boost/graph/graphviz.hpp =================================================================== --- boost/graph/graphviz.hpp (revision 47258) +++ boost/graph/graphviz.hpp (working copy) @@ -24,15 +24,13 @@ #include #include -#ifdef BOOST_HAS_DECLSPEC -# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_GRAPH_DYN_LINK) -# ifdef BOOST_GRAPH_SOURCE -# define BOOST_GRAPH_DECL __declspec(dllexport) -# else -# define BOOST_GRAPH_DECL __declspec(dllimport) -# endif // BOOST_GRAPH_SOURCE -# endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC +#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_GRAPH_DYN_LINK) +# ifdef BOOST_GRAPH_SOURCE +# define BOOST_GRAPH_DECL BOOST_DSO_EXPORT +# else +# define BOOST_GRAPH_DECL BOOST_DSO_IMPORT +# endif // BOOST_GRAPH_SOURCE +#endif // DYN_LINK #ifndef BOOST_GRAPH_DECL # define BOOST_GRAPH_DECL Index: boost/program_options/config.hpp =================================================================== --- boost/program_options/config.hpp (revision 47258) +++ boost/program_options/config.hpp (working copy) @@ -35,16 +35,14 @@ /////////////////////////////////////////////////////////////////////////////// // Windows DLL suport -#ifdef BOOST_HAS_DECLSPEC #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_PROGRAM_OPTIONS_DYN_LINK) // export if this is our own source, otherwise import: #ifdef BOOST_PROGRAM_OPTIONS_SOURCE -# define BOOST_PROGRAM_OPTIONS_DECL __declspec(dllexport) +# define BOOST_PROGRAM_OPTIONS_DECL BOOST_DSO_EXPORT #else -# define BOOST_PROGRAM_OPTIONS_DECL __declspec(dllimport) +# define BOOST_PROGRAM_OPTIONS_DECL BOOST_DSO_IMPORT #endif // BOOST_PROGRAM_OPTIONS_SOURCE #endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC #ifndef BOOST_PROGRAM_OPTIONS_DECL #define BOOST_PROGRAM_OPTIONS_DECL Index: boost/config/dso.hpp =================================================================== --- boost/config/dso.hpp (revision 0) +++ boost/config/dso.hpp (revision 0) @@ -0,0 +1,34 @@ +#ifndef BOOST_CONFIG_DYNAMIC_SHARED_OBJECT_SYMBOL_EXPORT_HPP +#define BOOST_CONFIG_DYNAMIC_SHARED_OBJECT_SYMBOL_EXPORT_HPP + + +//note: for gcc -fvisibility=hidden flag should be passed to compiler +#if defined __GNUC__ && __GNUC__ >= 4 + +# define BOOST_DSO_EXPORT __attribute__((visibility("default"))) +# define BOOST_DSO_HIDE __attribute__((visibility("hidden"))) +# define BOOST_DSO_IMPORT +# define BOOST_DSO_EXPORT_EXCEPTION BOOST_DSO_EXPORT +# define BOOST_DSO_IMPORT_EXCEPTION BOOST_DSO_EXPORT + +#elif defined _MSC_VER || defined __BORLANDC__ + +# define BOOST_DSO_EXPORT __declspec(dllexport) +# define BOOST_DSO_HIDE +# define BOOST_DSO_IMPORT __declspec(dllimport) +# define BOOST_DSO_EXPORT_EXCEPTION BOOST_DSO_EXPORT +# define BOOST_DSO_IMPORT_EXCEPTION BOOST_DSO_IMPORT + +#endif + + +#if !defined BOOST_DSO_EXPORT +# define BOOST_DSO_EXPORT +# define BOOST_DSO_HIDE +# define BOOST_DSO_IMPORT +# define BOOST_DSO_EXPORT_EXCEPTION +# define BOOST_DSO_IMPORT_EXCEPTION +#endif + +#endif + Index: boost/system/config.hpp =================================================================== --- boost/system/config.hpp (revision 47258) +++ boost/system/config.hpp (working copy) @@ -31,7 +31,6 @@ //# error Dynamic linking Boost.System does not work for Borland; use static linking instead //# endif -#ifdef BOOST_HAS_DECLSPEC // defined in config system // 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_SYSTEM_DYN_LINK @@ -39,12 +38,11 @@ #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_SYSTEM_DYN_LINK) // export if this is our own source, otherwise import: #ifdef BOOST_SYSTEM_SOURCE -# define BOOST_SYSTEM_DECL __declspec(dllexport) +# define BOOST_SYSTEM_DECL BOOST_DSO_EXPORT #else -# define BOOST_SYSTEM_DECL __declspec(dllimport) +# define BOOST_SYSTEM_DECL BOOST_DSO_IMPORT #endif // BOOST_SYSTEM_SOURCE #endif // DYN_LINK -#endif // BOOST_HAS_DECLSPEC // // if BOOST_SYSTEM_DECL isn't defined yet define it now: #ifndef BOOST_SYSTEM_DECL Index: boost/test/detail/config.hpp =================================================================== --- boost/test/detail/config.hpp (revision 47258) +++ boost/test/detail/config.hpp (working copy) @@ -84,11 +84,11 @@ #if defined(BOOST_TEST_DYN_LINK) # define BOOST_TEST_ALTERNATIVE_INIT_API -# if defined(BOOST_HAS_DECLSPEC) && defined(BOOST_TEST_DYN_LINK) +# if defined(BOOST_TEST_DYN_LINK) # ifdef BOOST_TEST_SOURCE -# define BOOST_TEST_DECL __declspec(dllexport) +# define BOOST_TEST_DECL BOOST_DSO_EXPORT # else -# define BOOST_TEST_DECL __declspec(dllimport) +# define BOOST_TEST_DECL BOOST_DSO_IMPORT # endif // BOOST_TEST_SOURCE # endif // BOOST_HAS_DECLSPEC #endif // BOOST_TEST_DYN_LINK Index: libs/mpi/build/Jamfile.v2 =================================================================== --- libs/mpi/build/Jamfile.v2 (revision 47258) +++ libs/mpi/build/Jamfile.v2 (working copy) @@ -17,6 +17,8 @@ { project boost/mpi + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src ; @@ -110,4 +112,4 @@ ECHO "note: otherwise, you can safely ignore this message." ; } -boost-install $(libraries) ; \ No newline at end of file +boost-install $(libraries) ; Index: libs/date_time/build/Jamfile.v2 =================================================================== --- libs/date_time/build/Jamfile.v2 (revision 47258) +++ libs/date_time/build/Jamfile.v2 (working copy) @@ -20,6 +20,7 @@ DATE_TIME_INLINE shared:BOOST_ALL_DYN_LINK=1 static:BOOST_DATE_TIME_STATIC_LINK + gcc,shared:"-fvisibility=hidden" : usage-requirements DATE_TIME_INLINE shared:BOOST_DATE_TIME_DYN_LINK=1 Index: libs/graph/build/Jamfile.v2 =================================================================== --- libs/graph/build/Jamfile.v2 (revision 47258) +++ libs/graph/build/Jamfile.v2 (working copy) @@ -5,7 +5,9 @@ # http://www.boost.org/LICENSE_1_0.txt) project boost/graph - : requirements ../src + : requirements + ../src + gcc,shared:"-fvisibility=hidden" : source-location ../src ; @@ -52,4 +54,4 @@ $(optional_reqs) ; -boost-install boost_graph ; \ No newline at end of file +boost-install boost_graph ; Index: libs/thread/build/Jamfile.v2 =================================================================== --- libs/thread/build/Jamfile.v2 (revision 47258) +++ libs/thread/build/Jamfile.v2 (working copy) @@ -41,6 +41,7 @@ : requirements multi static:BOOST_THREAD_BUILD_LIB=1 shared:BOOST_THREAD_BUILD_DLL=1 + gcc,shared:"-fvisibility=hidden" -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag @$(__name__).tag : default-build multi Index: libs/program_options/build/Jamfile.v2 =================================================================== --- libs/program_options/build/Jamfile.v2 (revision 47258) +++ libs/program_options/build/Jamfile.v2 (working copy) @@ -1,5 +1,7 @@ project boost/program_options + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src ; @@ -17,4 +19,4 @@ shared:BOOST_PROGRAM_OPTIONS_DYN_LINK=1 # tell source we're building dll's ; -boost-install boost_program_options ; \ No newline at end of file +boost-install boost_program_options ; Index: libs/system/build/Jamfile.v2 =================================================================== --- libs/system/build/Jamfile.v2 (revision 47258) +++ libs/system/build/Jamfile.v2 (working copy) @@ -8,6 +8,8 @@ # See library home page at http://www.boost.org/libs/system project boost/system + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src : usage-requirements # pass these requirement to dependents (i.e. users) shared:BOOST_SYSTEM_DYN_LINK=1 @@ -22,4 +24,4 @@ static:BOOST_SYSTEM_STATIC_LINK=1 ; -boost-install boost_system ; \ No newline at end of file +boost-install boost_system ; Index: libs/math/build/Jamfile.v2 =================================================================== --- libs/math/build/Jamfile.v2 (revision 47258) +++ libs/math/build/Jamfile.v2 (working copy) @@ -5,6 +5,11 @@ import testing ; +project boost/math + : requirements + gcc,shared:"-fvisibility=hidden" + ; + C99_SOURCES = acosh asinh atanh Index: libs/signals/build/Jamfile.v2 =================================================================== --- libs/signals/build/Jamfile.v2 (revision 47258) +++ libs/signals/build/Jamfile.v2 (working copy) @@ -7,7 +7,9 @@ # For more information, see http://www.boost.org -project boost/signals +project boost/signals + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src ; @@ -20,4 +22,4 @@ shared:BOOST_SIGNALS_DYN_LINK=1 ; -boost-install boost_signals ; \ No newline at end of file +boost-install boost_signals ; Index: libs/wave/build/Jamfile.v2 =================================================================== --- libs/wave/build/Jamfile.v2 (revision 47258) +++ libs/wave/build/Jamfile.v2 (working copy) @@ -13,6 +13,7 @@ shared:BOOST_ALL_DYN_LINK=1 msvc-8.0:_SCL_SECURE_NO_DEPRECATE msvc-8.0:_CRT_SECURE_NO_DEPRECATE + gcc,shared:"-fvisibility=hidden" : source-location ../src ; Index: libs/regex/build/Jamfile.v2 =================================================================== --- libs/regex/build/Jamfile.v2 (revision 47258) +++ libs/regex/build/Jamfile.v2 (working copy) @@ -4,6 +4,8 @@ # http://www.boost.org/LICENSE_1_0.txt. project boost/regex + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src ; Index: libs/test/build/Jamfile.v2 =================================================================== --- libs/test/build/Jamfile.v2 (revision 47258) +++ libs/test/build/Jamfile.v2 (working copy) @@ -9,6 +9,7 @@ : requirements shared:BOOST_TEST_DYN_LINK=1 msvc:on borland:-w-8080 + gcc,shared:"-fvisibility=hidden" # Disable Warning about boost::noncopyable not being exported shared,msvc:-wd4275 : usage-requirements @@ -85,4 +86,4 @@ boost-install boost_prg_exec_monitor boost_test_exec_monitor boost_unit_test_framework ; - \ No newline at end of file + Index: libs/filesystem/build/Jamfile.v2 =================================================================== --- libs/filesystem/build/Jamfile.v2 (revision 47258) +++ libs/filesystem/build/Jamfile.v2 (working copy) @@ -9,6 +9,8 @@ # See library home page at http://www.boost.org/libs/filesystem project boost/filesystem + : requirements + gcc,shared:"-fvisibility=hidden" : source-location ../src : usage-requirements # pass these requirement to dependents (i.e. users) shared:BOOST_FILESYSTEM_DYN_LINK=1 @@ -29,4 +31,4 @@ : ; -boost-install boost_filesystem ; \ No newline at end of file +boost-install boost_filesystem ; Index: libs/iostreams/build/Jamfile.v2 =================================================================== --- libs/iostreams/build/Jamfile.v2 (revision 47258) +++ libs/iostreams/build/Jamfile.v2 (working copy) @@ -7,7 +7,10 @@ # See http://www.boost.org/libs/iostreams for documentation. -project /boost/iostreams : source-location ../src ; +project /boost/iostreams + : requirements + gcc,shared:"-fvisibility=hidden" + : source-location ../src ; # The biggest trick in this Jamfile is to link to zlib and bzip2 when # needed. To configure that, a number of variables are used, which must