Closed mykmelez closed 7 years ago
@tbsaunde Among other benefits, this reduces the Travis log size for Mac builds significantly. For example, job 17 (a Mac release build with BUILD_CONFIG=normal) goes from 6096 lines of log in https://travis-ci.org/mozilla/spidernode/jobs/194908348 to 3185 lines in https://travis-ci.org/mozilla/spidernode/jobs/195008140 .
A bit more investigation reinforces that this is the correct change. I'll go ahead and merge it.
Mac builds complain a lot (thousands of times on release builds, tens of times on debug builds) about "different translation units being compiled with different visibility settings." Here's an example:
It looks like the visibility settings are set in deps/cares/common.gypi, which appears to get applied to Node but not to SpiderShim. The specific settings are the xcode_settings keys GCC_INLINES_ARE_PRIVATE_EXTERN and GCC_SYMBOLS_PRIVATE_EXTERN, which are set to the string
'YES'
, which causes GYP's xcode_emulation.py script to set the cflags-fvisibility-inlines-hidden
and-fvisibility=hidden
, respectively.This branch adds the same settings to deps/spidershim/spidershim.gyp, which squelches those warnings.