From cdc3f39de88818b8c85a4db2c3962736bd5ac57c Mon Sep 17 00:00:00 2001 From: Ted Mielczarek Date: Thu, 24 Oct 2013 15:06:19 -0400 Subject: [PATCH] Bug 930674 - Add NO_VISIBILITY_FLAGS to moz.build. r=gps --- python/mozbuild/mozbuild/frontend/emitter.py | 4 ++++ python/mozbuild/mozbuild/frontend/sandbox_symbols.py | 4 ++++ .../mozbuild/test/backend/data/variable_passthru/moz.build | 1 + python/mozbuild/mozbuild/test/backend/test_recursivemake.py | 3 +++ .../mozbuild/test/frontend/data/variable-passthru/moz.build | 1 + python/mozbuild/mozbuild/test/frontend/test_emitter.py | 1 + 6 files changed, 14 insertions(+) diff --git a/python/mozbuild/mozbuild/frontend/emitter.py b/python/mozbuild/mozbuild/frontend/emitter.py index 9302522efb24..dca2e17f6ea3 100644 --- a/python/mozbuild/mozbuild/frontend/emitter.py +++ b/python/mozbuild/mozbuild/frontend/emitter.py @@ -171,6 +171,10 @@ class TreeMetadataEmitter(LoggingMixin): if sandbox[moz]: passthru.variables[mak] = sandbox[moz] + # NO_VISIBILITY_FLAGS is slightly different + if sandbox['NO_VISIBILITY_FLAGS']: + passthru.variables['VISIBILITY_FLAGS'] = '' + varmap = dict( ASFILES=('SOURCES', ('.s', '.asm')), CSRCS=('SOURCES', '.c'), diff --git a/python/mozbuild/mozbuild/frontend/sandbox_symbols.py b/python/mozbuild/mozbuild/frontend/sandbox_symbols.py index b85a1a40dcf6..4be272fe0f73 100644 --- a/python/mozbuild/mozbuild/frontend/sandbox_symbols.py +++ b/python/mozbuild/mozbuild/frontend/sandbox_symbols.py @@ -257,6 +257,10 @@ VARIABLES = { """Whether profile-guided optimization is enabled in this directory. """, None), + 'NO_VISIBILITY_FLAGS': (bool, bool, False, + """Build sources listed in this file without VISIBILITY_FLAGS. + """, None), + 'OS_LIBS': (list, list, [], """System link libraries. diff --git a/python/mozbuild/mozbuild/test/backend/data/variable_passthru/moz.build b/python/mozbuild/mozbuild/test/backend/data/variable_passthru/moz.build index cd150a3f9c4f..9868a84fa50f 100644 --- a/python/mozbuild/mozbuild/test/backend/data/variable_passthru/moz.build +++ b/python/mozbuild/mozbuild/test/backend/data/variable_passthru/moz.build @@ -43,3 +43,4 @@ SOURCES += ['baz.S', 'foo.S'] FAIL_ON_WARNINGS = True LIBXUL_LIBRARY = True MSVC_ENABLE_PGO = True +NO_VISIBILITY_FLAGS = True diff --git a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py index 9835641b17bd..7852e3415738 100644 --- a/python/mozbuild/mozbuild/test/backend/test_recursivemake.py +++ b/python/mozbuild/mozbuild/test/backend/test_recursivemake.py @@ -358,6 +358,9 @@ class TestRecursiveMakeBackend(BackendTester): 'SSRCS += baz.S', 'SSRCS += foo.S', ], + 'VISIBILITY_FLAGS': [ + 'VISIBILITY_FLAGS :=', + ], } for var, val in expected.items(): diff --git a/python/mozbuild/mozbuild/test/frontend/data/variable-passthru/moz.build b/python/mozbuild/mozbuild/test/frontend/data/variable-passthru/moz.build index 63135e357007..b47849f81889 100644 --- a/python/mozbuild/mozbuild/test/frontend/data/variable-passthru/moz.build +++ b/python/mozbuild/mozbuild/test/frontend/data/variable-passthru/moz.build @@ -50,3 +50,4 @@ FORCE_SHARED_LIB = True FORCE_STATIC_LIB = True EXPORT_LIBRARY = True IS_COMPONENT = True +NO_VISIBILITY_FLAGS = True diff --git a/python/mozbuild/mozbuild/test/frontend/test_emitter.py b/python/mozbuild/mozbuild/test/frontend/test_emitter.py index 380d2498bbb2..98d7662e6862 100644 --- a/python/mozbuild/mozbuild/test/frontend/test_emitter.py +++ b/python/mozbuild/mozbuild/test/frontend/test_emitter.py @@ -163,6 +163,7 @@ class TestEmitterBasic(unittest.TestCase): SHARED_LIBRARY_LIBS=['fans.sll', 'tans.sll'], SIMPLE_PROGRAMS=['fans.x', 'tans.x'], SSRCS=['bans.S', 'fans.S'], + VISIBILITY_FLAGS='', ) variables = objs[1].variables