v8/tools/gcmole/BUILD.gn
Michael Achenbach 2a20b228ef [gcmole] Run gcmole on bots with matching architecture
This does:
- Move gcmole runs to bots with matching arch.
- Update mb_configs to enable gcmole on the bots that run it.
- Add a GN target that extracts some compiler flags from a
ninja file of one of V8's other targets.
- Use the extracted flags in the gcmole script and remove other
hard-coded arch-specific flags.

This is done for DEFINES and includes for now. Other compiler flags
are still a TODO.

Bug: v8:9287
Change-Id: Icba9ce59e0bfffd138d9207b1c2ad64d42bf6a91
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4055629
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Camillo Bruni <cbruni@chromium.org>
Reviewed-by: Alexander Schulze <alexschulze@chromium.org>
Cr-Commit-Position: refs/heads/main@{#85341}
2023-01-17 13:56:18 +00:00

61 lines
1.8 KiB
Plaintext

# Copyright 2018 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("../../gni/v8.gni")
if (v8_gcmole) {
group("v8_gcmole_files") {
testonly = true
data_deps = [
":v8_gcmole_args",
"../../:v8_dump_build_config",
"../../:v8_generated_cc_files",
]
data = [
"gcmole.py",
"gcmole-test.cc",
"gcmole-tools/",
"run-gcmole.py",
"suspects.allowlist",
"ignored_files",
"test-expectations.txt",
# The following contains all relevant source and build files.
"../debug_helper/debug-helper.h",
"../../BUILD.gn",
"../../base/",
"../../include/",
"../../src/",
"../../test/cctest/",
"../../test/common/",
"../../testing/gtest/include/gtest/gtest_prod.h",
"../../third_party/glibc/",
"../../third_party/googletest/src/googletest/include/gtest/gtest_prod.h",
"../../third_party/icu/source/common/",
"../../third_party/icu/source/i18n/",
"../../third_party/wasm-api/wasm.h",
"../../third_party/wasm-api/wasm.hh",
"../../third_party/zlib/",
"../../third_party/inspector_protocol/",
"$target_gen_dir/../../",
"$target_gen_dir/../../torque-generated/",
# This assumes gcmole tools have been fetched by a hook
# into v8/tools/gcmole/gcmole_tools.
"gcmole-tools/",
]
}
# Only prepare gcmole args if gcmole is activated by a gn arg.
action("v8_gcmole_args") {
script = "gcmole_args.py"
outputs = [ "$root_out_dir/v8_gcmole.args" ]
# We use an arbitrary v8 target as proxy for calculating globally used
# gcmole plugin arguments. Should be a target that's early in the chain
# and that enables icu.
deps = [ "../../:v8_base_without_compiler" ]
}
}