From e9462ce2064f5ec38a628e6e310d459d42f58d9c Mon Sep 17 00:00:00 2001 From: Jon Turney Date: Sat, 2 Jun 2018 17:59:29 +0100 Subject: Install shared_module implibs On Windows, if we are going to link with a shared module, we need the implib. Use case: The Xorg server builds some X protocol extensions as modules. The implibs for these modules need to be shipped as part of the SDK, to enable building of 3rd party extensions which reference symbols in (and hence on Windows, need to be linked with) these modules. --- mesonbuild/backend/ninjabackend.py | 2 +- mesonbuild/build.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) (limited to 'mesonbuild') diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index 0398401..401ad19 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -747,7 +747,7 @@ int dummy; # On toolchains/platforms that use an import library for # linking (separate from the shared library with all the # code), we need to install that too (dll.a/.lib). - if (isinstance(t, build.SharedLibrary) or isinstance(t, build.Executable)) and t.get_import_filename(): + if isinstance(t, (build.SharedLibrary, build.SharedModule, build.Executable)) and t.get_import_filename(): if custom_install_dir: # If the DLL is installed into a custom directory, # install the import library into the same place so diff --git a/mesonbuild/build.py b/mesonbuild/build.py index 36e2e3c..331b552 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -1625,7 +1625,6 @@ class SharedModule(SharedLibrary): 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) - self.import_filename = None class CustomTarget(Target): known_kwargs = set([ -- cgit v1.1