diff options
Diffstat (limited to 'src/Android.mk')
-rw-r--r-- | src/Android.mk | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/src/Android.mk b/src/Android.mk new file mode 100644 index 0000000..fc7b74e --- /dev/null +++ b/src/Android.mk @@ -0,0 +1,141 @@ +# 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. +# + +# 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_CPPFLAGS := -std=c++11 +LOCAL_C_FLAGS += $(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_CPPFLAGS := -std=c++11 +LOCAL_C_FLAGS += $(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_C_FLAGS += $(libgmock_cflags) +LOCAL_MODULE := libgmock_host +LOCAL_MULTILIB := both +LOCAL_ADDRESS_SANITIZER := false + +include $(BUILD_HOST_STATIC_LIBRARY) + +####################################################################### +# gmock_main lib target + +include $(CLEAR_VARS) + +LOCAL_CLANG := true +LOCAL_CPP_EXTENSION := .cc +LOCAL_SRC_FILES := gmock_main.cc +LOCAL_C_INCLUDES := $(libgmock_host_includes) +LOCAL_C_FLAGS += $(libgmock_cflags) +LOCAL_MODULE := libgmock_main_host +LOCAL_MULTILIB := both +LOCAL_ADDRESS_SANITIZER := false + +include $(BUILD_HOST_STATIC_LIBRARY) + +####################################################################### +# gmock lib target + +include $(CLEAR_VARS) + +LOCAL_CLANG := true +LOCAL_CPP_EXTENSION := .cc +LOCAL_SRC_FILES := gmock-all.cc +LOCAL_C_INCLUDES := $(libgmock_target_includes) +LOCAL_CFLAGS += $(libgmock_cflags) +LOCAL_MODULE := libgmock +LOCAL_ADDRESS_SANITIZER := false + +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_CFLAGS += $(libgmock_cflags) +LOCAL_MODULE := libgmock_main +LOCAL_ADDRESS_SANITIZER := false + +include $(BUILD_STATIC_LIBRARY) +endif |