aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/d.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/compilers/d.py')
-rw-r--r--mesonbuild/compilers/d.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/mesonbuild/compilers/d.py b/mesonbuild/compilers/d.py
index e8355a8..a22e8d4 100644
--- a/mesonbuild/compilers/d.py
+++ b/mesonbuild/compilers/d.py
@@ -394,7 +394,10 @@ class DmdLikeCompilerMixin:
return Compiler.get_soname_args(self, *args, **kwargs)
def get_allow_undefined_link_args(self) -> typing.List[str]:
- return self.linker.get_allow_undefined_args()
+ args = []
+ for arg in self.linker.get_allow_undefined_args():
+ args.append('-L=' + arg)
+ return args
class DCompiler(Compiler):
@@ -637,6 +640,9 @@ class GnuDCompiler(DCompiler, GnuCompiler):
return parameter_list
+ def get_allow_undefined_link_args(self) -> typing.List[str]:
+ return self.linker.get_allow_undefined_args()
+
class LLVMDCompiler(DmdLikeCompilerMixin, LinkerEnvVarsMixin, BasicLinkerIsCompilerMixin, DCompiler):
@@ -667,6 +673,9 @@ class LLVMDCompiler(DmdLikeCompilerMixin, LinkerEnvVarsMixin, BasicLinkerIsCompi
def get_pic_args(self):
return ['-relocation-model=pic']
+ def get_std_shared_lib_link_args(self):
+ return ['-shared']
+
def get_crt_link_args(self, crt_val, buildtype):
return self.get_crt_args(crt_val, buildtype)