aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Willemsen <dwillemsen@google.com>2016-07-27 00:12:03 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-07-27 00:12:03 +0000
commitf47bfd7f776df47249376355378e0eacd66ff4c3 (patch)
treea8739f846ee9b52e906a2d0224b443aebefd735a
parentdbda419424a76678a7af3bde8cf955193a916fe7 (diff)
parent937e8b891de2166dea05401b3cd4d24a8e6440f5 (diff)
downloadgmock-f47bfd7f776df47249376355378e0eacd66ff4c3.tar.gz
Merge "Convert Android.mk to Android.bp"
-rw-r--r--Android.bp129
-rw-r--r--Android.mk17
-rw-r--r--src/Android.mk145
-rw-r--r--test/Android.mk84
4 files changed, 129 insertions, 246 deletions
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..8fae10e
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,129 @@
+// Copyright (C) 2015 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+//
+
+// Gmock builds 2 libraries: libgmock and libgmock_main. libgmock
+// contains most of the code (assertions...) and libgmock_main just
+// provide a common main to run the test (ie if you link against
+// libgmock_main you won't/should not provide a main() entry point.
+//
+// We build these 2 libraries for the target device and for the host if
+// it is running linux and using ASTL.
+//
+
+cc_defaults {
+ name: "gmock_flags",
+
+ local_include_dirs: ["include"],
+ export_include_dirs: ["include"],
+ include_dirs: ["external/gtest/include"],
+
+ cflags: ["-Wno-missing-field-initializers"],
+}
+
+cc_defaults {
+ name: "gmock_ndk",
+ sdk_version: "9",
+ stl: "gnustl_static",
+ cppflags: ["-std=c++11"],
+}
+
+cc_defaults {
+ name: "gmock_defaults",
+ host_supported: true,
+ sanitize: {
+ never: true,
+ },
+ target: {
+ windows: {
+ enabled: true,
+ },
+ },
+}
+
+//######################################################################
+// gmock lib for the NDK
+cc_library_static {
+ name: "libgmock_ndk",
+ defaults: ["gmock_ndk", "gmock_flags"],
+ srcs: ["src/gmock-all.cc"],
+}
+
+//######################################################################
+// gmock_main for the NDK
+cc_library_static {
+ name: "libgmock_main_ndk",
+ defaults: ["gmock_ndk", "gmock_flags"],
+ srcs: ["src/gmock_main.cc"],
+}
+
+//######################################################################
+// gmock lib target and host
+cc_library_static {
+ name: "libgmock",
+ defaults: ["gmock_defaults", "gmock_flags"],
+ srcs: ["src/gmock-all.cc"],
+ rtti: true,
+}
+
+//######################################################################
+// gmock_main lib target and host
+cc_library_static {
+ name: "libgmock_main",
+ defaults: ["gmock_defaults", "gmock_flags"],
+ srcs: ["src/gmock_main.cc"],
+}
+
+//######################################################################
+// gmock lib host
+// Deprecated: use libgmock instead
+cc_library_host_static {
+ name: "libgmock_host",
+ defaults: ["gmock_defaults", "gmock_flags"],
+ srcs: ["src/gmock-all.cc"],
+ rtti: true,
+}
+
+// Test for gmock. Run using 'runtest'.
+// The linux build and tests are run under valgrind by 'runtest'.
+
+cc_test {
+ name: "libgmock_test",
+ gtest: false,
+ host_supported: true,
+ test_per_src: true,
+
+ // The remaining tests aren't executed by the configure/make/make check sequence.
+ srcs: [
+ "test/gmock_test.cc",
+ "test/gmock-spec-builders_test.cc",
+ "test/gmock_link_test.cc",
+ ],
+
+ cflags: ["-Wno-empty-body"],
+ static_libs: [
+ "libgmock_main",
+ "libgmock",
+ "libgtest",
+ "libgtest_main",
+ ],
+
+ target: {
+ host: {
+ cflags: ["-O0"],
+ host_ldlibs: ["-lpthread"],
+ },
+ },
+}
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index 44199ab..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright (C) 2009 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-include $(call all-subdir-makefiles)
diff --git a/src/Android.mk b/src/Android.mk
deleted file mode 100644
index 1248fa4..0000000
--- a/src/Android.mk
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright (C) 2015 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-# Gmock builds 2 libraries: libgmock and libgmock_main. libgmock
-# contains most of the code (assertions...) and libgmock_main just
-# provide a common main to run the test (ie if you link against
-# libgmock_main you won't/should not provide a main() entry point.
-
-# TODO: The targets below have some redundancy. Check if we cannot
-# condense them using function(s) for the common code.
-
-LOCAL_PATH := $(call my-dir)
-
-libgmock_target_includes := \
- $(LOCAL_PATH)/.. \
- $(LOCAL_PATH)/../include \
- $(TOP)/external/gtest/include
-
-libgmock_host_includes := \
- $(LOCAL_PATH)/.. \
- $(LOCAL_PATH)/../include \
- $(TOP)/external/gtest/include
-
-libgmock_cflags := \
- -Wno-missing-field-initializers \
-
-#######################################################################
-# gmock lib for the NDK
-
-include $(CLEAR_VARS)
-LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
-
-LOCAL_SDK_VERSION := 9
-LOCAL_NDK_STL_VARIANT := gnustl_static
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock-all.cc
-LOCAL_C_INCLUDES := $(libgmock_target_includes)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_CPPFLAGS := -std=c++11
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_MODULE := libgmock_ndk
-
-include $(BUILD_STATIC_LIBRARY)
-
-#######################################################################
-# gmock_main for the NDK
-
-include $(CLEAR_VARS)
-LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
-
-LOCAL_SDK_VERSION := 9
-LOCAL_NDK_STL_VARIANT := gnustl_static
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock_main.cc
-LOCAL_C_INCLUDES := $(libgmock_target_includes)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_CPPFLAGS := -std=c++11
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_MODULE := libgmock_main_ndk
-
-include $(BUILD_STATIC_LIBRARY)
-
-# Don't build for unbundled branches
-ifeq (,$(TARGET_BUILD_APPS))
-#######################################################################
-# gmock lib host
-
-include $(CLEAR_VARS)
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock-all.cc
-LOCAL_C_INCLUDES := $(libgmock_host_includes)
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_MODULE := libgmock_host
-LOCAL_MULTILIB := both
-LOCAL_SANITIZE := never
-LOCAL_RTTI_FLAG := -frtti
-LOCAL_MODULE_HOST_OS := linux darwin windows
-
-include $(BUILD_HOST_STATIC_LIBRARY)
-
-#######################################################################
-# gmock_main lib host
-
-include $(CLEAR_VARS)
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock_main.cc
-LOCAL_C_INCLUDES := $(libgmock_host_includes)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_MODULE := libgmock_main_host
-LOCAL_MULTILIB := both
-LOCAL_SANITIZE := never
-LOCAL_MODULE_HOST_OS := linux darwin windows
-
-include $(BUILD_HOST_STATIC_LIBRARY)
-
-#######################################################################
-# gmock lib target
-
-include $(CLEAR_VARS)
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock-all.cc
-LOCAL_C_INCLUDES := $(libgmock_target_includes)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_MODULE := libgmock
-LOCAL_SANITIZE := never
-LOCAL_RTTI_FLAG := -frtti
-
-include $(BUILD_STATIC_LIBRARY)
-
-#######################################################################
-# gmock_main lib target
-
-include $(CLEAR_VARS)
-
-LOCAL_CPP_EXTENSION := .cc
-LOCAL_SRC_FILES := gmock_main.cc
-LOCAL_C_INCLUDES := $(libgmock_target_includes)
-LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/../include
-LOCAL_CFLAGS += $(libgmock_cflags)
-LOCAL_MODULE := libgmock_main
-LOCAL_SANITIZE := never
-
-include $(BUILD_STATIC_LIBRARY)
-endif
diff --git a/test/Android.mk b/test/Android.mk
deleted file mode 100644
index 8aca24b..0000000
--- a/test/Android.mk
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright (C) 2015 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-# Test for gmock. Run using 'runtest'.
-# The linux build and tests are run under valgrind by 'runtest'.
-
-LOCAL_PATH := $(call my-dir)
-include $(CLEAR_VARS)
-
-# TODO: Refactor these as 1st class build templates as suggested in
-# review of the original import.
-
-libgmock_test_common_includes := \
- $(LOCAL_PATH)/../include \
- $(LOCAL_PATH)/.. \
- $(TOP)/external/gtest/include \
-
-libgmock_test_includes := $(libgmock_test_common_includes)
-libgmock_test_static_lib := libgmock_main libgmock libgtest libgtest_main
-libgmock_test_ldflags :=
-
-libgmock_test_host_includes := $(libgmock_test_common_includes)
-libgmock_test_host_static_lib := libgmock_main_host libgmock_host libgtest_host libgtest_main_host
-libgmock_test_host_ldflags := -lpthread
-
-# $(2) and $(4) must be set or cleared in sync. $(2) is used to
-# generate the right make target (host vs device). $(4) is used in the
-# module's name and to have different module names for the host vs
-# device builds. Finally $(4) is used to pick up the right set of
-# libraries, typically the host libs have a _host suffix in their
-# names.
-# $(1): source list
-# $(2): "HOST_" or empty
-# $(3): extra CFLAGS or empty
-# $(4): "_host" or empty
-# $(5): "TARGET_OUT_DATA_NATIVE_TESTS" or empty (where to install)
-define _define-test
-$(foreach file,$(1), \
- $(eval include $(CLEAR_VARS)) \
- $(eval LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk) \
- $(eval LOCAL_CPP_EXTENSION := .cc) \
- $(eval LOCAL_SRC_FILES := $(file)) \
- $(eval LOCAL_C_INCLUDES := $(libgmock_test$(4)_includes)) \
- $(eval LOCAL_MODULE := $(notdir $(file:%.cc=%))$(4)) \
- $(eval LOCAL_CFLAGS += $(3) -Wno-empty-body) \
- $(eval LOCAL_LDFLAGS += $(libgmock_test$(4)_ldflags)) \
- $(eval LOCAL_STATIC_LIBRARIES := $(libgmock_test$(4)_static_lib)) \
- $(eval LOCAL_SHARED_LIBRARIES := $(libgmock_test$(4)_shared_lib)) \
- $(if $(2),,$(eval LOCAL_MODULE_TAGS := tests)) \
- $(eval LOCAL_MODULE_PATH := $($(5))) \
- $(eval include $(BUILD_$(2)EXECUTABLE)) \
-)
-endef
-
-define host-test
-$(call _define-test,$(1),HOST_,-O0,_host,)
-endef
-
-define target-test
-$(call _define-test,$(1),,,,TARGET_OUT_DATA_NATIVE_TESTS)
-endef
-
-sources := \
- gmock_test.cc \
- gmock-spec-builders_test.cc \
- gmock_link_test.cc \
-
-# The remaining tests aren't executed by the configure/make/make check sequence.
-
-$(call host-test, $(sources))
-$(call target-test, $(sources))