blob: e4c362630fbdcee78e617f63aa8d9c7a75aca3d3 [file] [log] [blame]
The Android Open Source Project88b60792009-03-03 19:28:42 -08001# Copyright (C) 2008 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
15LOCAL_PATH := $(call my-dir)
Mark Salyzyn073a9eb2015-04-15 12:53:39 -070016
Tom Cherrye0f3ed52019-02-11 13:09:59 -080017# One can override the default android_filesystem_config.h file by using TARGET_FS_CONFIG_GEN.
18# Set TARGET_FS_CONFIG_GEN to contain a list of intermediate format files
William Robertsc950a352016-03-04 18:12:29 -080019# for generating the android_filesystem_config.h file.
20#
21# More information can be found in the README
Mark Salyzyn06b91b92015-04-01 14:41:29 -070022
Tom Cherry9d924f62019-02-13 14:02:30 -080023ifneq ($(wildcard $(TARGET_DEVICE_DIR)/android_filesystem_config.h),)
24$(error Using $(TARGET_DEVICE_DIR)/android_filesystem_config.h is deprecated, please use TARGET_FS_CONFIG_GEN instead)
Tom Cherry1a9f8352019-02-13 16:17:39 -080025endif
26
Jiyong Park8d6481b2024-05-03 16:55:32 +090027android_filesystem_config := system/core/libcutils/include/private/android_filesystem_config.h
28capability_header := bionic/libc/kernel/uapi/linux/capability.h
Justin Yun9d3356b2021-07-13 11:42:18 +090029
Ramji Jiyani13a41372022-01-27 07:05:08 +000030# List of supported vendor, oem, odm, vendor_dlkm, odm_dlkm, and system_dlkm Partitions
Mark Salyzyn1fd588c2017-03-22 15:53:12 -070031fs_config_generate_extra_partition_list := $(strip \
32 $(if $(BOARD_USES_VENDORIMAGE)$(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE),vendor) \
33 $(if $(BOARD_USES_OEMIMAGE)$(BOARD_OEMIMAGE_FILE_SYSTEM_TYPE),oem) \
Mark Salyzyncf343a62018-11-16 09:44:07 -080034 $(if $(BOARD_USES_ODMIMAGE)$(BOARD_ODMIMAGE_FILE_SYSTEM_TYPE),odm) \
Yifan Hongcfb917a2020-05-07 14:58:20 -070035 $(if $(BOARD_USES_VENDOR_DLKMIMAGE)$(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE),vendor_dlkm) \
Yifan Hongf496f1b2020-07-15 16:52:59 -070036 $(if $(BOARD_USES_ODM_DLKMIMAGE)$(BOARD_ODM_DLKMIMAGE_FILE_SYSTEM_TYPE),odm_dlkm) \
Ramji Jiyani13a41372022-01-27 07:05:08 +000037 $(if $(BOARD_USES_SYSTEM_DLKMIMAGE)$(BOARD_SYSTEM_DLKMIMAGE_FILE_SYSTEM_TYPE),system_dlkm) \
Mark Salyzyncf343a62018-11-16 09:44:07 -080038)
Mark Salyzyn06b91b92015-04-01 14:41:29 -070039
William Robertsc950a352016-03-04 18:12:29 -080040##################################
Anton Hanssone85ec842018-06-26 14:03:38 +010041# Generate the <p>/etc/fs_config_dirs binary files for each partition.
42# Add fs_config_dirs to PRODUCT_PACKAGES in the device make file to enable.
Mark Salyzyn06b91b92015-04-01 14:41:29 -070043include $(CLEAR_VARS)
44
45LOCAL_MODULE := fs_config_dirs
Bob Badourd2c7c082022-01-24 15:21:32 -080046LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
47LOCAL_LICENSE_CONDITIONS := notice
48LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Anton Hanssone85ec842018-06-26 14:03:38 +010049LOCAL_REQUIRED_MODULES := \
Justin Yun75f7cf92020-10-19 16:58:06 +090050 fs_config_dirs_system \
51 fs_config_dirs_system_ext \
52 fs_config_dirs_product \
53 fs_config_dirs_nonsystem
Anton Hanssone85ec842018-06-26 14:03:38 +010054include $(BUILD_PHONY_PACKAGE)
55
Anton Hanssone85ec842018-06-26 14:03:38 +010056##################################
57# Generate the <p>/etc/fs_config_files binary files for each partition.
58# Add fs_config_files to PRODUCT_PACKAGES in the device make file to enable.
59include $(CLEAR_VARS)
60
61LOCAL_MODULE := fs_config_files
Bob Badourd2c7c082022-01-24 15:21:32 -080062LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
63LOCAL_LICENSE_CONDITIONS := notice
64LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Anton Hanssone85ec842018-06-26 14:03:38 +010065LOCAL_REQUIRED_MODULES := \
66 fs_config_files_system \
Justin Yun75f7cf92020-10-19 16:58:06 +090067 fs_config_files_system_ext \
68 fs_config_files_product \
69 fs_config_files_nonsystem
70include $(BUILD_PHONY_PACKAGE)
71
72##################################
Anton Hanssone85ec842018-06-26 14:03:38 +010073# Generate the <p>/etc/fs_config_dirs binary files for all enabled partitions
Justin Yun75f7cf92020-10-19 16:58:06 +090074# excluding /system, /system_ext and /product. Add fs_config_dirs_nonsystem to
75# PRODUCT_PACKAGES in the device make file to enable.
Anton Hanssone85ec842018-06-26 14:03:38 +010076include $(CLEAR_VARS)
77
78LOCAL_MODULE := fs_config_dirs_nonsystem
Bob Badourd2c7c082022-01-24 15:21:32 -080079LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
80LOCAL_LICENSE_CONDITIONS := notice
81LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Jiyong Park8d6481b2024-05-03 16:55:32 +090082LOCAL_REQUIRED_MODULES := $(foreach t,$(fs_config_generate_extra_partition_list),fs_config_dirs_$(t))
Anton Hanssone85ec842018-06-26 14:03:38 +010083include $(BUILD_PHONY_PACKAGE)
84
85##################################
86# Generate the <p>/etc/fs_config_files binary files for all enabled partitions
Justin Yun75f7cf92020-10-19 16:58:06 +090087# excluding /system, /system_ext and /product. Add fs_config_files_nonsystem to
88# PRODUCT_PACKAGES in the device make file to enable.
Anton Hanssone85ec842018-06-26 14:03:38 +010089include $(CLEAR_VARS)
90
91LOCAL_MODULE := fs_config_files_nonsystem
Bob Badourd2c7c082022-01-24 15:21:32 -080092LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
93LOCAL_LICENSE_CONDITIONS := notice
94LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Jiyong Park8d6481b2024-05-03 16:55:32 +090095LOCAL_REQUIRED_MODULES := $(foreach t,$(fs_config_generate_extra_partition_list),fs_config_files_$(t))
Anton Hanssone85ec842018-06-26 14:03:38 +010096include $(BUILD_PHONY_PACKAGE)
97
Mark Salyzyn1fd588c2017-03-22 15:53:12 -070098ifneq ($(filter oem,$(fs_config_generate_extra_partition_list)),)
99##################################
100# Generate the oem/etc/fs_config_dirs binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900101# Add fs_config_dirs or fs_config_dirs_nonsystem to PRODUCT_PACKAGES
102# in the device make file to enable
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700103include $(CLEAR_VARS)
104
Jiyong Park8d6481b2024-05-03 16:55:32 +0900105LOCAL_MODULE := fs_config_dirs_oem
Bob Badourd2c7c082022-01-24 15:21:32 -0800106LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
107LOCAL_LICENSE_CONDITIONS := notice
108LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700109LOCAL_MODULE_CLASS := ETC
110LOCAL_INSTALLED_MODULE_STEM := fs_config_dirs
111LOCAL_MODULE_PATH := $(TARGET_OUT_OEM)/etc
112include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900113$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
114$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Tom Cherry9d924f62019-02-13 14:02:30 -0800115$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900116$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700117 @mkdir -p $(dir $@)
Tom Cherry9d924f62019-02-13 14:02:30 -0800118 $< fsconfig \
119 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
120 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
121 --partition oem \
122 --dirs \
123 --out_file $@ \
124 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700125
126##################################
127# Generate the oem/etc/fs_config_files binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900128# Add fs_config_files or fs_config_files_nonsystem to PRODUCT_PACKAGES
129# in the device make file to enable
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700130include $(CLEAR_VARS)
131
Jiyong Park8d6481b2024-05-03 16:55:32 +0900132LOCAL_MODULE := fs_config_files_oem
Bob Badourd2c7c082022-01-24 15:21:32 -0800133LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
134LOCAL_LICENSE_CONDITIONS := notice
135LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700136LOCAL_MODULE_CLASS := ETC
137LOCAL_INSTALLED_MODULE_STEM := fs_config_files
138LOCAL_MODULE_PATH := $(TARGET_OUT_OEM)/etc
139include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900140$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
141$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Tom Cherry9d924f62019-02-13 14:02:30 -0800142$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900143$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700144 @mkdir -p $(dir $@)
Tom Cherry9d924f62019-02-13 14:02:30 -0800145 $< fsconfig \
146 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
147 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
148 --partition oem \
149 --files \
150 --out_file $@ \
151 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
Mark Salyzyn1fd588c2017-03-22 15:53:12 -0700152
153endif
154
Yifan Hongcfb917a2020-05-07 14:58:20 -0700155ifneq ($(filter vendor_dlkm,$(fs_config_generate_extra_partition_list)),)
156##################################
157# Generate the vendor_dlkm/etc/fs_config_dirs binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900158# Add fs_config_dirs or fs_config_dirs_nonsystem to PRODUCT_PACKAGES in
Yifan Hongcfb917a2020-05-07 14:58:20 -0700159# the device make file to enable
160include $(CLEAR_VARS)
161
Jiyong Park8d6481b2024-05-03 16:55:32 +0900162LOCAL_MODULE := fs_config_dirs_vendor_dlkm
Bob Badourd2c7c082022-01-24 15:21:32 -0800163LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
164LOCAL_LICENSE_CONDITIONS := notice
165LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Yifan Hongcfb917a2020-05-07 14:58:20 -0700166LOCAL_MODULE_CLASS := ETC
167LOCAL_INSTALLED_MODULE_STEM := fs_config_dirs
168LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_DLKM)/etc
169include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900170$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
171$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Yifan Hongcfb917a2020-05-07 14:58:20 -0700172$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900173$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Yifan Hongcfb917a2020-05-07 14:58:20 -0700174 @mkdir -p $(dir $@)
175 $< fsconfig \
176 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
177 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
178 --partition vendor_dlkm \
179 --dirs \
180 --out_file $@ \
181 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
182
183##################################
184# Generate the vendor_dlkm/etc/fs_config_files binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900185# Add fs_config_files or fs_config_files_nonsystem to PRODUCT_PACKAGES in
Yifan Hongcfb917a2020-05-07 14:58:20 -0700186# the device make file to enable
187include $(CLEAR_VARS)
188
Jiyong Park8d6481b2024-05-03 16:55:32 +0900189LOCAL_MODULE := fs_config_files_vendor_dlkm
Bob Badourd2c7c082022-01-24 15:21:32 -0800190LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
191LOCAL_LICENSE_CONDITIONS := notice
192LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Yifan Hongcfb917a2020-05-07 14:58:20 -0700193LOCAL_MODULE_CLASS := ETC
194LOCAL_INSTALLED_MODULE_STEM := fs_config_files
195LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_DLKM)/etc
196include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900197$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
198$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Yifan Hongcfb917a2020-05-07 14:58:20 -0700199$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900200$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Yifan Hongcfb917a2020-05-07 14:58:20 -0700201 @mkdir -p $(dir $@)
202 $< fsconfig \
203 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
204 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
205 --partition vendor_dlkm \
206 --files \
207 --out_file $@ \
208 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
209
210endif
211
Yifan Hongf496f1b2020-07-15 16:52:59 -0700212ifneq ($(filter odm_dlkm,$(fs_config_generate_extra_partition_list)),)
213##################################
214# Generate the odm_dlkm/etc/fs_config_dirs binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900215# Add fs_config_dirs or fs_config_dirs_nonsystem to PRODUCT_PACKAGES
216# in the device make file to enable
Yifan Hongf496f1b2020-07-15 16:52:59 -0700217include $(CLEAR_VARS)
218
Jiyong Park8d6481b2024-05-03 16:55:32 +0900219LOCAL_MODULE := fs_config_dirs_odm_dlkm
Bob Badourd2c7c082022-01-24 15:21:32 -0800220LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
221LOCAL_LICENSE_CONDITIONS := notice
222LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Yifan Hongf496f1b2020-07-15 16:52:59 -0700223LOCAL_MODULE_CLASS := ETC
224LOCAL_INSTALLED_MODULE_STEM := fs_config_dirs
225LOCAL_MODULE_PATH := $(TARGET_OUT_ODM_DLKM)/etc
226include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900227$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
228$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Yifan Hongf496f1b2020-07-15 16:52:59 -0700229$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900230$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Yifan Hongf496f1b2020-07-15 16:52:59 -0700231 @mkdir -p $(dir $@)
232 $< fsconfig \
233 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
234 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
235 --partition odm_dlkm \
236 --dirs \
237 --out_file $@ \
238 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
239
240##################################
241# Generate the odm_dlkm/etc/fs_config_files binary file for the target
Justin Yun75f7cf92020-10-19 16:58:06 +0900242# Add fs_config_files or fs_config_files_nonsystem to PRODUCT_PACKAGES
243# in the device make file to enable
Yifan Hongf496f1b2020-07-15 16:52:59 -0700244include $(CLEAR_VARS)
245
Jiyong Park8d6481b2024-05-03 16:55:32 +0900246LOCAL_MODULE := fs_config_files_odm_dlkm
Bob Badourd2c7c082022-01-24 15:21:32 -0800247LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
248LOCAL_LICENSE_CONDITIONS := notice
249LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
Yifan Hongf496f1b2020-07-15 16:52:59 -0700250LOCAL_MODULE_CLASS := ETC
251LOCAL_INSTALLED_MODULE_STEM := fs_config_files
252LOCAL_MODULE_PATH := $(TARGET_OUT_ODM_DLKM)/etc
253include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900254$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
255$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Yifan Hongf496f1b2020-07-15 16:52:59 -0700256$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900257$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Yifan Hongf496f1b2020-07-15 16:52:59 -0700258 @mkdir -p $(dir $@)
259 $< fsconfig \
260 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
261 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
262 --partition odm_dlkm \
263 --files \
264 --out_file $@ \
265 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
266
267endif
268
Ramji Jiyani13a41372022-01-27 07:05:08 +0000269ifneq ($(filter system_dlkm,$(fs_config_generate_extra_partition_list)),)
270##################################
271# Generate the system_dlkm/etc/fs_config_dirs binary file for the target
272# Add fs_config_dirs or fs_config_dirs_nonsystem to PRODUCT_PACKAGES
273# in the device make file to enable
274include $(CLEAR_VARS)
275
Jiyong Park8d6481b2024-05-03 16:55:32 +0900276LOCAL_MODULE := fs_config_dirs_system_dlkm
Ramji Jiyani13a41372022-01-27 07:05:08 +0000277LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
278LOCAL_LICENSE_CONDITIONS := notice
279LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
280LOCAL_MODULE_CLASS := ETC
281LOCAL_INSTALLED_MODULE_STEM := fs_config_dirs
282LOCAL_MODULE_PATH := $(TARGET_OUT_SYSTEM_DLKM)/etc
283include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900284$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
285$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Ramji Jiyani13a41372022-01-27 07:05:08 +0000286$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900287$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Ramji Jiyani13a41372022-01-27 07:05:08 +0000288 @mkdir -p $(dir $@)
289 $< fsconfig \
290 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
291 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
292 --partition system_dlkm \
293 --dirs \
294 --out_file $@ \
295 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
296
297##################################
298# Generate the system_dlkm/etc/fs_config_files binary file for the target
299# Add fs_config_files or fs_config_files_nonsystem to PRODUCT_PACKAGES
300# in the device make file to enable
301include $(CLEAR_VARS)
302
Jiyong Park8d6481b2024-05-03 16:55:32 +0900303LOCAL_MODULE := fs_config_files_system_dlkm
Ramji Jiyani13a41372022-01-27 07:05:08 +0000304LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
305LOCAL_LICENSE_CONDITIONS := notice
306LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE
307LOCAL_MODULE_CLASS := ETC
308LOCAL_INSTALLED_MODULE_STEM := fs_config_files
309LOCAL_MODULE_PATH := $(TARGET_OUT_SYSTEM_DLKM)/etc
310include $(BUILD_SYSTEM)/base_rules.mk
Jiyong Park8d6481b2024-05-03 16:55:32 +0900311$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_FS_HDR := $(android_filesystem_config)
312$(LOCAL_BUILT_MODULE): PRIVATE_ANDROID_CAP_HDR := $(capability_header)
Ramji Jiyani13a41372022-01-27 07:05:08 +0000313$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_FS_CONFIG_GEN := $(TARGET_FS_CONFIG_GEN)
Jiyong Park8d6481b2024-05-03 16:55:32 +0900314$(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_GEN) $(android_filesystem_config) $(capability_header)
Ramji Jiyani13a41372022-01-27 07:05:08 +0000315 @mkdir -p $(dir $@)
316 $< fsconfig \
317 --aid-header $(PRIVATE_ANDROID_FS_HDR) \
318 --capability-header $(PRIVATE_ANDROID_CAP_HDR) \
319 --partition system_dlkm \
320 --files \
321 --out_file $@ \
322 $(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
323
324endif
325
Jiyong Park8d6481b2024-05-03 16:55:32 +0900326android_filesystem_config :=
327capability_header :=
William Roberts6b19e492017-05-15 11:02:53 -0700328fs_config_generate_extra_partition_list :=