Revert "Revert "Move libgcc to libcrt.builtins""
This reverts commit 6fb831bd5619992797eded6c47117b1a52c1f724.
Bug: 29275768
Test: checkbuild and bionic native tests on arm/arm64/x86/x86_64
Change-Id: I774dea64a209dac673f927115b30170e5470db76
Merged-In: I774dea64a209dac673f927115b30170e5470db76
(cherry picked from commit 85e9ba15b5eeeb942660c6801c1397fe09b14939)
diff --git a/cc/linker.go b/cc/linker.go
index e3f1ff1..6d4d07b 100644
--- a/cc/linker.go
+++ b/cc/linker.go
@@ -16,6 +16,7 @@
import (
"android/soong/android"
+ "android/soong/cc/config"
"fmt"
"github.com/google/blueprint"
@@ -214,12 +215,13 @@
deps.WholeStaticLibs = removeListFromList(deps.WholeStaticLibs, linker.Properties.Target.Recovery.Exclude_static_libs)
}
- if ctx.ModuleName() != "libcompiler_rt-extras" {
- deps.LateStaticLibs = append(deps.LateStaticLibs, "libcompiler_rt-extras")
- }
-
if ctx.toolchain().Bionic() {
- // libgcc and libatomic have to be last on the command line
+ // libclang_rt.builtins, libgcc and libatomic have to be last on the command line
+ // TODO: Also enable for libc and libm
+ if ctx.ModuleName() != "libc" && ctx.ModuleName() != "libm" {
+ deps.LateStaticLibs = append(deps.LateStaticLibs, config.BuiltinsRuntimeLibrary(ctx.toolchain()))
+ }
+
deps.LateStaticLibs = append(deps.LateStaticLibs, "libatomic")
if !Bool(linker.Properties.No_libgcc) {
deps.LateStaticLibs = append(deps.LateStaticLibs, "libgcc")