• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 2025 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
15ifndef KATI
16$(error Only Kati is supported.)
17endif
18
19$(info [1/4] initializing packaging system ...)
20
21.KATI_READONLY := KATI_PACKAGE_MK_DIR
22
23include build/make/common/core.mk
24include build/make/common/strings.mk
25
26# Define well-known goals and their dependency graph that they've
27# traditionally had in make builds. Also it's important to define
28# droid first so that it's built by default.
29
30.PHONY: droid
31droid: droid_targets
32
33.PHONY: droid_targets
34droid_targets: droidcore dist_files
35
36.PHONY: dist_files
37dist_files:
38
39.PHONY: droidcore
40droidcore: droidcore-unbundled
41
42.PHONY: droidcore-unbundled
43droidcore-unbundled:
44
45$(info [2/4] including distdir.mk ...)
46
47include build/make/packaging/distdir.mk
48
49$(info [3/4] defining phony modules ...)
50
51include $(OUT_DIR)/soong/soong_phony_targets.mk
52
53goals := $(sort $(foreach pair,$(DIST_GOAL_OUTPUT_PAIRS),$(call word-colon,1,$(pair))))
54$(foreach goal,$(goals), \
55  $(eval .PHONY: $$(goal)) \
56  $(eval $$(goal):) \
57  $(if $(call streq,$(DIST),true),\
58    $(eval $$(goal): _dist_$$(goal))))
59
60$(info [4/4] writing packaging rules ...)
61