diff options
-rw-r--r-- | mesonbuild/backend/ninjabackend.py | 8 | ||||
-rw-r--r-- | mesonbuild/linkers.py | 2 |
2 files changed, 3 insertions, 7 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index 847e749..94eaa4f 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -1526,14 +1526,10 @@ int dummy; if static_linker is None: return rule = 'rule STATIC%s_LINKER\n' % crstr - # We don't use @file.rsp on Windows with ArLinker because llvm-ar and - # gcc-ar blindly pass the --plugin argument to `ar` and you cannot pass - # options as arguments while using the @file.rsp syntax. - # See: https://github.com/mesonbuild/meson/issues/1646 if static_linker.can_linker_accept_rsp(): - command_template = ''' command = {executable} @$out.rsp + command_template = ''' command = {executable} $LINK_ARGS {output_args} @$out.rsp rspfile = $out.rsp - rspfile_content = $LINK_ARGS {output_args} $in + rspfile_content = $in ''' else: command_template = ' command = {executable} $LINK_ARGS {output_args} $in\n' diff --git a/mesonbuild/linkers.py b/mesonbuild/linkers.py index cb07c5e..7e89de5 100644 --- a/mesonbuild/linkers.py +++ b/mesonbuild/linkers.py @@ -88,7 +88,7 @@ class ArLinker(StaticLinker): self.std_args = ['-csr'] def can_linker_accept_rsp(self): - return False + return mesonlib.is_windows() def build_rpath_args(self, build_dir, from_dir, rpath_paths, build_rpath, install_rpath): return [] |