From 9416c20b7989e44cd56d4e78f80041d64dfccfa3 Mon Sep 17 00:00:00 2001 From: Dan Willemsen Date: Wed, 21 Dec 2016 20:27:06 -0800 Subject: [PATCH] Support non-gtest NATIVE_TESTS We've had this in Soong for a while, but never supported it in Make. Bug: 33819328 Test: Change LOCAL_GTEST on a module, check m -j ... showcommands Change-Id: Id8f4b9908c82c05d9a986a38945b33bac578e991 --- core/clear_vars.mk | 1 + core/host_test_internal.mk | 16 +++++++++------- core/target_test_internal.mk | 8 +++++--- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/core/clear_vars.mk b/core/clear_vars.mk index c0343a0f7..6e61d153f 100644 --- a/core/clear_vars.mk +++ b/core/clear_vars.mk @@ -78,6 +78,7 @@ LOCAL_GCNO_FILES:= LOCAL_GENERATED_SOURCES:= # Group static libraries with "-Wl,--start-group" and "-Wl,--end-group" when linking. LOCAL_GROUP_STATIC_LIBRARIES:= +LOCAL_GTEST:=true LOCAL_HAL_STATIC_LIBRARIES:= LOCAL_INIT_RC:= LOCAL_INSTALLED_MODULE:= diff --git a/core/host_test_internal.mk b/core/host_test_internal.mk index 473815b0e..ffb22c71f 100644 --- a/core/host_test_internal.mk +++ b/core/host_test_internal.mk @@ -2,15 +2,17 @@ ## Shared definitions for all host test compilations. ##################################################### -LOCAL_CFLAGS_windows += -DGTEST_OS_WINDOWS -LOCAL_CFLAGS_linux += -DGTEST_OS_LINUX -LOCAL_LDLIBS_linux += -lpthread -LOCAL_CFLAGS_darwin += -DGTEST_OS_MAC -LOCAL_LDLIBS_darwin += -lpthread +ifeq ($(LOCAL_GTEST),true) + LOCAL_CFLAGS_windows += -DGTEST_OS_WINDOWS + LOCAL_CFLAGS_linux += -DGTEST_OS_LINUX + LOCAL_LDLIBS_linux += -lpthread + LOCAL_CFLAGS_darwin += -DGTEST_OS_MAC + LOCAL_LDLIBS_darwin += -lpthread -LOCAL_CFLAGS += -DGTEST_HAS_STD_STRING -O0 -g + LOCAL_CFLAGS += -DGTEST_HAS_STD_STRING -O0 -g -LOCAL_STATIC_LIBRARIES += libgtest_main_host libgtest_host + LOCAL_STATIC_LIBRARIES += libgtest_main_host libgtest_host +endif ifdef LOCAL_MODULE_PATH $(error $(LOCAL_PATH): Do not set LOCAL_MODULE_PATH when building test $(LOCAL_MODULE)) diff --git a/core/target_test_internal.mk b/core/target_test_internal.mk index 2e65218ba..59a3a9e05 100644 --- a/core/target_test_internal.mk +++ b/core/target_test_internal.mk @@ -2,11 +2,12 @@ ## Shared definitions for all target test compilations. ####################################################### -LOCAL_CFLAGS += -DGTEST_OS_LINUX_ANDROID -DGTEST_HAS_STD_STRING +ifeq ($(LOCAL_GTEST),true) + LOCAL_CFLAGS += -DGTEST_OS_LINUX_ANDROID -DGTEST_HAS_STD_STRING -ifndef LOCAL_SDK_VERSION + ifndef LOCAL_SDK_VERSION LOCAL_STATIC_LIBRARIES += libgtest_main libgtest -else + else ifneq (,$(filter c++_%,$(LOCAL_NDK_STL_VARIANT))) my_ndk_gtest_suffix := _c++ else ifneq ($(filter stlport_,$(LOCAL_NDK_STL_VARIANT)),) @@ -19,6 +20,7 @@ else LOCAL_STATIC_LIBRARIES += \ libgtest_main_ndk$(my_ndk_gtest_suffix) \ libgtest_ndk$(my_ndk_gtest_suffix) + endif endif ifdef LOCAL_MODULE_PATH -- 2.11.0