Boost C++ Libraries: Ticket #11869: Boost should consistently use BOOST_ for all #defines and standardize header guards https://svn.boost.org/trac10/ticket/11869 <p> I use boost in my own code, and I've recently had to make it work with a 3rd party that uses boost as well, but they're on a different version. Getting them to update versions is going to take a long time, and I have no other choice of vendor for this particular product, so a coworker was forced to write a script to try and rename all the #defines and symbol names (boost -&gt; bxxst) in order to have the two versions coexist in the same binary. </p> <p> This works, but it's forced to have a lot of special cases due to two issues: </p> <p> -Header guard style is basically random, I've seen 5+ different variants. </p> <p> -A random assortment of #define's that have no indication in their name that they come from boost that I have to just hard code into my script. </p> <p> Seeing as the first is a style inconsistency it would be desirable to fix anyway, and the latter is bad for interoperability with other libraries (prefixing #define's with your library's name is pretty standard practice in the C/C++ world), and I've heard of others dealing with my problem before, I figured it merited a bug report. </p> <p> Fixing it won't help me for now because any changes will only be in newer versions obviously, but it would it make it easier to deal with going forward and have the other mentioned benefits. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/11869 Trac 1.4.3 viboes Sun, 03 Jan 2016 16:50:18 GMT <link>https://svn.boost.org/trac10/ticket/11869#comment:1 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/11869#comment:1</guid> <description> <p> For the second point I recommend you to create a ticket for each concerned library as concrete as possible. </p> <p> For the first point, I believe that the battle is lost in advance. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>Mateusz Loskot</dc:creator> <pubDate>Fri, 12 Oct 2018 19:39:17 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/11869#comment:2 https://svn.boost.org/trac10/ticket/11869#comment:2 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">invalid</span> </li> </ul> <p> I'd suggest to do the following: </p> <ol><li>Submit pull request with your proposal of <code>development/requirements.html</code> changes to <a class="ext-link" href="https://github.com/boostorg/website/blob/master/"><span class="icon">​</span>https://github.com/boostorg/website/blob/master/</a> </li><li>Post your proposal to the Boost mailing list with request for comments </li><li>Create new issue for each concerned library separately at <a class="ext-link" href="https://github.com/boostorg/"><span class="icon">​</span>https://github.com/boostorg/</a> as @viboes suggests </li></ol> Ticket