| Index: chrome_elf/BUILD.gn
|
| diff --git a/chrome_elf/BUILD.gn b/chrome_elf/BUILD.gn
|
| index 1207191e0553d320c1886dc91edb00a3c1d5eab5..f771f1886038c525b254e60e1f9beb729256a377 100644
|
| --- a/chrome_elf/BUILD.gn
|
| +++ b/chrome_elf/BUILD.gn
|
| @@ -43,10 +43,10 @@ shared_library("chrome_elf") {
|
| ":constants",
|
| ":crash",
|
| ":hook_util",
|
| + ":nt_registry",
|
| ":security",
|
| "//build/config/sanitizers:deps",
|
| "//chrome/install_static:install_static_util",
|
| - "//chrome_elf/nt_registry:nt_registry",
|
| ]
|
| configs += [ "//build/config/win:windowed" ]
|
| configs -= [ "//build/config/win:console" ]
|
| @@ -76,7 +76,7 @@ source_set("security") {
|
| ]
|
| deps = [
|
| ":constants",
|
| - "//chrome_elf/nt_registry:nt_registry",
|
| + ":nt_registry",
|
| ]
|
| }
|
|
|
| @@ -126,9 +126,9 @@ static_library("blacklist") {
|
| ":constants",
|
| ":crash",
|
| ":hook_util",
|
| + ":nt_registry",
|
| "//base:base_static", # pe_image
|
| "//chrome/install_static:install_static_util",
|
| - "//chrome_elf/nt_registry:nt_registry",
|
| ]
|
| }
|
|
|
| @@ -164,6 +164,18 @@ static_library("hook_util") {
|
| ]
|
| }
|
|
|
| +# This target contains utility functions which must only depend on
|
| +# kernel32. Please don't add dependencies on other system libraries.
|
| +static_library("nt_registry") {
|
| + sources = [
|
| + "../sandbox/win/src/nt_internals.h",
|
| + "nt_registry/nt_registry.cc",
|
| + "nt_registry/nt_registry.h",
|
| + ]
|
| +
|
| + libs = [ "kernel32.lib" ]
|
| +}
|
| +
|
| ##------------------------------------------------------------------------------
|
| ## tests
|
| ##------------------------------------------------------------------------------
|
| @@ -175,6 +187,7 @@ test("chrome_elf_unittests") {
|
| "chrome_elf_util_unittest.cc",
|
| "elf_imports_unittest.cc",
|
| "hook_util/test/hook_util_test.cc",
|
| + "nt_registry/nt_registry_unittest.cc",
|
| "run_all_unittests.cc",
|
| ]
|
| include_dirs = [ "$target_gen_dir" ]
|
| @@ -185,13 +198,13 @@ test("chrome_elf_unittests") {
|
| ":crash",
|
| ":hook_util",
|
| ":hook_util_test_dll",
|
| + ":nt_registry",
|
| ":security",
|
| "//base",
|
| "//base/test:test_support",
|
| "//chrome",
|
| "//chrome/common:version_header",
|
| "//chrome/install_static:install_static_util",
|
| - "//chrome_elf/nt_registry:nt_registry",
|
| "//sandbox",
|
| "//testing/gtest",
|
| ]
|
| @@ -222,20 +235,22 @@ test("chrome_elf_unittests") {
|
| }
|
|
|
| shared_library("blacklist_test_main_dll") {
|
| + testonly = true
|
| sources = [
|
| "blacklist/test/blacklist_test_main_dll.cc",
|
| "blacklist/test/blacklist_test_main_dll.def",
|
| ]
|
| deps = [
|
| ":blacklist",
|
| + ":nt_registry",
|
| "//base",
|
| "//build/config/sanitizers:deps",
|
| "//chrome/install_static:install_static_util",
|
| - "//chrome_elf/nt_registry:nt_registry",
|
| ]
|
| }
|
|
|
| loadable_module("blacklist_test_dll_1") {
|
| + testonly = true
|
| sources = [
|
| "blacklist/test/blacklist_test_dll_1.cc",
|
| "blacklist/test/blacklist_test_dll_1.def",
|
| @@ -246,6 +261,7 @@ loadable_module("blacklist_test_dll_1") {
|
| }
|
|
|
| loadable_module("blacklist_test_dll_2") {
|
| + testonly = true
|
| sources = [
|
| "blacklist/test/blacklist_test_dll_2.cc",
|
| "blacklist/test/blacklist_test_dll_2.def",
|
| @@ -261,6 +277,7 @@ loadable_module("blacklist_test_dll_2") {
|
| # which does), Ninja would get confused and always rebuild this target because
|
| # it sees a declared output file but that file doesn't exist on disk.
|
| loadable_module("blacklist_test_dll_3") {
|
| + testonly = true
|
| sources = [
|
| "blacklist/test/blacklist_test_dll_3.cc",
|
| ]
|
| @@ -270,6 +287,7 @@ loadable_module("blacklist_test_dll_3") {
|
| }
|
|
|
| shared_library("hook_util_test_dll") {
|
| + testonly = true
|
| sources = [
|
| "hook_util/test/hook_util_test_dll.cc",
|
| "hook_util/test/hook_util_test_dll.h",
|
|
|