Update gtest flags from Make
There's a different libgtest to use for NDK libraries built with
different STLs. And we no longer need to add the gtest include path, as
it's exported.
Change-Id: I2f804cf98e074cfd4ea6b70a445e304a8a8bce50
diff --git a/cc/cc.go b/cc/cc.go
index e650435..25e7147 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -456,6 +456,7 @@
noDefaultCompilerFlags() bool
sdk() bool
sdkVersion() string
+ selectedStl() string
}
type ModuleContext interface {
@@ -637,6 +638,13 @@
return ctx.mod.Properties.Sdk_version
}
+func (ctx *moduleContextImpl) selectedStl() string {
+ if stl := ctx.mod.stl; stl != nil {
+ return stl.Properties.SelectedStl
+ }
+ return ""
+}
+
func newBaseModule(hod common.HostOrDeviceSupported, multilib common.Multilib) *Module {
return &Module{
hod: hod,
@@ -2058,7 +2066,18 @@
func (test *testLinker) deps(ctx BaseModuleContext, deps Deps) Deps {
if test.Properties.Gtest {
- deps.StaticLibs = append(deps.StaticLibs, "libgtest_main", "libgtest")
+ if ctx.sdk() && ctx.Device() {
+ switch ctx.selectedStl() {
+ case "ndk_libc++_shared", "ndk_libc++_static":
+ deps.StaticLibs = append(deps.StaticLibs, "libgtest_main_ndk_libcxx", "libgtest_ndk_libcxx")
+ case "ndk_libgnustl_static":
+ deps.StaticLibs = append(deps.StaticLibs, "libgtest_main_ndk_gnustl", "libgtest_ndk_gnustl")
+ default:
+ deps.StaticLibs = append(deps.StaticLibs, "libgtest_main_ndk", "libgtest_ndk")
+ }
+ } else {
+ deps.StaticLibs = append(deps.StaticLibs, "libgtest_main", "libgtest")
+ }
}
deps = test.binaryLinker.deps(ctx, deps)
return deps