Snap for 4585119 from 0593b301a0f22f2293026659a18f9419029d6ef0 to pi-release

Change-Id: I2f506b73d02e0a48c389e0c754eb7930dad3b2f0
diff --git a/script/build/__init__.py b/script/build/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/script/build/__init__.py
+++ /dev/null
diff --git a/script/build/func_fuzzer_build_rule_gen.py b/script/build/func_fuzzer_build_rule_gen.py
deleted file mode 100644
index caebd4e..0000000
--- a/script/build/func_fuzzer_build_rule_gen.py
+++ /dev/null
@@ -1,201 +0,0 @@
-#
-# Copyright (C) 2017 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the 'License');
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an 'AS IS' BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-import os
-import sys
-
-from importlib import import_module
-
-
-class FuncFuzzerBuildRuleGen(object):
-    """Build rule generator for test/vts-testcase/fuzz/func_fuzzer.
-
-    Attributes:
-        _android_build_top: string, equal to environment variable ANDROID_BUILD_TOP.
-        _project_path: string, path to test/vts-testcase/fuzz.
-        _func_fuzzer_dir: string, path to test/vts-testcase/fuzz/func_fuzzer.
-        _func_fuzzer_build_template: string, path to fuzzer build template file.
-        _utils: test/vts-testcase/hal/script/build/build_rule_gen_utils module.
-        _vts_spec_parser: tools that generates and parses vts spec with hidl-gen.
-        _warning_header: string, warning header for every generated file.
-    """
-
-    def __init__(self, warning_header):
-        """BuildRuleGen constructor.
-
-        Args:
-            warning_header: string, warning header for every generated file.
-        """
-        self._android_build_top = os.environ.get('ANDROID_BUILD_TOP')
-        if not self._android_build_top:
-            print 'Run "lunch" command first.'
-            sys.exit(1)
-        self._project_path = os.path.join(self._android_build_top, 'test',
-                                          'vts-testcase', 'fuzz')
-        self._func_fuzzer_dir = os.path.join(self._project_path, 'func_fuzzer')
-        self._func_fuzzer_build_template = os.path.join(
-            self._project_path, 'script', 'build', 'template',
-            'func_fuzzer_build_template.bp')
-        self._func_fuzzer_build_defaults = os.path.join(
-            self._project_path, 'script', 'build', 'template',
-            'func_fuzzer_build_defaults.bp')
-
-        sys.path.append(
-            os.path.join(self._android_build_top, 'test', 'vts-testcase', 'hal',
-                         'script', 'build'))
-        vts_spec_parser = import_module('vts_spec_parser')
-        self._utils = import_module('build_rule_gen_utils')
-        self._vts_spec_parser = vts_spec_parser.VtsSpecParser()
-        self._warning_header = warning_header
-
-    def UpdateBuildRule(self):
-        """Updates build rules under test/vts-testcase/fuzz/func_fuzzer."""
-        self._utils.RemoveFilesInDirIf(
-            self._func_fuzzer_dir,
-            lambda x: self._IsAutoGenerated(x))
-        hal_list = self._vts_spec_parser.HalNamesAndVersions()
-        self.UpdateTopLevelBuildRule()
-        self.UpdateSecondLevelBuildRule(hal_list)
-        self.UpdateHalDirBuildRule(hal_list)
-
-    def UpdateTopLevelBuildRule(self):
-        """Updates test/vts-testcase/fuzz/func_fuzzer/Android.bp"""
-        build_rule = self._warning_header
-        with open(self._func_fuzzer_build_defaults) as build_file:
-            build_rule += str(build_file.read())
-
-        self._utils.WriteBuildRule(
-            os.path.join(self._func_fuzzer_dir, 'Android.bp'), build_rule)
-
-    def UpdateSecondLevelBuildRule(self, hal_list):
-        """Updates test/vts-testcase/fuzz/func_fuzzer/<hal_name>/Android.bp"""
-        top_level_dirs = dict()
-        for target in hal_list:
-            hal_dir = os.path.join(
-                self._utils.HalNameDir(target[0]),
-                self._utils.HalVerDir(target[1]))
-            top_dir = hal_dir.split('/', 1)[0]
-            top_level_dirs.setdefault(
-                top_dir, []).append(os.path.relpath(hal_dir, top_dir))
-
-        for k, v in top_level_dirs.items():
-            file_path = os.path.join(self._func_fuzzer_dir, k, 'Android.bp')
-            self._utils.WriteBuildRule(
-                file_path,
-                self._utils.OnlySubdirsBpRule(self._warning_header, sorted(v)))
-
-    def UpdateHalDirBuildRule(self, hal_list):
-        """Updates build rules for function fuzzers.
-
-        Updates func_fuzzer build rules for each pair of
-        (hal_name, hal_version) in hal_list.
-
-        Args:
-            hal_list: list of tuple of strings. For example,
-                [('vibrator', '1.3'), ('sensors', '1.7')]
-        """
-        for target in hal_list:
-            hal_name = target[0]
-            hal_version = target[1]
-
-            file_path = os.path.join(
-                self._func_fuzzer_dir, self._utils.HalNameDir(hal_name),
-                self._utils.HalVerDir(hal_version), 'Android.bp')
-
-            self._utils.WriteBuildRule(
-                file_path, self._FuncFuzzerBuildRuleFromTemplate(
-                    hal_name, hal_version, self._func_fuzzer_build_template))
-
-    def _FuncFuzzerBuildRuleFromTemplate(self, hal_name, hal_version,
-                                         template_path):
-        """Returns build rules in string form by filling out a template.
-
-        Reads template from given path and fills it out.
-
-        Args:
-            template_path: string, path to build rule template file.
-            hal_name: string, name of the hal, e.g. 'vibrator'.
-            hal_version: string, version of the hal, e.g '7.4'
-
-        Returns:
-            string, complete build rules in string form
-        """
-        with open(template_path) as template_file:
-            build_template = str(template_file.read())
-
-        vts_spec_names = self._vts_spec_parser.VtsSpecNames(hal_name,
-                                                            hal_version)
-
-        result = self._warning_header
-        for vts_spec in vts_spec_names:
-            hal_iface_name = vts_spec.replace('.vts', '')
-            if not self._IsFuzzable(hal_iface_name):
-                continue
-            result += self._FillOutBuildRuleTemplate(
-                hal_name, hal_version, hal_iface_name, build_template)
-
-        return result
-
-    def _FillOutBuildRuleTemplate(self, hal_name, hal_version, hal_iface_name,
-                                  template):
-        """Returns build rules in string form by filling out given template.
-
-        Args:
-            hal_name: string, name of the hal, e.g. 'vibrator'.
-            hal_version: string, version of the hal, e.g '7.4'
-            hal_iface_name: string, name of a hal interface, e.g 'Vibrator'
-            template: string, build rule template to fill out.
-
-        Returns:
-            string, complete build rule in string form.
-        """
-        build_rule = template
-        build_rule = build_rule.replace('{HAL_NAME}', hal_name)
-        build_rule = build_rule.replace('{HAL_NAME_DIR}',
-                                        self._utils.HalNameDir(hal_name))
-        build_rule = build_rule.replace('{HAL_VERSION}', hal_version)
-        build_rule = build_rule.replace('{HAL_IFACE_NAME}', hal_iface_name)
-        return build_rule
-
-    def _IsAutoGenerated(self, abs_file_path):
-        """Checks if file was auto-generated.
-
-        Args:
-            abs_file_path: string, absolute file path.
-
-        Returns:
-            True iff file was auto-generated by FuncFuzzerBuildRuleGen.
-        """
-        with open(abs_file_path) as myfile:
-            header = ''.join([next(myfile) for x in xrange(2)])
-        return header == self._warning_header
-
-    @staticmethod
-    def _IsFuzzable(component_name):
-        """Checks if component is fuzzable.
-
-        Args:
-            component_name: string, name of component, e.g. 'types, 'Vibrator'
-
-        Returns:
-            True iff can generate a func_fuzzer for component_name.
-        """
-        if component_name == 'types':
-            return False
-        elif component_name.endswith('Callback'):
-            return False
-        else:
-            return True
diff --git a/script/build/template/func_fuzzer_build_defaults.bp b/script/build/template/func_fuzzer_build_defaults.bp
deleted file mode 100644
index 0710611..0000000
--- a/script/build/template/func_fuzzer_build_defaults.bp
+++ /dev/null
@@ -1,10 +0,0 @@
-subdirs = [
-    "*",
-]
-
-cc_defaults {
-    name: "func_fuzzer_defaults",
-    static_libs: [
-        "libFuzzer"
-    ],
-}
diff --git a/script/build/template/func_fuzzer_build_template.bp b/script/build/template/func_fuzzer_build_template.bp
deleted file mode 100644
index 1aeecf8..0000000
--- a/script/build/template/func_fuzzer_build_template.bp
+++ /dev/null
@@ -1,33 +0,0 @@
-genrule {
-    name: "android.hardware.{HAL_NAME}@{HAL_VERSION}-vts.func_fuzzer.{HAL_IFACE_NAME}_genc++",
-    tools: ["hidl-gen", "vtsc"],
-    cmd: "$(location hidl-gen) -o $(genDir) -Lvts -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.{HAL_NAME}@{HAL_VERSION} && $(location vtsc) -mFUZZER -tSOURCE -b$(genDir) android/hardware/{HAL_NAME_DIR}/{HAL_VERSION}/ $(genDir)/android/hardware/{HAL_NAME_DIR}/{HAL_VERSION}/",
-    srcs: [
-        ":android.hardware.{HAL_NAME}@{HAL_VERSION}_hal",
-    ],
-    out: [
-        "android/hardware/{HAL_NAME_DIR}/{HAL_VERSION}/{HAL_IFACE_NAME}.vts.cpp",
-    ],
-}
-
-cc_binary {
-    name: "android.hardware.{HAL_NAME}@{HAL_VERSION}-vts.func_fuzzer.{HAL_IFACE_NAME}",
-    defaults: ["func_fuzzer_defaults"],
-    srcs: [":android.hardware.{HAL_NAME}@{HAL_VERSION}-vts.func_fuzzer.{HAL_IFACE_NAME}_genc++"],
-    shared_libs: [
-        "android.hardware.{HAL_NAME}@{HAL_VERSION}",
-        "libcutils",
-        "liblog",
-        "libutils",
-        "libhidlbase",
-        "libhidltransport",
-        "libhwbinder",
-        "libhardware",
-        "libvts_func_fuzzer_utils",
-    ],
-    cflags: [
-        "-Wno-unused-parameter",
-        "-fno-omit-frame-pointer",
-    ],
-}
-
diff --git a/script/update_configs.py b/script/update_configs.py
new file mode 100644
index 0000000..ef0fd0c
--- /dev/null
+++ b/script/update_configs.py
@@ -0,0 +1,35 @@
+#
+# Copyright (C) 2017 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+"""Updates .bp, .mk, .xml files under test/vts-testcase/fuzz.
+
+Among files affected are:
+Config Files:
+1. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/func_fuzzer/Android.mk
+2. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/func_fuzzer/AndroidTest.xml
+3. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/iface_fuzzer/Android.mk
+4. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/iface_fuzzer/AndroidTest.xml
+
+
+Usage:
+    python test/vts-testcase/fuzz/update_makefiles.py
+"""
+
+from config.config_gen import ConfigGen
+
+if __name__ == '__main__':
+    print 'Updating config files.'
+    config_gen = ConfigGen()
+    config_gen.UpdateFuzzerConfigs()
diff --git a/script/update_makefiles.py b/script/update_makefiles.py
deleted file mode 100644
index 5419b7e..0000000
--- a/script/update_makefiles.py
+++ /dev/null
@@ -1,75 +0,0 @@
-#
-# Copyright (C) 2017 The Android Open Source Project
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-"""Updates .bp, .mk, .xml files under test/vts-testcase/fuzz.
-
-Among files affected are:
-Build rules:
-1. test/vts-testcase/fuzz/func_fuzzerAndroid.bp
-2. files matching: test/vts-testcase/fuzz/func_fuzzer/Android.bp
-3. files matching: test/vts-testcase/fuzz/func_fuzzer/<hal_name>/<hal_version>/Android.bp
-
-Config Files:
-1. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/func_fuzzer/Android.mk
-2. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/func_fuzzer/AndroidTest.xml
-3. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/iface_fuzzer/Android.mk
-4. files matching: test/vts-testcase/fuzz/<hal_name>/<hal_version>/iface_fuzzer/AndroidTest.xml
-
-
-Usage:
-    python test/vts-testcase/fuzz/update_makefiles.py
-"""
-
-import argparse
-import os
-import sys
-
-from build.func_fuzzer_build_rule_gen import FuncFuzzerBuildRuleGen
-from config.config_gen import ConfigGen
-
-if __name__ == '__main__':
-    parser = argparse.ArgumentParser()
-    parser.add_argument(
-        '--build',
-        dest='build',
-        action='store_true',
-        required=False,
-        help='Whether to create update build rules.')
-
-    parser.add_argument(
-        '--config',
-        dest='config',
-        action='store_true',
-        required=False,
-        help='Whether to create update config files.')
-    args = parser.parse_args()
-
-    if not args.build and not args.config:
-        print 'Updating build rules and config files.'
-        args.build = True
-        args.config = True
-
-    if args.build:
-        print 'Updating build rules.'
-        warning_header = (
-            '// This file was auto-generated by test/vts-testcase/fuzz/script/update_makefiles.py.\n'
-            '// Do not edit manually.\n')
-        build_rule_gen = FuncFuzzerBuildRuleGen(warning_header)
-        build_rule_gen.UpdateBuildRule()
-
-    if args.config:
-        print 'Updating config files.'
-        config_gen = ConfigGen()
-        config_gen.UpdateFuzzerConfigs()