> Thus, attribute visibility is only enabled for GCC >= 4. So, challenging option is that enabling attribute-visibility-default for Oracle cc. Distinction between "on Solaris" and "by Oracle CC" is slightly complicated, but I could find something in here:
https://docs.oracle.com/cd/E19205-01/820-1209/bjaii/index.html https://stackoverflow.com/questions/37715467/how-to-print-preprocessor-macros-under-sun-studio Maybe "__SUNPRO_C" could be used as the indicator. Regards, mpsuzuki suzuki toshiya wrote: > Dear Alexei, > >>> Does it define __GNUC__? Does it undestand __attribute__(( visibility( >>> "default" ) ))? >> Q1) __GNUC__ >> Maybe No. > > Oh, Oh. I found my misunderstanding. > > ftconfig.h does like this: > > #if defined( _WIN32 ) && ( defined( _DLL ) || defined( DLL_EXPORT ) ) > #define FT_EXPORT( x ) __declspec( dllexport ) x > #elif defined( __GNUC__ ) && __GNUC__ >= 4 > #define FT_EXPORT( x ) __attribute__(( visibility( "default" ) )) x > #elif defined( __cplusplus ) > #define FT_EXPORT( x ) extern "C" x > #else > #define FT_EXPORT( x ) extern x > #endif > > Thus, attribute visibility is only enabled for GCC >= 4. > > Comparing with configure.raw, I guess you assumed that > -fvisibility is GCC-specific feature? > > # I should remind, such kind of linker-related technologies > # in GNU toolchains are heavily inspired by Solaris, maybe > # in Drepper's era. > > > suzuki toshiya wrote: >> Alexei Podtelezhnikov wrote: >>> On Thu, May 3, 2018 at 8:31 AM, suzuki toshiya >>> <[email protected]> wrote: >>>> Dear Kanazawa-san, >>>> >>>> Hmm, it looks good... why Oracle cc hides all symbols...? >>>> >>> because it accepts -fvisibility=hidden, wh ich is a GNUC. Now two questions: >>> Does it define __GNUC__? Does it undestand __attribute__(( visibility( >>> "default" ) ))? >> Q1) __GNUC__ >> Maybe No. >> >> Q2) __attribute__((visibility(xxx)) >> Yes, according to the online help. >> https://docs.oracle.com/cd/E18659_01/html/821-1384/gjzke.html >> >> Regards, >> mpsuzuki >> > _______________________________________________ Freetype-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/freetype-devel
