
On Sat, May 22, 2010 at 3:32 PM, Beman Dawes <bdawes@acm.org> wrote:
The upgrade to Boost.Config symbol visibility macros that has been under discussion has been committed to trunk. This lays the groundwork for resolving #2144, #2309, #3697.
See https://svn.boost.org/trac/boost/changeset/62140
Thanks Jürgen Hunold for his patches and much other work on symbol visibility issues.
The changeset also applied the changes to Boost.System to act as a testbed to ensure the changes are correct. That's a concern because any breakage in Boost.Config could break a lot of other stuff. We also want to get the Boost.Config changes right the first time as they kick off rebuilds of everything that uses the config system.
The changes have been tested locally on Windows, Linux, and the Mac, and Boost.Filesystem has been retested on those systems as a reality check that unmodified user code continues to work.
As trunk regression tests cycle and our confidence builds, we will start to suggest and/or apply changes to other libraries to make use of the new facilities.
--Beman
Hi Beman, This is really awesome news! I suppose it is a big step to boost ABI improvement and boost binary backward compatibility on a variety of platforms. Please note, there is a boost.build patch attached to ticket 2114 also. This patch introduces new feature: hide-symbols. So, someone could easily build e.g. boost.system with hidden visibility using following command: 'bjam /boost/system hide-symbols=on'. Also feature could be used directly in a Jamfile. For sure this patch requires to be reviewed by Boost.Build gurus and maybe applied to trunk afterwards. Regards