1*6777b538SAndroid Build Coastguard Worker# Copyright 2016 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Workerimport("//build/buildflag_header.gni") 6*6777b538SAndroid Build Coastguard Workerimport("//build/config/win/control_flow_guard.gni") 7*6777b538SAndroid Build Coastguard Worker 8*6777b538SAndroid Build Coastguard Workerdeclare_args() { 9*6777b538SAndroid Build Coastguard Worker # Indicates if the handle verifier should operate in a single module mode. By 10*6777b538SAndroid Build Coastguard Worker # default a single instance gets shared by all the modules. 11*6777b538SAndroid Build Coastguard Worker single_module_mode_handle_verifier = false 12*6777b538SAndroid Build Coastguard Worker} 13*6777b538SAndroid Build Coastguard Worker 14*6777b538SAndroid Build Coastguard Worker# Ensure that the handle verifier is always used in a single module mode for the 15*6777b538SAndroid Build Coastguard Worker# component builds. 16*6777b538SAndroid Build Coastguard Workerif (is_component_build) { 17*6777b538SAndroid Build Coastguard Worker single_module_mode_handle_verifier = true 18*6777b538SAndroid Build Coastguard Worker} 19*6777b538SAndroid Build Coastguard Worker 20*6777b538SAndroid Build Coastguard Workerbuildflag_header("base_win_buildflags") { 21*6777b538SAndroid Build Coastguard Worker header = "base_win_buildflags.h" 22*6777b538SAndroid Build Coastguard Worker header_dir = "base/win" 23*6777b538SAndroid Build Coastguard Worker flags = [ 24*6777b538SAndroid Build Coastguard Worker "SINGLE_MODULE_MODE_HANDLE_VERIFIER=$single_module_mode_handle_verifier", 25*6777b538SAndroid Build Coastguard Worker "WIN_ENABLE_CFG_GUARDS=$win_enable_cfg_guards", 26*6777b538SAndroid Build Coastguard Worker ] 27*6777b538SAndroid Build Coastguard Worker} 28*6777b538SAndroid Build Coastguard Worker 29*6777b538SAndroid Build Coastguard Workerstatic_library("pe_image") { 30*6777b538SAndroid Build Coastguard Worker sources = [ 31*6777b538SAndroid Build Coastguard Worker "../no_destructor.h", 32*6777b538SAndroid Build Coastguard Worker "current_module.h", 33*6777b538SAndroid Build Coastguard Worker "pe_image.cc", 34*6777b538SAndroid Build Coastguard Worker "pe_image.h", 35*6777b538SAndroid Build Coastguard Worker ] 36*6777b538SAndroid Build Coastguard Worker} 37