aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndres Freund <andres@anarazel.de>2022-09-29 10:07:30 -0700
committerJussi Pakkanen <jpakkane@gmail.com>2022-10-03 01:16:35 +0300
commitdb7503690ce4946b64056acc72c3487468e528a6 (patch)
tree58ee0691da3edd8cd9024655e42c14e809220b85
parent72e0a95f7f89128557c745e5801b90f26c0f45e1 (diff)
downloadmeson-db7503690ce4946b64056acc72c3487468e528a6.zip
meson-db7503690ce4946b64056acc72c3487468e528a6.tar.gz
meson-db7503690ce4946b64056acc72c3487468e528a6.tar.bz2
AIX: allow link_whole, it's the only supported behaviour anyway
As ld's manpage says: "The ld command processes all input files in the same manner, whether they are archives or not"
-rw-r--r--mesonbuild/linkers/linkers.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/mesonbuild/linkers/linkers.py b/mesonbuild/linkers/linkers.py
index 85fbcee..2f0fcda 100644
--- a/mesonbuild/linkers/linkers.py
+++ b/mesonbuild/linkers/linkers.py
@@ -1405,6 +1405,12 @@ class AIXDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
def get_allow_undefined_args(self) -> T.List[str]:
return self._apply_prefix(['-berok'])
+ def get_link_whole_for(self, args: T.List[str]) -> T.List[str]:
+ # AIX's linker always links the whole archive: "The ld command
+ # processes all input files in the same manner, whether they are
+ # archives or not."
+ return args
+
def build_rpath_args(self, env: 'Environment', build_dir: str, from_dir: str,
rpath_paths: T.Tuple[str, ...], build_rpath: str,
install_rpath: str) -> T.Tuple[T.List[str], T.Set[bytes]]: