[SERVER-27507] Implement support for symbol visibility source annotations Created: 22/Dec/16  Updated: 09/Sep/20  Resolved: 02/Sep/20

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: 4.7.0

Type: New Feature Priority: Major - P3
Reporter: Andrew Morrow (Inactive) Assignee: Andrew Morrow (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-27508 Annotate types and functions for export Closed
Backwards Compatibility: Fully Compatible
Sprint: Dev Platform 2020-09-07
Participants:

 Description   

Implement support in the build system for annotating symbols for export, as with _declspec(dllexport) or attribute_((visibility("default"))), and switch the build on non-Windows platforms to build with the default visibility set to hidden.

We can simplify the mechanics of this task by leveraging a preprocesor technique outlined here:

http://stackoverflow.com/questions/40944257/can-boost-pp-defined-be-implemented



 Comments   
Comment by Githook User [ 02/Sep/20 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-27507 Add evergreen canary builders for experimental visibility support
Branch: master
https://github.com/mongodb/mongo/commit/70977b1bb5e7d4728916c7a78ac929f8bbd3a5d5

Comment by Githook User [ 02/Sep/20 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-27507 Implement visibility for mutablebson
Branch: master
https://github.com/mongodb/mongo/commit/53fed04b8837ca526357e5c7b212860053304703

Comment by Githook User [ 02/Sep/20 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-27507 Add basic visibility support and a test
Branch: master
https://github.com/mongodb/mongo/commit/b478d31b7dd7b73a965ef48a3a242e9b2c2d4d9a

Comment by Githook User [ 02/Sep/20 ]

Author:

{'name': 'Andrew Morrow', 'email': 'acm@mongodb.com', 'username': 'acmorrow'}

Message: SERVER-27507 Add boost VMD library to boost_get_sources
Branch: master
https://github.com/mongodb/mongo/commit/762d65bb4685589a47f0a6b750222e6b4d774f57

Comment by Andrew Morrow (Inactive) [ 27/Aug/20 ]

The proof-of-concept branch for this work is available here: https://github.com/acmorrow/mongo/tree/SERVER-27507

Generated at Thu Feb 08 04:15:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.