xref: /aosp_15_r20/system/sepolicy/CleanSpec.mk (revision e4a36f4174b17bbab9dc043f4a65dc8d87377290)
1*e4a36f41SAndroid Build Coastguard Worker# Copyright (C) 2015 The Android Open Source Project
2*e4a36f41SAndroid Build Coastguard Worker#
3*e4a36f41SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*e4a36f41SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*e4a36f41SAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*e4a36f41SAndroid Build Coastguard Worker#
7*e4a36f41SAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
8*e4a36f41SAndroid Build Coastguard Worker#
9*e4a36f41SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*e4a36f41SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*e4a36f41SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*e4a36f41SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*e4a36f41SAndroid Build Coastguard Worker# limitations under the License.
14*e4a36f41SAndroid Build Coastguard Worker#
15*e4a36f41SAndroid Build Coastguard Worker
16*e4a36f41SAndroid Build Coastguard Worker# If you don't need to do a full clean build but would like to touch
17*e4a36f41SAndroid Build Coastguard Worker# a file or delete some intermediate files, add a clean step to the end
18*e4a36f41SAndroid Build Coastguard Worker# of the list.  These steps will only be run once, if they haven't been
19*e4a36f41SAndroid Build Coastguard Worker# run before.
20*e4a36f41SAndroid Build Coastguard Worker#
21*e4a36f41SAndroid Build Coastguard Worker# E.g.:
22*e4a36f41SAndroid Build Coastguard Worker#     $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
23*e4a36f41SAndroid Build Coastguard Worker#     $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
24*e4a36f41SAndroid Build Coastguard Worker#
25*e4a36f41SAndroid Build Coastguard Worker# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
26*e4a36f41SAndroid Build Coastguard Worker# files that are missing or have been moved.
27*e4a36f41SAndroid Build Coastguard Worker#
28*e4a36f41SAndroid Build Coastguard Worker# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
29*e4a36f41SAndroid Build Coastguard Worker# Use $(OUT_DIR) to refer to the "out" directory.
30*e4a36f41SAndroid Build Coastguard Worker#
31*e4a36f41SAndroid Build Coastguard Worker# If you need to re-do something that's already mentioned, just copy
32*e4a36f41SAndroid Build Coastguard Worker# the command and add it to the bottom of the list.  E.g., if a change
33*e4a36f41SAndroid Build Coastguard Worker# that you made last week required touching a file and a change you
34*e4a36f41SAndroid Build Coastguard Worker# made today requires touching the same file, just copy the old
35*e4a36f41SAndroid Build Coastguard Worker# touch step and add it to the end of the list.
36*e4a36f41SAndroid Build Coastguard Worker#
37*e4a36f41SAndroid Build Coastguard Worker# ************************************************
38*e4a36f41SAndroid Build Coastguard Worker# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
39*e4a36f41SAndroid Build Coastguard Worker# ************************************************
40*e4a36f41SAndroid Build Coastguard Worker
41*e4a36f41SAndroid Build Coastguard Worker# For example:
42*e4a36f41SAndroid Build Coastguard Worker#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
43*e4a36f41SAndroid Build Coastguard Worker#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
44*e4a36f41SAndroid Build Coastguard Worker#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
45*e4a36f41SAndroid Build Coastguard Worker#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
46*e4a36f41SAndroid Build Coastguard Worker
47*e4a36f41SAndroid Build Coastguard Worker# ************************************************
48*e4a36f41SAndroid Build Coastguard Worker# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
49*e4a36f41SAndroid Build Coastguard Worker# ************************************************
50*e4a36f41SAndroid Build Coastguard Worker
51*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/file_contexts)
52*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/file_contexts)
53*e4a36f41SAndroid Build Coastguard Worker
54*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/service_contexts)
55*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/service_contexts)
56*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_property_contexts)
57*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_property_contexts)
58*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/plat_property_contexts)
59*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/plat_property_contexts)
60*e4a36f41SAndroid Build Coastguard Worker
61*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/property_contexts)
62*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/property_contexts)
63*e4a36f41SAndroid Build Coastguard Worker
64*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/property_contexts)
65*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/property_contexts)
66*e4a36f41SAndroid Build Coastguard Worker
67*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/selinux/plat_property_contexts)
68*e4a36f41SAndroid Build Coastguard Worker
69*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/selinux/nonplat_property_contexts)
70*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/selinux/mapping_sepolicy.cil)
71*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/selinux/plat_sepolicy.cil.sha256)
72*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/selinux/precompiled_sepolicy.plat.sha256)
73*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/selinux/mapping_sepolicy.cil)
74*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/etc/selinux/nonplat_service_contexts)
75*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/ETC/nonplat_service_contexts_intermediates)
76*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/NOTICE_FILES/src/vendor/etc/selinux/nonplat_service_contexts.txt)
77*e4a36f41SAndroid Build Coastguard Worker
78*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_sepolicy.cil)
79*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_file_contexts)
80*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_hwservice_contexts)
81*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_mac_permissions.xml)
82*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_property_contexts)
83*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_seapp_contexts)
84*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_file_contexts)
85*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_property_contexts)
86*e4a36f41SAndroid Build Coastguard Worker# For non-Treble devices.
87*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_file_contexts)
88*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_hwservice_contexts)
89*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_property_contexts)
90*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_seapp_contexts)
91*e4a36f41SAndroid Build Coastguard Worker
92*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_sepolicy.cil)
93*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_file_contexts)
94*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_hwservice_contexts)
95*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_mac_permissions.xml)
96*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_property_contexts)
97*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/vendor_seapp_contexts)
98*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/vendor_file_contexts)
99*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/vendor_property_contexts)
100*e4a36f41SAndroid Build Coastguard Worker# For non-Treble devices.
101*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/vendor_file_contexts)
102*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/vendor_hwservice_contexts)
103*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/vendor_property_contexts)
104*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/vendor_seapp_contexts)
105*e4a36f41SAndroid Build Coastguard Worker
106*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_sepolicy.cil)
107*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_file_contexts)
108*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_hwservice_contexts)
109*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_mac_permissions.xml)
110*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_property_contexts)
111*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(TARGET_OUT_VENDOR)/etc/selinux/nonplat_seapp_contexts)
112*e4a36f41SAndroid Build Coastguard Worker
113*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_file_contexts)
114*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_hwservice_contexts)
115*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_property_contexts)
116*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_seapp_contexts)
117*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/nonplat_service_contexts)
118*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_file_contexts)
119*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_hwservice_contexts)
120*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_property_contexts)
121*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_seapp_contexts)
122*e4a36f41SAndroid Build Coastguard Worker$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/nonplat_service_contexts)
123