aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/linkers.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2018-08-27 22:30:23 +0300
committerGitHub <noreply@github.com>2018-08-27 22:30:23 +0300
commit1ffc8de5e8cc79dbaa54fd1ac02b6b4c5edac7a1 (patch)
tree916eb6a1c988386d9848115709dd9c6b199a5a5a /mesonbuild/linkers.py
parent731906504efb57aa9ae86685501f1d3a0aa22121 (diff)
parentfd2c3b4c77ac1977d254301876525f8e631a940a (diff)
downloadmeson-1ffc8de5e8cc79dbaa54fd1ac02b6b4c5edac7a1.zip
meson-1ffc8de5e8cc79dbaa54fd1ac02b6b4c5edac7a1.tar.gz
meson-1ffc8de5e8cc79dbaa54fd1ac02b6b4c5edac7a1.tar.bz2
Merge pull request #3981 from GoaLitiuM/d-win-fixes
Fix D support on Windows
Diffstat (limited to 'mesonbuild/linkers.py')
-rw-r--r--mesonbuild/linkers.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/mesonbuild/linkers.py b/mesonbuild/linkers.py
index 6e40ab4..93106b3 100644
--- a/mesonbuild/linkers.py
+++ b/mesonbuild/linkers.py
@@ -137,3 +137,52 @@ class ArmarLinker(ArLinker):
def can_linker_accept_rsp(self):
# armar cann't accept arguments using the @rsp syntax
return False
+
+class LDCLinker(StaticLinker):
+
+ def __init__(self, exelist):
+ self.exelist = exelist
+ self.id = 'ldc2'
+
+ def can_linker_accept_rsp(self):
+ return mesonlib.is_windows()
+
+ def build_rpath_args(self, build_dir, from_dir, rpath_paths, build_rpath, install_rpath):
+ return []
+
+ def get_exelist(self):
+ return self.exelist[:]
+
+ def get_std_link_args(self):
+ return ['-lib']
+
+ def get_output_args(self, target):
+ return ['-of=' + target]
+
+ def get_buildtype_linker_args(self, buildtype):
+ return []
+
+ def get_linker_always_args(self):
+ return []
+
+ def get_coverage_link_args(self):
+ return []
+
+ def get_always_args(self):
+ return []
+
+ def thread_link_flags(self, env):
+ return []
+
+ def openmp_flags(self):
+ return []
+
+ def get_option_link_args(self, options):
+ return []
+
+ @classmethod
+ def unix_args_to_native(cls, args):
+ return args[:]
+
+ def get_link_debugfile_args(self, targetfile):
+ return []