diff options
author | Colin Cross <ccross@android.com> | 2017-10-27 17:50:42 +0000 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2017-10-30 14:08:49 -0700 |
commit | fb7218e7ced6dae1654ffc723835bda6e3696ac7 (patch) | |
tree | fed923d4239bb7e2924c645d15f9dd1f12016915 /annotations/generate_annotated_java_files.py | |
parent | 6f02cff303d67012a1cabbfe7ddadd85d359152c (diff) |
Revert "Revert "Add makefile targets for ojluni jaif-annotated source files.""
This reverts commit 554d65461915e1f9d2197a13d4ef39fa9964c809.
This reapplies I9571a7841cbcc2790891352e0efc69327484736b with additional fixes for absolute OUT_DIR.
Bug: 64930165
Bug: 68375156
Test: m checkbuild
Test: m docs
Change-Id: Iabb6689559752932f7e9a9bfb3c6d1077e844b1f
Diffstat (limited to 'annotations/generate_annotated_java_files.py')
-rwxr-xr-x | annotations/generate_annotated_java_files.py | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/annotations/generate_annotated_java_files.py b/annotations/generate_annotated_java_files.py new file mode 100755 index 0000000000..de8b131da6 --- /dev/null +++ b/annotations/generate_annotated_java_files.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python + +"""Generate annotated_java_files.bp from a jaif file.""" +import os + +PACKAGE_STRING = 'package ' +CLASS_STRING = 'class ' +SRC_PREFIX = 'ojluni/src/main/java/' + +BP_TEMPLATE = '''filegroup { + name: "annotated_ojluni_files", + export_to_make_var: "annotated_ojluni_files", + srcs: [ +%s + ], +}''' + +srcs_list = [] +current_package = None +with open(os.sys.argv[1], 'r') as jaif_file: + for line in jaif_file: + if line.startswith(PACKAGE_STRING): + current_package = line[len(PACKAGE_STRING): line.find(':')] + if line.startswith(CLASS_STRING) and current_package is not None: + current_class = line[len(CLASS_STRING): line.find(':')] + srcs_list.append(SRC_PREFIX + current_package.replace('.', '/') + '/' + current_class + '.java') + +print '// Do not edit; generated using libcore/annotations/generate_annotated_java_files.py' +print BP_TEMPLATE % ('\n'.join([' "' + src_entry + '",' for src_entry in sorted(srcs_list)]),) +os.sys.exit(0) |