diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2018-07-03 23:16:33 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2018-08-09 19:46:49 +0300 |
commit | 6a0e6740432dfd22c54976ae3fe2fc1c9fea0b3d (patch) | |
tree | 6e858ee5ae062f23737806bd44215b941a150673 /mesonbuild/build.py | |
parent | 15fb2843955b53414cf292cf0a6b7faf7ffc883a (diff) | |
download | meson-6a0e6740432dfd22c54976ae3fe2fc1c9fea0b3d.zip meson-6a0e6740432dfd22c54976ae3fe2fc1c9fea0b3d.tar.gz meson-6a0e6740432dfd22c54976ae3fe2fc1c9fea0b3d.tar.bz2 |
Add kwarg for specifying symbol visibility.
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r-- | mesonbuild/build.py | 9 |
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 |