1# -*- mode: makefile -*- 2# Copyright (C) 2011 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 16LOCAL_PATH := $(call my-dir) 17 18# 19# Definitions for installing Certificate Authority (CA) certificates 20# 21 22define all-files-under 23$(patsubst ./%,%, \ 24 $(shell cd $(LOCAL_PATH) ; \ 25 find $(1) -type f) \ 26 ) 27endef 28 29# $(1): module name 30# $(2): source file 31# $(3): destination directory 32define include-prebuilt-with-destination-directory 33include $$(CLEAR_VARS) 34LOCAL_MODULE := $(1) 35LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 36LOCAL_MODULE_STEM := $(notdir $(2)) 37LOCAL_MODULE_TAGS := optional 38LOCAL_MODULE_CLASS := ETC 39LOCAL_MODULE_PATH := $(3) 40LOCAL_SRC_FILES := $(2) 41include $$(BUILD_PREBUILT) 42endef 43 44cacerts := $(call all-files-under,files) 45 46cacerts_target_directory := $(TARGET_OUT)/etc/security/cacerts 47$(foreach cacert, $(cacerts), $(eval $(call include-prebuilt-with-destination-directory,target-cacert-$(notdir $(cacert)),$(cacert),$(cacerts_target_directory)))) 48cacerts_target := $(addprefix $(cacerts_target_directory)/,$(foreach cacert,$(cacerts),$(notdir $(cacert)))) 49.PHONY: cacerts_target 50cacerts: $(cacerts_target) 51 52# This is so that build/target/product/core.mk can use cacerts in PRODUCT_PACKAGES 53ALL_MODULES.cacerts.INSTALLED := $(cacerts_target) 54 55cacerts_host_directory := $(HOST_OUT)/etc/security/cacerts 56$(foreach cacert, $(cacerts), $(eval $(call include-prebuilt-with-destination-directory,host-cacert-$(notdir $(cacert)),$(cacert),$(cacerts_host_directory)))) 57 58cacerts_host := $(addprefix $(cacerts_host_directory)/,$(foreach cacert,$(cacerts),$(notdir $(cacert)))) 59.PHONY: cacerts-host 60cacerts-host: $(cacerts_host) 61 62include $(call all-makefiles-under,$(LOCAL_PATH)) 63