diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java index 2586b28f241990..de5400d5fa9fad 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java +++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java @@ -291,7 +291,7 @@ private static ExtraLinkArgs getRequiredLinkopts(RuleContext ruleContext) switch (binaryType) { case LOADABLE_BUNDLE: extraLinkArgs.add("-bundle"); - extraLinkArgs.add("-Wl,-rpath,@loader_path/Frameworks"); + extraLinkArgs.add("-Xlinker", "-rpath", "-Xlinker", "@loader_path/Frameworks"); if (didProvideBundleLoader) { AppleExecutableBinaryInfo executableProvider = ruleContext.getPrerequisite( diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java index d5eff0edfb3a49..db812eab53cb78 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcRuleTestCase.java @@ -902,7 +902,7 @@ protected void checkBundleLoaderIsCorrectlyPassedToTheLinker(RuleType ruleType) assertThat(Joiner.on(" ").join(linkAction.getArguments())) .contains("-bundle_loader " + getBinArtifact("bin_lipobin", binTarget).getExecPath()); assertThat(Joiner.on(" ").join(linkAction.getArguments())) - .contains("-Wl,-rpath,@loader_path/Frameworks"); + .contains("-Xlinker -rpath -Xlinker @loader_path/Frameworks"); } protected Action lipoLibAction(String libLabel) throws Exception {