1
Fork 0

Rollup merge of #137337 - dalvescb:master, r=petrochenkov

Add verbatim linker to AIXLinker

This adds support for the "verbatim" native link modifier on AIX, will successfully pass the `native-link-modifier-verbatim-linker test case`
This commit is contained in:
Jacob Pratt 2025-03-07 21:57:47 -05:00 committed by GitHub
commit 19b6743d95
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1655,9 +1655,9 @@ impl<'a> Linker for AixLinker<'a> {
}
}
fn link_dylib_by_name(&mut self, name: &str, _verbatim: bool, _as_needed: bool) {
fn link_dylib_by_name(&mut self, name: &str, verbatim: bool, _as_needed: bool) {
self.hint_dynamic();
self.link_or_cc_arg(format!("-l{name}"));
self.link_or_cc_arg(if verbatim { String::from(name) } else { format!("-l{name}") });
}
fn link_dylib_by_path(&mut self, path: &Path, _as_needed: bool) {
@ -1668,7 +1668,7 @@ impl<'a> Linker for AixLinker<'a> {
fn link_staticlib_by_name(&mut self, name: &str, verbatim: bool, whole_archive: bool) {
self.hint_static();
if !whole_archive {
self.link_or_cc_arg(format!("-l{name}"));
self.link_or_cc_arg(if verbatim { String::from(name) } else { format!("-l{name}") });
} else {
let mut arg = OsString::from("-bkeepfile:");
arg.push(find_native_static_library(name, verbatim, self.sess));