platform_build/tools
William Roberts 64edf5bb97 fs_config: support parsing android_filesystem_config.h
Rather than hardcode the OEM ranges, parse and extract
AID values from android_filesystem_config.h.

An AID is defined to the tool as:
  * #define AID_<name>

An OEM Range is defined to the the tool as:
  * AID_OEM_RESERVED_START
  * AID_OEM_RESERVED_END
  or
  * AID_OEM_RESERVED_N_START
  * AID_OEM_RESERVED_N_END

Where N is a number.

While parsing, perform sanity checks such as:
1. AIDs defined in the header cannot be within OEM range
2. OEM Ranges must be valid:
   * Cannot overlap one another.
   * Range START must be less than range END
3. Like the C preproccessor, multiple matching AID_<name> throws
   en error.

The parser introduced here, prepares the tool to output android_ids
consumable for bionic.

Note that some AID_* friendly names were not consistent, thus a small
fixup map had to be placed inside the tool.

Test: tested parsing and dumping the data from android_filesystem_config.h
file.
Change-Id: Ifa4d1c9565d061b60542296fe33c8eba31649e62
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-11-29 16:21:17 -08:00
..
acp Switch some build tools to Soong 2016-06-06 14:51:52 -07:00
apicheck Ensure prebuilt executables are executable 2016-04-11 11:21:47 -07:00
atree Fix clang-tidy performance warnings. 2016-07-27 10:28:33 -07:00
droiddoc Creates a css nowrap class for non-breaking elements 2016-11-09 21:17:41 +00:00
fs_config fs_config: support parsing android_filesystem_config.h 2016-11-29 16:21:17 -08:00
fs_get_stats fix device specific fs_config on build server 2015-07-10 10:55:54 -07:00
ijar Use more prebuilt build-tools 2016-06-14 13:50:38 -07:00
libhost Remove build/libs 2016-06-16 14:52:47 -07:00
makeparallel Propagate signals through makeparallel 2016-10-03 15:33:11 -07:00
releasetools releasetools: Use java_path in sign_target_files_apks.py. 2016-11-08 12:48:43 -08:00
signapk "SignApk" in Created-By header 2016-09-07 13:21:00 -07:00
signtos
zipalign zipalign missing header 2016-10-17 12:22:44 -07:00
ziptime Switch some build tools to Soong 2016-06-06 14:51:52 -07:00
adbs
Android.mk Remove unneccessary TARGET_BUILD_APPS conditional 2015-12-15 15:49:53 -08:00
brillo-clang-format Include Brillo's cannonical .clang-format file. 2016-02-16 14:29:45 -08:00
buildinfo.sh Add ro.build.ab_update property. 2015-11-19 18:42:52 +00:00
check_builds.sh
check_link_type.py Fix link_type checking 2016-09-15 14:40:39 -07:00
check_radio_versions.py
compare_fileslist.py
dump-package-stats
event_log_tags.py
fat16copy.py fat16copy: Fix allocation logic when extending directories. 2016-09-23 14:21:43 -07:00
fileslist.py build: tools: Add json collection of installed files with hashes. 2016-10-14 16:29:16 -07:00
fileslist_util.py build: tools: Add json collection of installed files with hashes. 2016-10-14 16:29:16 -07:00
filter-product-graph.py
findleaves.py findleaves.py: prevent recursion into symlink loops 2016-11-03 14:29:40 -07:00
fixlinebreaks.sh
generate-notice-files.py Create reproducible NOTICE collections 2015-11-10 12:37:23 -08:00
java-event-log-tags.py Add float support to binary event log. 2015-04-28 18:21:09 -07:00
java-layers.py
kati_all_products.sh Add tool to run kati for all products 2016-10-05 14:04:21 -07:00
merge-event-log-tags.py
mktarball.sh fix device specific fs_config on build server 2015-07-10 10:55:54 -07:00
normalize_path.py Normalize the product makefile path in inherit-product. 2015-10-28 15:20:41 -07:00
parsedeps.py
post_process_props.py Do not add 'adb' to persist.sys.usb.config if already there 2015-05-29 07:46:40 +00:00
print_module_licenses.sh
product_debug.py
soong_to_convert.py Identify modules ready to be converted to Soong 2016-08-26 13:33:31 -07:00
warn.py Update warn.py for new Error Prone diagnostics 2016-11-22 10:35:07 -08:00