Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Unified Diff: chrome/tools/build/win/syzygy/BUILD.gn

Issue 2126673002: Move the Syzygy scripts out of //chrome/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix the GYP files. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/installer/mini_installer/BUILD.gn ('k') | chrome/tools/build/win/syzygy/instrument.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/tools/build/win/syzygy/BUILD.gn
diff --git a/chrome/tools/build/win/syzygy/BUILD.gn b/chrome/tools/build/win/syzygy/BUILD.gn
index 822a645f3e48861f54f23cc2bb265db4978cd0d7..0d065470b83e561fac0848cdec3c57b8cdd6e86b 100644
--- a/chrome/tools/build/win/syzygy/BUILD.gn
+++ b/chrome/tools/build/win/syzygy/BUILD.gn
@@ -5,6 +5,7 @@
import("//build/config/chrome_build.gni")
import("//build/config/compiler/compiler.gni")
import("//build/config/sanitizers/sanitizers.gni")
+import("//build/win/syzygy/syzygy.gni")
assert(!syzygy_optimize || !is_syzyasan,
"Don't do both syzygy_optimize and is_syzyasan")
@@ -13,59 +14,8 @@ assert(!syzygy_optimize || !is_syzyasan,
syzygy_dest_dir = "$root_out_dir/syzygy"
if (syzygy_optimize) {
- # Generates a Syzygy optimize target.
- #
- # dll_name (required)
- # Name of the DLL to be instrumented, with no extension or path. This
- # ${dll_name}.dll is assumed to be in the output directory and must be
- # generated by a dependency of this target.
- #
- # deps (required)
- # Normal meaning.
- #
- # data_deps
- # Normal meaning.
- template("syzygy_optimize") {
- action(target_name) {
- if (defined(invoker.visibility)) {
- visibility = invoker.visibility
- }
- script = "//chrome/tools/build/win/syzygy/reorder.py"
-
- dll_name = invoker.dll_name
- input_dll = "$root_out_dir/$dll_name.dll"
- input_pdb = "$root_out_dir/$dll_name.dll.pdb"
-
- inputs = [
- input_dll,
- #input_pdb,
- ]
-
- outputs = [
- "$syzygy_dest_dir/$dll_name.dll",
- "$syzygy_dest_dir/$dll_name.dll.pdb",
- ]
-
- args = [
- "--input_executable",
- rebase_path(input_dll, root_build_dir),
- "--input_symbol",
- rebase_path(input_pdb, root_build_dir),
- "--destination_dir",
- rebase_path(syzygy_dest_dir, root_build_dir),
- ]
-
- forward_variables_from(invoker,
- [
- "deps",
- "data_deps",
- "public_deps",
- ])
- }
- }
-
syzygy_optimize("chrome_dll_syzygy") {
- dll_name = "chrome"
+ binary_name = "chrome.dll"
deps = [
"//chrome:main_dll",
]
@@ -78,96 +28,24 @@ if (syzygy_optimize) {
if (is_multi_dll_chrome) {
# Also instrument chrome_child.dll.
syzygy_optimize("chrome_child_dll_syzygy") {
- dll_name = "chrome_child"
+ binary_name = "chrome_child.dll"
deps = [
"//chrome:chrome_child",
]
}
}
} else if (is_syzyasan) {
- # Instruments a binary with SyzyAsan.
- #
- # binary_name (required)
- # Name of the binary to be instrumented, with no extension or path. This
- # binary_name is assumed to be in the output directory and must be
- # generated by a dependency of this target.
- #
- # dest_dir (required)
- # The destination directory where the instrumented image should be
- # written.
- #
- # deps (required)
- # Normal meaning.
- #
- # public_deps
- # Normal meaning.
- #
- # data_deps
- # Normal meaning.
- template("syzygy_asan") {
- action(target_name) {
- if (defined(invoker.visibility)) {
- visibility = invoker.visibility
- }
- script = "//chrome/tools/build/win/syzygy/instrument.py"
-
- filter = "syzyasan-instrumentation-filter.txt"
-
- binary_name = invoker.binary_name
- dest_dir = invoker.dest_dir
- input_image = "$root_out_dir/$binary_name"
- input_pdb = "$root_out_dir/$binary_name.pdb"
-
- inputs = [
- filter,
- input_image,
-
- #input_pdb,
- ]
-
- output_filter = "$dest_dir/win-syzyasan-filter-$binary_name.txt.json"
-
- outputs = [
- "$dest_dir/$input_image",
- "$dest_dir/$input_image.pdb",
- output_filter,
- ]
-
- args = [
- "--mode",
- "asan",
- "--input_executable",
- rebase_path(input_image, root_build_dir),
- "--input_symbol",
- rebase_path(input_pdb, root_build_dir),
- "--filter",
- rebase_path(filter, root_build_dir),
- "--output-filter-file",
- rebase_path(output_filter, root_build_dir),
- "--destination_dir",
- rebase_path(dest_dir, root_build_dir),
- ]
-
- deps = [
- "//chrome/tools/build/win/syzygy:copy_syzyasan_binaries",
- ]
- if (defined(invoker.deps)) {
- deps += invoker.deps
- }
- forward_variables_from(invoker,
- [
- "data_deps",
- "public_deps",
- ])
- }
- }
-
syzygy_asan("chrome_dll_syzygy") {
binary_name = "chrome.dll"
dest_dir = syzygy_dest_dir
deps = [
"//chrome:main_dll",
]
+ if (is_multi_dll_chrome) {
+ data_deps = [
+ ":chrome_child_dll_syzygy",
+ ]
+ }
}
if (is_multi_dll_chrome) {
@@ -189,10 +67,6 @@ if (syzygy_optimize) {
} else {
dest_dir = syzygy_dest_dir
}
-
- data_deps = [
- ":chrome_child_dll_syzygy",
- ]
}
if (is_official_build) {
@@ -201,10 +75,9 @@ if (syzygy_optimize) {
copy("chrome_child_dll_syzygy_copy") {
sources = [
"$root_out_dir/chrome_child.dll",
- "$root_out_dir/chrome_child.dll.pdb",
]
outputs = [
- "$dest_dir/{{source_file_part}}",
+ "$syzygy_dest_dir/{{source_file_part}}",
]
deps = [
"//chrome:chrome_child",
@@ -223,24 +96,5 @@ if (syzygy_optimize) {
}
}
-if (is_syzyasan || syzygy_optimize) {
- copy("copy_syzyasan_binaries") {
- visibility = [ "//chrome/*" ]
-
- source_dir = "//third_party/syzygy/binaries/exe"
-
- sources = [
- "$source_dir/agent_logger.exe",
- "$source_dir/minidump_symbolizer.py",
- "$source_dir/syzyasan_rtl.dll",
- "$source_dir/syzyasan_rtl.dll.pdb",
- ]
-
- outputs = [
- "$syzygy_dest_dir/{{source_file_part}}",
- ]
- }
-}
-
# Prevent unused variable warning for code paths where this is unused.
assert(syzygy_dest_dir != "")
« no previous file with comments | « chrome/installer/mini_installer/BUILD.gn ('k') | chrome/tools/build/win/syzygy/instrument.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698