diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2017-06-24 17:18:22 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2017-06-26 21:10:27 +0300 |
commit | 0eb41a9a083683a1574d4432238f2f694974a2c6 (patch) | |
tree | a08e0933962e70af975bdc7d9d6b84d4d9da2876 /mesonbuild/interpreter.py | |
parent | 92493d4e5e1d0e44a60262091308ca537673a92f (diff) | |
download | meson-0eb41a9a083683a1574d4432238f2f694974a2c6.zip meson-0eb41a9a083683a1574d4432238f2f694974a2c6.tar.gz meson-0eb41a9a083683a1574d4432238f2f694974a2c6.tar.bz2 |
Checks for all build target functions.
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r-- | mesonbuild/interpreter.py | 55 |
1 files changed, 38 insertions, 17 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index e988cf0..c6a73a6 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -1225,28 +1225,46 @@ lang_arg_kwargs = set(['c_args', 'fortran_args', 'vala_args']) -exe_kwargs = set(['sources', - 'link_with', - 'link_whole', - 'link_args', - 'link_depends', - 'include_directories', - 'dependencies', - 'gui_app', - 'extra_files', - 'install', - 'install_rpath', - 'install_dir', - 'objects', - 'native', - 'name_suffix', - 'build_by_default', - 'override_options']) +buildtarget_kwargs = set(['sources', + 'link_with', + 'link_whole', + 'link_args', + 'link_depends', + 'include_directories', + 'dependencies', + 'gui_app', + 'extra_files', + 'install', + 'install_rpath', + 'install_dir', + 'objects', + 'native', + 'name_suffix', + 'name_prefix', + 'build_by_default', + 'vs_module_defs', + 'pic', + 'override_options']) + +exe_kwargs = set() +exe_kwargs.update(buildtarget_kwargs) exe_kwargs.update(lang_arg_kwargs) exe_kwargs.update(pch_kwargs) + +shlib_kwargs = set() +shlib_kwargs.update(buildtarget_kwargs) +shlib_kwargs.update(lang_arg_kwargs) +shlib_kwargs.update(pch_kwargs) +shlib_kwargs.update(['version', 'soversion']) +shmod_kwargs = shlib_kwargs +stlib_kwargs = shlib_kwargs + permitted_kwargs = {'project': set(['version', 'meson_version', 'default_options', 'license', 'subproject_dir']), 'executable': exe_kwargs, + 'shared_library': shlib_kwargs, + 'static_library': stlib_kwargs, + 'shared_module': shmod_kwargs, } @@ -2042,12 +2060,15 @@ class Interpreter(InterpreterBase): def func_executable(self, node, args, kwargs): return self.build_target(node, args, kwargs, ExecutableHolder) + @permittedKwargs(permitted_kwargs['static_library']) def func_static_lib(self, node, args, kwargs): return self.build_target(node, args, kwargs, StaticLibraryHolder) + @permittedKwargs(permitted_kwargs['shared_library']) def func_shared_lib(self, node, args, kwargs): return self.build_target(node, args, kwargs, SharedLibraryHolder) + @permittedKwargs(permitted_kwargs['shared_module']) def func_shared_module(self, node, args, kwargs): return self.build_target(node, args, kwargs, SharedModuleHolder) |