On Wed, Feb 19, 2014 at 10:05:19PM +0100, Erik Faye-Lund wrote:
On Wed, Feb 19, 2014 at 5:04 PM, Thierry Reding thierry.reding@gmail.com wrote:
From: Thierry Reding treding@nvidia.com
Checks whether or not the compiler supports the -fvisibility option. If so it sets the VISIBILITY_CFLAGS variable which can be added to the per directory AM_CFLAGS where appropriate.
Libraries can use the HAVE_VISIBILITY preprocessor definition to check for availability and use something like this:
#if defined(HAVE_VISIBILITY) # define drm_private __attribute__((visibility("hidden"))) # define drm_public __attribute__((visibility("default"))) #else # define drm_private # define drm_public #endif
By default all symbols will be hidden via the VISIBILITY_CFLAGS. Only symbols explicitly marked drm_public will be exported.
As I said in the other patch, I think it makes more sense to define these globally. The other drivers still need to opt-in on the feature, but it's less work, less duplication of logic and less points-of-failure ;)
Well, if you put it that way, having it in somewhere in the core might be a better option after all. I'll sleep on it.
Thierry