GCC_SYMBOLS_PRIVATE_EXTERN aka -fvisibility=hidden broken between 6.4 and 7.0 ?!
GCC_SYMBOLS_PRIVATE_EXTERN aka -fvisibility=hidden broken between 6.4 and 7.0 ?!
- Subject: GCC_SYMBOLS_PRIVATE_EXTERN aka -fvisibility=hidden broken between 6.4 and 7.0 ?!
- From: Sean McBride <email@hidden>
- Date: Mon, 28 Nov 2016 17:01:39 -0500
- Organization: Rogue Research Inc.
Hi all,
I've recently rebuilt all of my C++ dependencies (open source libraries) using -fvisibility=hidden and -fvisibility-inlines-hidden. These libs are built with either autotools or cmake.
In my Xcode project, I set in my .xcconfig file the following:
GCC_SYMBOLS_PRIVATE_EXTERN = YES
GCC_INLINES_ARE_PRIVATE_EXTERN = YES
The former corresponds to -fvisibility=hidden; the latter to -fvisibility-inlines-hidden.
In Xcode 6.4 all is well. Looking in the 'report navigator' at the build transcript I see both flags being passed to clang.
In Xcode 7.0, 7.3.1, 8.1, and 8.2b2, I see only -fvisibility-inlines-hidden being passed! -fvisibility=hidden is not there! This of course results in all kinds of visibility mismatch linker warnings. Manually specifying -fvisibility=hidden in 'other C flags' works around the issue.
Anyone else see this?
Thanks,
--
____________________________________________________________
Sean McBride, B. Eng email@hidden
Rogue Research www.rogue-research.com
Mac Software Developer Montréal, Québec, Canada
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden