# Copyright 2017 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/sanitizers/sanitizers.gni") import("//build/win/message_compiler.gni") import("//chrome/process_version_rc_template.gni") message_compiler("eventlog_messages") { visibility = [ ":eventlog_provider", "//chrome/common:common_lib", ] sources = [ "eventlog_messages.mc" ] user_mode_logging = false compile_generated_code = false } process_version_rc_template("eventlog_provider_dll_version") { sources = [ "eventlog_provider.ver" ] output = "$target_gen_dir/eventlog_provider_dll_version.rc" } shared_library("eventlog_provider") { sources = [ "$root_gen_dir/chrome/common/win/eventlog_messages.rc", "eventlog_provider.cc", ] configs += [ "//build/config/compiler:wexit_time_destructors" ] if (!is_asan && !use_clang_profiling) { no_default_deps = true ldflags = [ "/NOENTRY" ] } deps = [ ":eventlog_provider_dll_version" ] public_deps = [ ":eventlog_messages" ] } # The delay load hook must be a source_set to ensure that it has external # linkage and will correctly emplace over the correct symbols in delayimp.lib at # link time. source_set("delay_load_hooks") { sources = [ "delay_load_failure_hook.cc", "delay_load_notify_hook.cc", "delay_load_notify_hook.h", ] configs += [ "//build/config/compiler:wexit_time_destructors" ] deps = [ ":delay_load_failure_support", "//base", ] } source_set("delay_load_failure_support") { sources = [ "delay_load_failure_support.cc", "delay_load_failure_support.h", ] configs += [ "//build/config/compiler:wexit_time_destructors" ] deps = [ "//base" ] }