diff options
author | 2023-06-15 09:28:26 -0700 | |
---|---|---|
committer | 2023-06-15 10:59:20 -0700 | |
commit | 394f1b7b8626d563d2ae526b4975353aec694a7d (patch) | |
tree | e77bae83304ab9a978b59a75c3e69b02dade0ae8 | |
parent | be29dc3d4fe9d902aebd240553117653bd86ee2c (diff) |
Fix local var error, warn if no outputs, handle "}generate{"
1. UnboundLocalError: cannot access local variable 'output' where
it is not associated with a value
2. `build/soong/tests/genrule_sandbox_test.py WmediumdServerProto_cc`
would try to build the entire world due to 3)
3. WmediumdServerProto_cc 's module action desc had '}generate{'
without a space which would cause 2)
Bug: b/287470077
Test: build/soong/tests/genrule_sandbox_test.py WmediumdServerProto_cc
Change-Id: Ie9d5db44195a6f700cc876ec889bd01c11e66cff
-rwxr-xr-x | tests/genrule_sandbox_test.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/tests/genrule_sandbox_test.py b/tests/genrule_sandbox_test.py index 697fc26e8..a9f0c9b50 100755 --- a/tests/genrule_sandbox_test.py +++ b/tests/genrule_sandbox_test.py @@ -69,7 +69,7 @@ def _find_outputs_for_modules(modules, out_dir, target_product): name = mod["Name"] if name in modules: for act in mod["Module"]["Actions"]: - if "}generate " in act["Desc"]: + if "}generate" in act["Desc"]: module_to_outs[name].update(act["Outputs"]) return module_to_outs @@ -90,6 +90,7 @@ def _store_outputs_to_tmp(output_files): def _diff_outs(file1, file2, show_diff): + output = None base_args = ["diff"] if not show_diff: base_args.append("--brief") @@ -154,6 +155,10 @@ def main(): modules = set(args.modules) module_to_outs = _find_outputs_for_modules(modules, out_dir, target_product) + if not module_to_outs: + print("No outputs found") + exit(1) + if args.output_paths_only: for m, o in module_to_outs.items(): print(f"{m} outputs: {o}") |