mapbox / mason

Cross platform package manager for C/C++ apps
BSD 2-Clause "Simplified" License
254 stars 69 forks source link

Several static libraries are leaking symbols #215

Open tmpsantos opened 8 years ago

tmpsantos commented 8 years ago

Several of our static libraries are leaking symbols because we don't set the default visibility to hidden when building them. This is a problem because it can clash with system symbols when building Mapbox GL Native as a shared library. To some that I identified:

Alternatively we could maintain an export symbol list on Mapbox GL Native.

/cc @kkaefer @springmeyer

springmeyer commented 8 years ago

Alternatively we could maintain an export symbol list on Mapbox GL Native.

Seems like this is the most failsafe and easily maintainable solution. But I'm certainly interested in trying to hide symbols in these packages at build time. The work needed would be to ensure that all packages support -fvisibility=hidden. Our geojson package does not yet, but the others should.