Home | History | Annotate | Download | only in win
      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