aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index a3cd993..3d43c89 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -71,6 +71,7 @@ buildtarget_kwargs = set([
'objects',
'override_options',
'sources',
+ 'symbol_visibility',
])
known_build_target_kwargs = (
@@ -817,6 +818,14 @@ This will become a hard error in a future Meson release.''')
self.implicit_include_directories = kwargs.get('implicit_include_directories', True)
if not isinstance(self.implicit_include_directories, bool):
raise InvalidArguments('Implicit_include_directories must be a boolean.')
+ self.symbol_visibility = kwargs.get('symbol_visibility', '')
+ if not isinstance(self.symbol_visibility, str):
+ raise InvalidArguments('Symbol visibility must be a string.')
+ if self.symbol_visibility != '':
+ permitted = ['default', 'internal', 'hidden', 'protected', 'inlineshidden']
+ if self.symbol_visibility not in permitted:
+ raise InvalidArguments('Symbol visibility arg %s not one of: %s',
+ self.symbol_visibility, ', '.join(permitted))
def get_filename(self):
return self.filename