aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix <google@ix5.org>2019-05-26 12:09:50 +0200
committerTom Cherry <tomcherry@google.com>2019-09-19 16:22:22 -0700
commit5417105d0f2445531cb8ec47955322c1c9318a0e (patch)
treea2d82b8be4cd2059a8a4154214535e58d0b84dc5
parent180275bcd5d78efde2a37b4347984372866878c9 (diff)
downloadbuild-5417105d0f2445531cb8ec47955322c1c9318a0e.tar.gz
fs_config: Fix cases without vendor/oem partition
If the device has neither an OEM nor a vendor partiton, $PRIVATE_PARTITION_LIST will be empty, causing the fsconfig tool to fail because the "--all-partitions" argument will be empty. Quote the comma-substituted "$(PRIVATE_PARTITION_LIST)" - which may be empty - to appease argparse, which will then populate "_all_partitions" with an empty "str" object. Checking _all_partitions against None is superfluous since either argparse will catch the empty argument and fail early, or the argument will be a string, in which case it will not be None. Bug: 140578676 Test: build only a system partition Signed-off-by: Felix <google@ix5.org> Change-Id: I236e30445b303b4945467b5dc4387d54b5d984f9 (cherry picked from commit 8453f02c652e1ec0467648064393b61c9b424d68)
-rw-r--r--tools/fs_config/Android.mk4
-rwxr-xr-xtools/fs_config/fs_config_generator.py4
2 files changed, 2 insertions, 6 deletions
diff --git a/tools/fs_config/Android.mk b/tools/fs_config/Android.mk
index 96db0f39fb..af0da46b29 100644
--- a/tools/fs_config/Android.mk
+++ b/tools/fs_config/Android.mk
@@ -99,7 +99,7 @@ $(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_G
--aid-header $(PRIVATE_ANDROID_FS_HDR) \
--capability-header $(PRIVATE_ANDROID_CAP_HDR) \
--partition system \
- --all-partitions $(subst $(space),$(comma),$(PRIVATE_PARTITION_LIST)) \
+ --all-partitions "$(subst $(space),$(comma),$(PRIVATE_PARTITION_LIST))" \
--dirs \
--out_file $@ \
$(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
@@ -124,7 +124,7 @@ $(LOCAL_BUILT_MODULE): $(LOCAL_PATH)/fs_config_generator.py $(TARGET_FS_CONFIG_G
--aid-header $(PRIVATE_ANDROID_FS_HDR) \
--capability-header $(PRIVATE_ANDROID_CAP_HDR) \
--partition system \
- --all-partitions $(subst $(space),$(comma),$(PRIVATE_PARTITION_LIST)) \
+ --all-partitions "$(subst $(space),$(comma),$(PRIVATE_PARTITION_LIST))" \
--files \
--out_file $@ \
$(or $(PRIVATE_TARGET_FS_CONFIG_GEN),/dev/null)
diff --git a/tools/fs_config/fs_config_generator.py b/tools/fs_config/fs_config_generator.py
index dccff928f9..4400466084 100755
--- a/tools/fs_config/fs_config_generator.py
+++ b/tools/fs_config/fs_config_generator.py
@@ -1004,10 +1004,6 @@ class FSConfigGen(BaseGenerator):
self._partition = args['partition']
self._all_partitions = args['all_partitions']
- if self._partition == 'system' and self._all_partitions is None:
- sys.exit(
- 'All other partitions must be provided if generating output'
- ' for the system partition')
self._out_file = args['out_file']