Merge changes from topics 'ndk-libc++-libdl', 'ndk-compiler-rt_extras'

* changes:
  Always link libdl with libc++ for the NDK.
  Use libcompiler-rt_extras with NDK builds.
This commit is contained in:
Treehugger Robot
2016-09-16 06:40:32 +00:00
committed by Gerrit Code Review
2 changed files with 9 additions and 3 deletions

View File

@@ -108,7 +108,7 @@ func (linker *baseLinker) linkerDeps(ctx BaseModuleContext, deps Deps) Deps {
deps.ReexportStaticLibHeaders = append(deps.ReexportStaticLibHeaders, linker.Properties.Export_static_lib_headers...) deps.ReexportStaticLibHeaders = append(deps.ReexportStaticLibHeaders, linker.Properties.Export_static_lib_headers...)
deps.ReexportSharedLibHeaders = append(deps.ReexportSharedLibHeaders, linker.Properties.Export_shared_lib_headers...) deps.ReexportSharedLibHeaders = append(deps.ReexportSharedLibHeaders, linker.Properties.Export_shared_lib_headers...)
if !ctx.sdk() && ctx.ModuleName() != "libcompiler_rt-extras" { if ctx.ModuleName() != "libcompiler_rt-extras" {
deps.LateStaticLibs = append(deps.LateStaticLibs, "libcompiler_rt-extras") deps.LateStaticLibs = append(deps.LateStaticLibs, "libcompiler_rt-extras")
} }

View File

@@ -114,9 +114,15 @@ func (stl *stl) deps(ctx BaseModuleContext, deps Deps) Deps {
// The system STL doesn't have a prebuilt (it uses the system's libstdc++), but it does have // The system STL doesn't have a prebuilt (it uses the system's libstdc++), but it does have
// its own includes. The includes are handled in CCBase.Flags(). // its own includes. The includes are handled in CCBase.Flags().
deps.SharedLibs = append([]string{"libstdc++"}, deps.SharedLibs...) deps.SharedLibs = append([]string{"libstdc++"}, deps.SharedLibs...)
case "ndk_libc++_shared", "ndk_libstlport_shared": case "ndk_libc++_shared":
deps.SharedLibs = append(deps.SharedLibs, stl.Properties.SelectedStl,
"libdl")
case "ndk_libc++_static":
deps.StaticLibs = append(deps.StaticLibs, stl.Properties.SelectedStl)
deps.SharedLibs = append(deps.SharedLibs, "libdl")
case "ndk_libstlport_shared":
deps.SharedLibs = append(deps.SharedLibs, stl.Properties.SelectedStl) deps.SharedLibs = append(deps.SharedLibs, stl.Properties.SelectedStl)
case "ndk_libc++_static", "ndk_libstlport_static", "ndk_libgnustl_static": case "ndk_libstlport_static", "ndk_libgnustl_static":
deps.StaticLibs = append(deps.StaticLibs, stl.Properties.SelectedStl) deps.StaticLibs = append(deps.StaticLibs, stl.Properties.SelectedStl)
default: default:
panic(fmt.Errorf("Unknown stl: %q", stl.Properties.SelectedStl)) panic(fmt.Errorf("Unknown stl: %q", stl.Properties.SelectedStl))