1# 2# Copyright (C) 2018 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 17# From the Android.mk pass: 18DIST_GOAL_OUTPUT_PAIRS := 19DIST_SRC_DST_PAIRS := 20include $(KATI_PACKAGE_MK_DIR)/dist.mk 21FILE_NAME_TAG := $(file <$(OUT_DIR)/file_name_tag.txt) 22.KATI_READONLY := FILE_NAME_TAG 23 24$(foreach pair,$(DIST_GOAL_OUTPUT_PAIRS), \ 25 $(eval goal := $(call word-colon,1,$(pair))) \ 26 $(eval output := $(subst FILE_NAME_TAG_PLACEHOLDER,$(FILE_NAME_TAG),$(call word-colon,2,$(pair)))) \ 27 $(eval .PHONY: _dist_$$(goal)) \ 28 $(if $(call streq,$(DIST),true),\ 29 $(eval _dist_$$(goal): $$(DIST_DIR)/$$(output)), \ 30 $(eval _dist_$$(goal):))) 31 32define copy-one-dist-file 33$(2): .KATI_TAGS += ;rule_name=dist-cp 34$(2): $(1) 35 @echo "Dist: $$@" 36 rm -f $$@ 37 cp $$< $$@ 38endef 39 40ifeq ($(DIST),true) 41 $(foreach pair,$(DIST_SRC_DST_PAIRS), \ 42 $(eval src := $(call word-colon,1,$(pair))) \ 43 $(eval dst := $(subst FILE_NAME_TAG_PLACEHOLDER,$(FILE_NAME_TAG),$(DIST_DIR)/$(call word-colon,2,$(pair)))) \ 44 $(eval $(call copy-one-dist-file,$(src),$(dst)))) 45endif 46 47copy-one-dist-file := 48DIST_GOAL_OUTPUT_PAIRS := 49DIST_SRC_DST_PAIRS := 50