aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2016-12-07 21:49:16 +0200
committerGitHub <noreply@github.com>2016-12-07 21:49:16 +0200
commitf62f73082178644d25a480d93609e6a8866b5d74 (patch)
tree046780d0d2abf4e09e2c0f1a10e38268ff457246 /mesonbuild/build.py
parent344231d336339c0ea4c1eb072ef37ba5e15ff901 (diff)
parentf5a9b3b249efdafacbff1060999c60257c0ff72c (diff)
downloadmeson-f62f73082178644d25a480d93609e6a8866b5d74.zip
meson-f62f73082178644d25a480d93609e6a8866b5d74.tar.gz
meson-f62f73082178644d25a480d93609e6a8866b5d74.tar.bz2
Merge pull request #1126 from mesonbuild/sharedmodule
Support for shared modules
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r--mesonbuild/build.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 462a55b..79759ee 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1127,6 +1127,16 @@ class SharedLibrary(BuildTarget):
def type_suffix(self):
return "@sha"
+# A shared library that is meant to be used with dlopen rather than linking
+# into something else.
+class SharedModule(SharedLibrary):
+ def __init__(self, name, subdir, subproject, is_cross, sources, objects, environment, kwargs):
+ if 'version' in kwargs:
+ raise MesonException('Shared modules must not specify the version kwarg.')
+ if 'soversion' in kwargs:
+ raise MesonException('Shared modules must not specify the soversion kwarg.')
+ super().__init__(name, subdir, subproject, is_cross, sources, objects, environment, kwargs)
+
class CustomTarget:
known_kwargs = {'input' : True,
'output' : True,