diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2016-12-02 21:55:56 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2016-12-02 21:55:56 +0200 |
commit | 6d84b9b6468eca57763895efe51347047ca3088d (patch) | |
tree | 2396bfa11ba04aac451df8091a66322a2d8110ae /mesonbuild/interpreter.py | |
parent | 7afb4c655281d60ef64d0378ff126a08f12a14ce (diff) | |
download | meson-6d84b9b6468eca57763895efe51347047ca3088d.zip meson-6d84b9b6468eca57763895efe51347047ca3088d.tar.gz meson-6d84b9b6468eca57763895efe51347047ca3088d.tar.bz2 |
Created new shared module build target type, and make sure -Wl,--no-undefined is not used when linking it.
Diffstat (limited to 'mesonbuild/interpreter.py')
-rw-r--r-- | mesonbuild/interpreter.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py index ef99511..fefc1ff 100644 --- a/mesonbuild/interpreter.py +++ b/mesonbuild/interpreter.py @@ -586,6 +586,10 @@ class SharedLibraryHolder(BuildTargetHolder): def __init__(self, target, interp): super().__init__(target, interp) +class SharedModuleHolder(BuildTargetHolder): + def __init__(self, target, interp): + super().__init__(target, interp) + class JarHolder(BuildTargetHolder): def __init__(self, target, interp): super().__init__(target, interp) @@ -1203,6 +1207,7 @@ class Interpreter(): 'dependency' : self.func_dependency, 'static_library' : self.func_static_lib, 'shared_library' : self.func_shared_lib, + 'shared_module' : self.func_shared_module, 'library' : self.func_library, 'jar' : self.func_jar, 'build_target': self.func_build_target, @@ -1961,6 +1966,9 @@ requirements use the version keyword argument instead.''') def func_shared_lib(self, node, args, kwargs): return self.build_target(node, args, kwargs, SharedLibraryHolder) + def func_shared_module(self, node, args, kwargs): + return self.build_target(node, args, kwargs, SharedModuleHolder) + def func_library(self, node, args, kwargs): if self.coredata.get_builtin_option('default_library') == 'shared': return self.func_shared_lib(node, args, kwargs) @@ -2448,6 +2456,8 @@ requirements use the version keyword argument instead.''') targetclass = build.Executable elif targetholder is SharedLibraryHolder: targetclass = build.SharedLibrary + elif targetholder is SharedModuleHolder: + targetclass = build.SharedModule elif targetholder is StaticLibraryHolder: targetclass = build.StaticLibrary elif targetholder is JarHolder: |