1 # Copyright 2014 The Chromium Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 declare_args() { 6 # Path to Visual Studio. If empty, the default is used which is to use the 7 # automatic toolchain in depot_tools. If set, you must also set the 8 # visual_studio_version and wdk_path. 9 visual_studio_path = "" 10 11 # Version of Visual Studio pointed to by the visual_studio_path. 12 # Use "2013" for Visual Studio 2013, or "2013e" for the Express version. 13 visual_studio_version = "" 14 15 # Directory of the Windows driver kit. If visual_studio_path is empty, this 16 # will be auto-filled. 17 wdk_path = "" 18 19 # Full path to the Windows SDK, not including a backslash at the end. 20 # This value is the default location, override if you have a different 21 # installation location. 22 windows_sdk_path = "C:\Program Files (x86)\Windows Kits\8.0" 23 24 # The list of include directories that are treated as "system" include 25 # directories. TODO(scottmg): These are incorrectly put on the command line 26 # in GN, they should really be stored into %INCLUDE%. 27 system_include_dirs = [] 28 } 29 30 if (visual_studio_path == "") { 31 toolchain_data = 32 exec_script("../../vs_toolchain.py", [ "get_toolchain_dir" ], "scope") 33 visual_studio_path = toolchain_data.vs_path 34 windows_sdk_path = toolchain_data.sdk_path 35 visual_studio_version = toolchain_data.vs_version 36 wdk_path = toolchain_data.wdk_dir 37 } else { 38 assert(visual_studio_version != "", 39 "You must set the visual_studio_version if you set the path") 40 assert(wdk_path != "", 41 "You must set the wdk_path if you set the visual studio path") 42 } 43 44 # Set when using the "Express" version of a Visual Studio version we support. 45 is_visual_studio_express = (visual_studio_version == "2013e") 46 47 48 # The Windows SDK include directories must be first. They both have a sal.h, 49 # and the SDK one is newer and the SDK uses some newer features from it not 50 # present in the Visual Studio one. 51 system_include_dirs = [ 52 "$windows_sdk_path\Include\shared", 53 "$windows_sdk_path\Include\um", 54 "$windows_sdk_path\Include\winrt", 55 "$visual_studio_path\VC\include", 56 "$visual_studio_path\VC\atlmfc\include", 57 ] 58 59 if (is_visual_studio_express) { 60 system_include_dirs += [ 61 "$wdk_path/inc/atl71", 62 "$wdk_path/inc/mfc42", 63 ] 64 } 65