diff options
| author | Jaewoong Jung <jungjw@google.com> | 2019-01-17 19:26:38 -0800 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2019-01-17 19:26:38 -0800 |
| commit | 10c965e313fe8d190001232298f04b57f9921b3f (patch) | |
| tree | 363664430ed3c1e98ae75d3058a7300339afc291 /vndk | |
| parent | bdcb5373e42ff094e4eb94205d2d7c1c218a091d (diff) | |
| parent | 78abe677891cf7fce0c6f70327104845eb6d0b18 (diff) | |
| download | android_development-10c965e313fe8d190001232298f04b57f9921b3f.tar.gz android_development-10c965e313fe8d190001232298f04b57f9921b3f.tar.bz2 android_development-10c965e313fe8d190001232298f04b57f9921b3f.zip | |
Merge "Use Soong to build to etc modules." am: 91a331e07f am: 640eb216ca
am: 78abe67789
Change-Id: I6a11933023b4a3ed467b98cc998fa858a7b89fa2
Diffstat (limited to 'vndk')
| -rw-r--r-- | vndk/snapshot/gen_buildfiles.py | 57 | ||||
| -rw-r--r-- | vndk/snapshot/update.py | 4 | ||||
| -rw-r--r-- | vndk/snapshot/utils.py | 2 |
3 files changed, 32 insertions, 31 deletions
diff --git a/vndk/snapshot/gen_buildfiles.py b/vndk/snapshot/gen_buildfiles.py index 35697aa45..9a8d4de1b 100644 --- a/vndk/snapshot/gen_buildfiles.py +++ b/vndk/snapshot/gen_buildfiles.py @@ -25,9 +25,10 @@ import utils class GenBuildFile(object): - """Generates Android.mk and Android.bp for VNDK snapshot. + """Generates Android.bp for VNDK snapshot. VNDK snapshot directory structure under prebuilts/vndk/v{version}: + Android.bp {SNAPSHOT_ARCH}/ Android.bp arch-{TARGET_ARCH}-{TARGET_ARCH_VARIANT}/ @@ -52,7 +53,6 @@ class GenBuildFile(object): (various *.txt configuration files, e.g. ld.config.*.txt) ... (other {SNAPSHOT_ARCH}/ directories) common/ - Android.mk Android.bp NOTICE_FILES/ (license files, e.g. libfoo.so.txt) @@ -77,7 +77,7 @@ class GenBuildFile(object): self._vndk_version = vndk_version self._etc_paths = self._get_etc_paths() self._snapshot_archs = utils.get_snapshot_archs(install_dir) - self._mkfile = os.path.join(install_dir, utils.ANDROID_MK_PATH) + self._root_bpfile = os.path.join(install_dir, utils.ROOT_BP_PATH) self._common_bpfile = os.path.join(install_dir, utils.COMMON_BP_PATH) self._vndk_core = self._parse_lib_list('vndkcore.libraries.txt') self._vndk_sp = self._parse_lib_list( @@ -122,10 +122,10 @@ class GenBuildFile(object): '*.txt')) return [os.path.splitext(os.path.basename(p))[0] for p in notice_paths] - def generate_android_mk(self): - """Autogenerates Android.mk.""" + def generate_root_android_bp(self): + """Autogenerates Android.bp.""" - logging.info('Generating Android.mk for snapshot v{}'.format( + logging.info('Generating Android.bp for snapshot v{}'.format( self._vndk_version)) etc_buildrules = [] for prebuilt in self.ETC_MODULES: @@ -137,15 +137,13 @@ class GenBuildFile(object): continue etc_buildrules.append(self._gen_etc_prebuilt(prebuilt)) - with open(self._mkfile, 'w') as mkfile: - mkfile.write(self._gen_autogen_msg('#')) - mkfile.write('\n') - mkfile.write('LOCAL_PATH := $(call my-dir)\n') - mkfile.write('\n') - mkfile.write('\n\n'.join(etc_buildrules)) - mkfile.write('\n') + with open(self._root_bpfile, 'w') as bpfile: + bpfile.write(self._gen_autogen_msg('/')) + bpfile.write('\n') + bpfile.write('\n'.join(etc_buildrules)) + bpfile.write('\n') - logging.info('Successfully generated {}'.format(self._mkfile)) + logging.info('Successfully generated {}'.format(self._root_bpfile)) def generate_common_android_bp(self): """Autogenerates common/Android.bp.""" @@ -266,19 +264,22 @@ class GenBuildFile(object): etc_path = self._etc_paths[prebuilt] etc_sub_path = etc_path[etc_path.index('/') + 1:] - return ('#######################################\n' - '# {prebuilt}\n' - 'include $(CLEAR_VARS)\n' - 'LOCAL_MODULE := {versioned_name}\n' - 'LOCAL_SRC_FILES := ../$(TARGET_ARCH)/{etc_sub_path}\n' - 'LOCAL_MODULE_CLASS := ETC\n' - 'LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)\n' - 'LOCAL_MODULE_STEM := $(LOCAL_MODULE)\n' - 'include $(BUILD_PREBUILT)\n'.format( - prebuilt=prebuilt, - versioned_name=self._get_versioned_name( - prebuilt, None, is_etc=True), - etc_sub_path=etc_sub_path)) + prebuilt_etc = ('prebuilt_etc {{\n' + '{ind}name: "{versioned_name}",\n' + '{ind}target: {{\n'.format( + ind=self.INDENT, + versioned_name=self._get_versioned_name( + prebuilt, None, is_etc=True))) + for arch in self._snapshot_archs: + prebuilt_etc += ('{ind}{ind}android_{arch}: {{\n' + '{ind}{ind}{ind}src: "{arch}/{etc_sub_path}",\n' + '{ind}{ind}}},\n'.format( + ind=self.INDENT, + arch=arch, + etc_sub_path=etc_sub_path)) + prebuilt_etc += ('{ind}}},\n' + '}}\n'.format(ind=self.INDENT)) + return prebuilt_etc def _gen_notice_filegroup(self, module): """Generates a notice filegroup build rule for a given module. @@ -524,7 +525,7 @@ def main(): utils.set_logging_config(args.verbose) buildfile_generator = GenBuildFile(install_dir, vndk_version) - buildfile_generator.generate_android_mk() + buildfile_generator.generate_root_android_bp() buildfile_generator.generate_common_android_bp() buildfile_generator.generate_android_bp() diff --git a/vndk/snapshot/update.py b/vndk/snapshot/update.py index 9f05a3306..051aac0c1 100644 --- a/vndk/snapshot/update.py +++ b/vndk/snapshot/update.py @@ -138,8 +138,8 @@ def revise_ld_config_txt_if_needed(vndk_version): def update_buildfiles(buildfile_generator): - logging.info('Generating Android.mk file...') - buildfile_generator.generate_android_mk() + logging.info('Generating root Android.bp file...') + buildfile_generator.generate_root_android_bp() logging.info('Generating common/Android.bp file...') buildfile_generator.generate_common_android_bp() diff --git a/vndk/snapshot/utils.py b/vndk/snapshot/utils.py index eae7b885a..7fed12819 100644 --- a/vndk/snapshot/utils.py +++ b/vndk/snapshot/utils.py @@ -25,9 +25,9 @@ import sys # Global Keys # All paths are relative to install_dir: prebuilts/vndk/v{version} +ROOT_BP_PATH = 'Android.bp' COMMON_DIR_NAME = 'common' COMMON_DIR_PATH = COMMON_DIR_NAME -ANDROID_MK_PATH = os.path.join(COMMON_DIR_PATH, 'Android.mk') COMMON_BP_PATH = os.path.join(COMMON_DIR_PATH, 'Android.bp') CONFIG_DIR_PATH_PATTERN = '*/configs' MANIFEST_FILE_NAME = 'manifest.xml' |
