# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Chrome elf targets (excepting tests) should only link in kernel32.
# Please don't add dependencies on any other system libraries.

import("//build/config/compiler/compiler.gni")
import("//build/config/win/manifest.gni")
import("//chrome/process_version_rc_template.gni")
import("//testing/test.gni")

##------------------------------------------------------------------------------
## chrome_elf
##------------------------------------------------------------------------------

process_version_rc_template("chrome_elf_resources") {
  sources = [
    "chrome_elf.ver",
  ]
  output = "$target_gen_dir/chrome_elf_version.rc"
}

# This manifest matches what GYP produces. It may not even be necessary.
windows_manifest("chrome_elf_manifest") {
  sources = [
    as_invoker_manifest,
  ]
  type = "dll"
}

# We should move chrome_result_codes.h to another target which does not bring
# in the world.
shared_library("chrome_elf") {
  sources = [
    "chrome_elf.def",
    "chrome_elf_main.cc",
    "chrome_elf_main.h",
  ]
  deps = [
    ":blacklist",
    ":chrome_elf_manifest",
    ":chrome_elf_resources",
    ":constants",
    ":crash",
    ":hook_util",
    ":nt_registry",
    ":security",
    "//build/config/sanitizers:deps",
    "//chrome/install_static:install_static_util",
    "//chrome/install_static:primary_module",
  ]
  configs += [ "//build/config/win:windowed" ]
  configs -= [ "//build/config/win:console" ]

  # Delay loads in this list will prevent user32.dll
  # from loading too early.
  ldflags = [
    "/DELAYLOAD:advapi32.dll",
    "/DELAYLOAD:dbghelp.dll",
    "/DELAYLOAD:rpcrt4.dll",
    "/DELAYLOAD:winmm.dll",
  ]
  if (current_cpu == "x86") {
    # Don"t set an x64 base address (to avoid breaking HE-ASLR).
    ldflags += [ "/BASE:0x01c20000" ]
  }
}

##------------------------------------------------------------------------------
## source sets
##------------------------------------------------------------------------------

source_set("security") {
  sources = [
    "chrome_elf_security.cc",
    "chrome_elf_security.h",
  ]
  deps = [
    ":constants",
    ":nt_registry",
    "//chrome/install_static:install_static_util",
  ]
}

source_set("constants") {
  sources = [
    "chrome_elf_constants.cc",
    "chrome_elf_constants.h",
  ]
}

source_set("dll_hash") {
  deps = [
    "//base",
  ]
  sources = [
    "dll_hash/dll_hash.cc",
    "dll_hash/dll_hash.h",
  ]
}

##------------------------------------------------------------------------------
## chrome_elf sub targets
##------------------------------------------------------------------------------

executable("dll_hash_main") {
  sources = [
    "dll_hash/dll_hash_main.cc",
  ]
  deps = [
    ":dll_hash",
    "//build/config/sanitizers:deps",
    "//build/win:default_exe_manifest",
  ]
}

static_library("blacklist") {
  sources = [
    "blacklist/blacklist.cc",
    "blacklist/blacklist.h",
    "blacklist/blacklist_interceptions.cc",
    "blacklist/blacklist_interceptions.h",
  ]
  public_deps = [
    "//sandbox",
  ]
  deps = [
    ":constants",
    ":crash",
    ":hook_util",
    ":nt_registry",
    "//base:base_static",  # pe_image
    "//chrome/install_static:install_static_util",
  ]
}

static_library("crash") {
  sources = [
    "../chrome/app/chrome_crash_reporter_client_win.cc",
    "../chrome/app/chrome_crash_reporter_client_win.h",
    "../chrome/common/chrome_result_codes.h",
    "crash/crash_helper.cc",
    "crash/crash_helper.h",
  ]
  deps = [
    ":hook_util",
    "//base:base",  # This needs to go.  DEP of app, crash_keys, client.
    "//base:base_static",  # pe_image
    "//chrome/install_static:install_static_util",
    "//components/crash/content/app:app",
    "//components/crash/core/common",  # crash_keys
    "//content/public/common:result_codes",
    "//third_party/crashpad/crashpad/client:client",  # DumpWithoutCrash
  ]
}

