summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLi-Yu Yu <aaronyu@google.com>2024-05-02 02:53:13 +0000
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2024-05-02 14:00:13 +0000
commitb3ca8230b624ad1beefd03138d383b72a7b2751e (patch)
tree0532a1a6d8e0efca1dfb5f55df5d7b19f0fa6fbc
parent3d0426329e9852b6373877bd1a02146d99fdfab0 (diff)
downloadadhd-upstream-main.tar.gz
compdb: Add flag for extra aquery argumentsupstream-main
This allows changing build options. BUG=None TEST=bazel run @compdb -- --aquery-arg=--//:apm Change-Id: I829c5b3fba491885e08ae86cc2bbaacfdc63a737 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/adhd/+/5508714 Tested-by: chromeos-cop-builder@chromeos-cop.iam.gserviceaccount.com <chromeos-cop-builder@chromeos-cop.iam.gserviceaccount.com> Commit-Queue: Li-Yu Yu <aaronyu@google.com> Reviewed-by: Ching Yun Chang <whalechang@google.com>
-rw-r--r--repositories/compdb/compdb.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/repositories/compdb/compdb.py b/repositories/compdb/compdb.py
index e4c83a7e..8522a376 100644
--- a/repositories/compdb/compdb.py
+++ b/repositories/compdb/compdb.py
@@ -15,14 +15,20 @@ def find_build_target(args):
return args[i + 1]
-def run(directory, output_file, target):
+def run(directory, output_file, target, aquery_args):
print('[compdb] Ensuring external/ symlink', file=sys.stderr)
try:
os.symlink('bazel-out/../../../external', os.path.join(directory, 'external'))
except FileExistsError:
pass
- cmd = ['bazel', 'aquery', f'mnemonic("CppCompile", {target})', '--output=jsonproto']
+ cmd = [
+ 'bazel',
+ 'aquery',
+ f'mnemonic("CppCompile", {target})',
+ '--output=jsonproto',
+ *aquery_args,
+ ]
print('[compdb] Running', shlex.join(cmd), file=sys.stderr)
output = subprocess.check_output(cmd, cwd=directory)
@@ -57,6 +63,7 @@ def run(directory, output_file, target):
def main():
parser = argparse.ArgumentParser()
parser.add_argument('target', default='"//..."', nargs='?')
+ parser.add_argument('--aquery-arg', action='append')
args = parser.parse_args()
directory = os.environ['BUILD_WORKSPACE_DIRECTORY']
@@ -65,6 +72,7 @@ def main():
directory=directory,
output_file=os.path.join(directory, 'compile_commands.json'),
target=f'deps({args.target})',
+ aquery_args=args.aquery_arg or [],
)