0

Reland "siso: add rule for solink_module"

This reverts commit 17072e48c2.

Reason for revert:
android solink_module's command line looks like

 /bin/sh -c ../../third_party/llvm-build/Release+Asserts/bin/clang++ ...

so, if the first argument to /bin/sh is not python3,
it would be clang driver, so add clang_base:link to inputs.


Original change's description:
> Revert "siso: add rule for solink_module"
>
> This reverts commit 5f26db90e4.
>
> Reason for revert:
> https://ci.chromium.org/ui/p/chromium/builders/build/android-build-perf-siso/5307/overview
>
> Original change's description:
> > siso: add rule for solink_module
> >
> > Change-Id: Ie0933bceedfeb3e1e1d074d2165f76655e2c6936
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6091050
> > Commit-Queue: Fumitoshi Ukai <ukai@google.com>
> > Auto-Submit: Fumitoshi Ukai <ukai@google.com>
> > Reviewed-by: Junji Watanabe <jwata@google.com>
> > Cr-Commit-Position: refs/heads/main@{#1395273}
>
> Change-Id: Ib13f6641cbab38b3834768ba537163be6cdb837a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6088301
> Commit-Queue: Fumitoshi Ukai <ukai@google.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Reviewed-by: Takuto Ikuta <tikuta@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1395283}

Change-Id: Iea80300ce27b2c3bbfebac365cc90ecc3a243221
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6090676
Auto-Submit: Fumitoshi Ukai <ukai@google.com>
Reviewed-by: Junji Watanabe <jwata@google.com>
Reviewed-by: Philipp Wollermann <philwo@google.com>
Commit-Queue: Junji Watanabe <jwata@google.com>
Cr-Commit-Position: refs/heads/main@{#1395713}
This commit is contained in:
Fumitoshi Ukai
2024-12-12 17:38:26 -08:00
committed by Chromium LUCI CQ
parent 17382749ce
commit d018ec8a3d

@ -46,6 +46,10 @@ def __clang_link(ctx, cmd):
if args[0] == "/bin/sh":
args = args[2].split(" ")
for i, arg in enumerate(args):
if i == 0 and not "python3" in arg:
clang_base = ctx.fs.canonpath(path.dir(path.dir(arg)))
inputs.append(clang_base + ":link")
continue
if i == 1:
driver = ctx.fs.canonpath(arg) # driver script
if ctx.fs.exists(driver):
@ -263,6 +267,23 @@ def __rules(ctx):
"platform_ref": "large",
"timeout": "2m",
},
{
"name": "clang/solink_module",
"action": "(.*)?solink_module",
"handler": "clang_link",
"exclude_input_patterns": [
"*.cc",
"*.h",
"*.js",
"*.pak",
"*.py",
"*.stamp",
],
"remote": config.get(ctx, "remote-link"),
"canonicalize_dir": True,
"platform_ref": "large",
"timeout": "2m",
},
{
"name": "clang/link",
"action": "(.*_)?link",