1 # Copyright (C) 2009 The Android Open Source Project 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 16 LOCAL_PATH := $(call my-dir) 17 18 local_src_files := \ 19 JNIHelp.cpp \ 20 JniConstants.cpp \ 21 toStringArray.cpp 22 23 # 24 # Build for the target (device). 25 # 26 27 include $(CLEAR_VARS) 28 LOCAL_SRC_FILES := \ 29 $(local_src_files) \ 30 JniInvocation.cpp \ 31 AsynchronousCloseMonitor.cpp 32 33 LOCAL_SHARED_LIBRARIES := liblog 34 LOCAL_MODULE_TAGS := optional 35 LOCAL_MODULE := libnativehelper 36 LOCAL_CLANG := true 37 LOCAL_CFLAGS := -Werror -fvisibility=protected 38 LOCAL_C_INCLUDES := libcore/include 39 LOCAL_SHARED_LIBRARIES += libdl 40 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 41 include $(BUILD_SHARED_LIBRARY) 42 43 44 # 45 # NDK-only build for the target (device), using libc++. 46 # - Relies only on NDK exposed functionality. 47 # - This doesn't include JniInvocation. 48 # 49 50 include $(CLEAR_VARS) 51 LOCAL_MODULE_TAGS := optional 52 LOCAL_MODULE := libnativehelper_compat_libc++ 53 LOCAL_CLANG := true 54 LOCAL_C_INCLUDES := \ 55 $(LOCAL_PATH)/include/nativehelper 56 LOCAL_EXPORT_C_INCLUDE_DIRS := \ 57 $(LOCAL_PATH)/include/nativehelper 58 LOCAL_CFLAGS := -Werror 59 LOCAL_SRC_FILES := $(local_src_files) 60 LOCAL_LDFLAGS := -llog -ldl 61 LOCAL_SDK_VERSION := 19 62 LOCAL_NDK_STL_VARIANT := c++_static 63 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 64 include $(BUILD_SHARED_LIBRARY) 65 66 67 # 68 # Build for the host. 69 # 70 71 include $(CLEAR_VARS) 72 LOCAL_MODULE := libnativehelper 73 LOCAL_MODULE_TAGS := optional 74 LOCAL_CLANG := true 75 LOCAL_SRC_FILES := \ 76 $(local_src_files) \ 77 JniInvocation.cpp 78 ifeq ($(HOST_OS),linux) 79 LOCAL_SRC_FILES += AsynchronousCloseMonitor.cpp 80 endif 81 LOCAL_CFLAGS := -Werror -fvisibility=protected 82 LOCAL_C_INCLUDES := libcore/include 83 LOCAL_SHARED_LIBRARIES := liblog 84 LOCAL_LDFLAGS := -ldl 85 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 86 LOCAL_MULTILIB := both 87 include $(BUILD_HOST_SHARED_LIBRARY) 88 89 90 # 91 # Build static for the host. 92 # 93 94 include $(CLEAR_VARS) 95 LOCAL_MODULE := libnativehelper 96 LOCAL_MODULE_TAGS := optional 97 LOCAL_CLANG := true 98 LOCAL_SRC_FILES := \ 99 $(local_src_files) \ 100 JniInvocation.cpp 101 ifeq ($(HOST_OS),linux) 102 LOCAL_SRC_FILES += AsynchronousCloseMonitor.cpp 103 endif 104 LOCAL_CFLAGS := -Werror -fvisibility=protected 105 LOCAL_C_INCLUDES := libcore/include 106 LOCAL_STATIC_LIBRARIES := liblog 107 LOCAL_LDFLAGS := -ldl 108 LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 109 LOCAL_MULTILIB := both 110 include $(BUILD_HOST_STATIC_LIBRARY) 111 112 113 # 114 # Tests. 115 # 116 117 include $(LOCAL_PATH)/tests/Android.mk 118