1# 2# Copyright (C) 2016 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17LOCAL_DIR := $(GET_LOCAL_DIR) 18 19MODULE := $(LOCAL_DIR) 20 21MANIFEST := $(LOCAL_DIR)/manifest.json 22 23MODULE_CONSTANTS := $(LOCAL_DIR)/hwcrypto_consts.json 24 25MODULE_INCLUDES := $(LOCAL_DIR)/include 26 27MODULE_SRCS := \ 28 $(LOCAL_DIR)/main.c \ 29 $(LOCAL_DIR)/hwkey_srv.c \ 30 31ifeq (true,$(call TOBOOL,$(WITH_FAKE_HWRNG))) 32MODULE_SRCS += $(LOCAL_DIR)/hwrng_srv_fake_provider.c 33endif 34 35ifeq (true,$(call TOBOOL,$(WITH_FAKE_HWKEY))) 36MODULE_SRCS += $(LOCAL_DIR)/hwkey_srv_fake_provider.c 37MODULE_SRCS += $(LOCAL_DIR)/hwrng_srv.c 38MODULE_DEFINES += WITH_HWCRYPTO_HWRNG=1 39endif 40 41MODULE_LIBRARY_DEPS := \ 42 external/boringssl \ 43 trusty/user/base/interface/hwaes \ 44 trusty/user/base/interface/hwrng \ 45 trusty/user/base/interface/hwkey \ 46 trusty/user/base/lib/libc-trusty \ 47 trusty/user/base/lib/system_state \ 48 trusty/user/base/lib/tipc \ 49 50ifneq ($(APPLOADER_SIGN_PUBLIC_KEY_0_FILE),) 51MODULE_COMPILEFLAGS += \ 52 -DAPPLOADER_SIGN_PUBLIC_KEY_0_FILE=\"$(APPLOADER_SIGN_PUBLIC_KEY_0_FILE)\" 53ifeq (true,$(call TOBOOL,$(APPLOADER_SIGN_KEY_0_UNLOCKED_ONLY))) 54MODULE_COMPILEFLAGS += \ 55 -DAPPLOADER_SIGN_KEY_0_UNLOCKED_ONLY=1 56endif 57endif 58 59ifneq ($(APPLOADER_SIGN_PUBLIC_KEY_1_FILE),) 60MODULE_COMPILEFLAGS += \ 61 -DAPPLOADER_SIGN_PUBLIC_KEY_1_FILE=\"$(APPLOADER_SIGN_PUBLIC_KEY_1_FILE)\" 62ifeq (true,$(call TOBOOL,$(APPLOADER_SIGN_KEY_1_UNLOCKED_ONLY))) 63MODULE_COMPILEFLAGS += \ 64 -DAPPLOADER_SIGN_KEY_1_UNLOCKED_ONLY=1 65endif 66endif 67 68ifneq ($(APPLOADER_ENCRYPT_KEY_0_FILE),) 69MODULE_COMPILEFLAGS += \ 70 -DAPPLOADER_ENCRYPT_KEY_0_FILE=\"$(APPLOADER_ENCRYPT_KEY_0_FILE)\" 71endif 72 73ifneq ($(APPLOADER_ENCRYPT_KEY_1_FILE),) 74MODULE_COMPILEFLAGS += \ 75 -DAPPLOADER_ENCRYPT_KEY_1_FILE=\"$(APPLOADER_ENCRYPT_KEY_1_FILE)\" 76endif 77 78ifeq (true,$(call TOBOOL,$(WITH_FAKE_KEYBOX))) 79MODULE_DEFINES += WITH_FAKE_KEYBOX 80include $(LOCAL_DIR)/keybox/rules.mk 81endif 82 83include make/trusted_app.mk 84