static_library("hook_util") {
  sources = [
    "../base/macros.h",
    "hook_util/hook_util.cc",
    "hook_util/hook_util.h",
  ]
  deps = [
    ":nt_registry",  # utils
    "//base:base_static",  # pe_image
    "//sandbox",
  ]
}

# 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",
  ]
  if (is_official_build && full_wpo_on_official == true) {
    # This library doen't build with WPO enabled due to a MSVC compiler bug.
    # TODO(pennymac|sebmarchand): Remove this once MS has fixed this compiler
    # bug: https://connect.microsoft.com/VisualStudio/feedback/details/3104499
    configs -= [ "//build/config/compiler:default_optimization" ]
    configs += [ "//build/config/compiler:optimize_no_wpo" ]
  }

  libs = [ "kernel32.lib" ]
}

##------------------------------------------------------------------------------
## tests
##------------------------------------------------------------------------------

test("chrome_elf_unittests") {
  output_name = "chrome_elf_unittests"
  sources = [
    "blacklist/test/blacklist_test.cc",
    "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" ]
  deps = [
    ":blacklist",
    ":blacklist_test_main_dll",
    ":constants",
    ":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/install_static/test:test_support",
    "//sandbox",
    "//testing/gtest",
  ]

  # It's not easily possible to have //chrome in data_deps without changing
  # the //chrome target to bundle up both initial/chrome.exe and chrome.exe.
  # As a workaround, explicitly include a data dep on just chrome.exe, and
  # add //chrome to deps above to make sure it's been built.
  data = [
    "$root_out_dir/chrome.exe",
  ]
  data_deps = [
    ":blacklist_test_dll_1",
    ":blacklist_test_dll_2",
    ":blacklist_test_dll_3",
    ":chrome_elf",
  ]

  # Don't want the test-specific dependencies to affect ChromeElfLoadSanityTest.
  # In particular, a few system DLLs cause user32 to be loaded, which is bad.
  ldflags = [
    "/DELAYLOAD:advapi32.dll",
    "/DELAYLOAD:ole32.dll",
    "/DELAYLOAD:shell32.dll",
    "/DELAYLOAD:user32.dll",
    "/DELAYLOAD:winmm.dll",
  ]
}

shared_library("blacklist_test_main_dll") {
  testonly = true
  sources = [
    "blacklist/test/blacklist_test_main_dll.cc",
    "blacklist/test/blacklist_test_main_dll.def",
    "blacklist/test/blacklist_test_main_dll.h",
  ]
  deps = [
    ":blacklist",
    ":nt_registry",
    "//base",
    "//build/config/sanitizers:deps",
    "//chrome/install_static:install_static_util",
  ]
}

loadable_module("blacklist_test_dll_1") {
  testonly = true
  sources = [
    "blacklist/test/blacklist_test_dll_1.cc",
    "blacklist/test/blacklist_test_dll_1.def",
  ]
  deps = [
    "//build/config/sanitizers:deps",
  ]
}

loadable_module("blacklist_test_dll_2") {
  testonly = true
  sources = [
    "blacklist/test/blacklist_test_dll_2.cc",
    "blacklist/test/blacklist_test_dll_2.def",
  ]
  deps = [
    "//build/config/sanitizers:deps",
  ]
}

# As-is, this does not generate a .lib file because there are no exports and no
# .def file. The current definition of loadable_module does not declare a .lib
# file as an output, so this is OK. If it did (or if this used shared_library
# 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",
  ]
  deps = [
    "//build/config/sanitizers:deps",
  ]
}

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",
  ]
  deps = [
    "//build/config/sanitizers:deps",
  ]
}
