| # Copyright 2016 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. |
| |
| import("//build/config/chrome_build.gni") |
| import("//testing/test.gni") |
| |
| assert(is_win) |
| |
| # This file only contains utility functions which must only depend on kernel32. |
| # Please don't add dependencies on other system libraries. |
| static_library("install_static_util") { |
| deps = [ |
| "//components/nacl/common:buildflags", |
| "//components/version_info:channel", |
| "//components/version_info:generate_version_info", |
| ] |
| |
| public_deps = [ |
| "//chrome_elf:nt_registry", |
| ] |
| |
| sources = [ |
| "../app/chrome_dll_resource.h", |
| "../chrome/common/chrome_icon_resources_win.h", |
| "install_constants.h", |
| "install_details.cc", |
| "install_details.h", |
| "install_modes.cc", |
| "install_modes.h", |
| "install_util.cc", |
| "install_util.h", |
| "policy_path_parser.cc", |
| "policy_path_parser.h", |
| "product_install_details.cc", |
| "product_install_details.h", |
| "user_data_dir.cc", |
| "user_data_dir.h", |
| ] |
| |
| if (is_chrome_branded) { |
| sources += [ |
| "google_chrome_install_modes.cc", |
| "google_chrome_install_modes.h", |
| ] |
| } else { |
| sources += [ |
| "chromium_install_modes.cc", |
| "chromium_install_modes.h", |
| ] |
| } |
| |
| libs = [ "kernel32.lib" ] |
| |
| configs += [ |
| # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. |
| "//build/config/compiler:no_size_t_to_int_warning", |
| ] |
| } |
| |
| # A source set for use by the module in a process that creates the process-wide |
| # InstallDetails instance (i.e., chrome_elf.dll). |
| source_set("primary_module") { |
| sources = [ |
| "get_install_details_payload.cc", |
| ] |
| } |
| |
| # A source set for use by modules in a process that fetch the process-wide |
| # InstallDetails instance from the primary module by way of |
| # GetInstallDetailsPayload (i.e., chrome.exe, chrome.dll, chrome_child.dll, and |
| # chrome_watcher.dll). |
| source_set("secondary_module") { |
| sources = [ |
| "initialize_from_primary_module.cc", |
| "initialize_from_primary_module.h", |
| ] |
| deps = [ |
| ":install_static_util", |
| ] |
| } |
| |
| test("install_static_unittests") { |
| output_name = "install_static_unittests" |
| sources = [ |
| "install_details_unittest.cc", |
| "install_modes_unittest.cc", |
| "install_util_unittest.cc", |
| "product_install_details_unittest.cc", |
| "user_data_dir_win_unittest.cc", |
| ] |
| include_dirs = [ "$target_gen_dir" ] |
| deps = [ |
| "//base", |
| "//base/test:run_all_unittests", |
| "//base/test:test_support", |
| "//chrome/install_static:install_static_util", |
| "//chrome/install_static/test:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| } |