Android.mk revision b180754b429c078cbc99175a6059a8b5d0491002
1# Copyright (C) 2015 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 15LOCAL_PATH := $(call my-dir) 16 17# Common variables 18# ======================================================== 19trunksCppExtension := .cc 20trunksCFlags := \ 21 -Wall -Werror \ 22 -Wno-unused-parameter \ 23 -DUSE_BINDER_IPC \ 24 -fvisibility=hidden \ 25 26trunksIncludes := $(LOCAL_PATH)/.. 27trunksSharedLibraries := \ 28 libbinder \ 29 libbinderwrapper \ 30 libbrillo \ 31 libbrillo-binder \ 32 libchrome \ 33 libchrome-crypto \ 34 libcrypto \ 35 libprotobuf-cpp-lite \ 36 libutils \ 37 38# libtrunks_generated 39# ======================================================== 40include $(CLEAR_VARS) 41LOCAL_MODULE := libtrunks_generated 42LOCAL_MODULE_CLASS := STATIC_LIBRARIES 43LOCAL_CPP_EXTENSION := $(trunksCppExtension) 44LOCAL_CFLAGS := $(trunksCFlags) 45LOCAL_CLANG := true 46proto_include := $(call local-generated-sources-dir)/proto/$(LOCAL_PATH)/.. 47aidl_include := $(call local-generated-sources-dir)/aidl-generated/include 48LOCAL_C_INCLUDES := $(proto_include) $(aidl_include) $(trunksIncludes) 49LOCAL_EXPORT_C_INCLUDE_DIRS := $(proto_include) $(aidl_include) 50LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) 51LOCAL_SRC_FILES := \ 52 interface.proto \ 53 aidl/android/trunks/ITrunks.aidl \ 54 aidl/android/trunks/ITrunksClient.aidl \ 55 56LOCAL_AIDL_INCLUDES := $(LOCAL_PATH)/aidl 57include $(BUILD_STATIC_LIBRARY) 58 59# libtrunks_common 60# ======================================================== 61include $(CLEAR_VARS) 62LOCAL_MODULE := libtrunks_common 63LOCAL_CPP_EXTENSION := $(trunksCppExtension) 64LOCAL_CFLAGS := $(trunksCFlags) 65LOCAL_CLANG := true 66LOCAL_C_INCLUDES := $(trunksIncludes) 67LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) 68LOCAL_STATIC_LIBRARIES := libtrunks_generated 69LOCAL_SRC_FILES := \ 70 background_command_transceiver.cc \ 71 blob_parser.cc \ 72 error_codes.cc \ 73 hmac_authorization_delegate.cc \ 74 hmac_session_impl.cc \ 75 password_authorization_delegate.cc \ 76 policy_session_impl.cc \ 77 scoped_key_handle.cc \ 78 session_manager_impl.cc \ 79 tpm_generated.cc \ 80 tpm_state_impl.cc \ 81 tpm_utility_impl.cc \ 82 trunks_factory_impl.cc \ 83 84include $(BUILD_STATIC_LIBRARY) 85 86# trunksd 87# ======================================================== 88include $(CLEAR_VARS) 89LOCAL_MODULE := trunksd 90LOCAL_CPP_EXTENSION := $(trunksCppExtension) 91LOCAL_CFLAGS := $(trunksCFlags) 92ifeq ($(BRILLOEMULATOR),true) 93LOCAL_CFLAGS += -DUSE_SIMULATOR 94endif 95LOCAL_CLANG := true 96ifeq ($(BRILLOEMULATOR),true) 97LOCAL_INIT_RC := trunksd-simulator.rc 98else 99LOCAL_INIT_RC := trunksd.rc 100endif 101LOCAL_C_INCLUDES := $(trunksIncludes) 102LOCAL_SHARED_LIBRARIES := \ 103 $(trunksSharedLibraries) \ 104 libbrillo-minijail \ 105 libminijail \ 106 107ifeq ($(BRILLOEMULATOR),true) 108LOCAL_SHARED_LIBRARIES += libtpm2 109endif 110LOCAL_STATIC_LIBRARIES := \ 111 libtrunks_generated \ 112 libtrunks_common \ 113 114LOCAL_REQUIRED_MODULES := \ 115 trunksd-seccomp.policy \ 116 117LOCAL_SRC_FILES := \ 118 resource_manager.cc \ 119 tpm_handle.cc \ 120 tpm_simulator_handle.cc \ 121 trunks_binder_service.cc \ 122 trunksd.cc \ 123 124include $(BUILD_EXECUTABLE) 125 126# trunksd-seccomp.policy 127# ======================================================== 128include $(CLEAR_VARS) 129LOCAL_MODULE := trunksd-seccomp.policy 130LOCAL_MODULE_CLASS := ETC 131LOCAL_MODULE_PATH := $(TARGET_OUT)/usr/share/policy/ 132LOCAL_SRC_FILES := trunksd-seccomp-$(TARGET_ARCH).policy 133include $(BUILD_PREBUILT) 134 135# libtrunks 136# ======================================================== 137include $(CLEAR_VARS) 138LOCAL_MODULE := libtrunks 139LOCAL_CPP_EXTENSION := $(trunksCppExtension) 140LOCAL_CFLAGS := $(trunksCFlags) 141LOCAL_CLANG := true 142LOCAL_C_INCLUDES := $(trunksIncludes) 143LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) 144 145LOCAL_WHOLE_STATIC_LIBRARIES := \ 146 libtrunks_common \ 147 libtrunks_generated \ 148 149LOCAL_SRC_FILES := \ 150 trunks_binder_proxy.cc \ 151 152include $(BUILD_SHARED_LIBRARY) 153 154# trunks_client 155# ======================================================== 156include $(CLEAR_VARS) 157LOCAL_MODULE := trunks_client 158LOCAL_CPP_EXTENSION := $(trunksCppExtension) 159LOCAL_CFLAGS := $(trunksCFlags) 160LOCAL_CLANG := true 161LOCAL_C_INCLUDES := $(trunksIncludes) 162LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) libtrunks 163LOCAL_SRC_FILES := \ 164 trunks_client.cc \ 165 trunks_client_test.cc \ 166 167include $(BUILD_EXECUTABLE) 168 169# libtrunks_test 170# ======================================================== 171include $(CLEAR_VARS) 172LOCAL_MODULE := libtrunks_test 173LOCAL_MODULE_TAGS := eng 174LOCAL_CPP_EXTENSION := $(trunksCppExtension) 175LOCAL_CFLAGS := $(trunksCFlags) 176LOCAL_CLANG := true 177LOCAL_C_INCLUDES := $(trunksIncludes) 178LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) 179LOCAL_SRC_FILES := \ 180 mock_authorization_delegate.cc \ 181 mock_blob_parser.cc \ 182 mock_command_transceiver.cc \ 183 mock_hmac_session.cc \ 184 mock_policy_session.cc \ 185 mock_session_manager.cc \ 186 mock_tpm.cc \ 187 mock_tpm_state.cc \ 188 mock_tpm_utility.cc \ 189 trunks_factory_for_test.cc \ 190 191LOCAL_STATIC_LIBRARIES := \ 192 libgmock \ 193 194include $(BUILD_STATIC_LIBRARY) 195 196# Target unit tests 197# ======================================================== 198include $(CLEAR_VARS) 199LOCAL_MODULE := trunks_test 200LOCAL_MODULE_TAGS := eng 201LOCAL_CPP_EXTENSION := $(trunksCppExtension) 202LOCAL_CFLAGS := $(trunksCFlags) 203LOCAL_CLANG := true 204LOCAL_C_INCLUDES := $(trunksIncludes) 205LOCAL_SHARED_LIBRARIES := $(trunksSharedLibraries) 206LOCAL_SRC_FILES := \ 207 background_command_transceiver_test.cc \ 208 hmac_authorization_delegate_test.cc \ 209 hmac_session_test.cc \ 210 password_authorization_delegate_test.cc \ 211 policy_session_test.cc \ 212 resource_manager.cc \ 213 resource_manager_test.cc \ 214 scoped_key_handle_test.cc \ 215 session_manager_test.cc \ 216 tpm_generated_test.cc \ 217 tpm_state_test.cc \ 218 tpm_utility_test.cc \ 219 220LOCAL_STATIC_LIBRARIES := \ 221 libBionicGtestMain \ 222 libgmock \ 223 libtrunks_common \ 224 libtrunks_generated \ 225 libtrunks_test \ 226 227include $(BUILD_NATIVE_TEST) 228