tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

BUILD.gn (2610B)


      1 # Copyright 2015 The Chromium Authors
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 import("//chromium/build/config/clang/clang.gni")
      6 import("//chromium/build/config/sanitizers/sanitizers.gni")
      7 import("//chromium/build/config/win/manifest.gni")
      8 
      9 # Depending on this target will cause the manifests for Chrome's default
     10 # Windows and common control compatibility and elevation for executables.
     11 windows_manifest("default_exe_manifest") {
     12   sources = [
     13     as_invoker_manifest,
     14     common_controls_manifest,
     15     default_compatibility_manifest,
     16   ]
     17 }
     18 
     19 if (is_win) {
     20 #  assert(host_os != "mac" || target_cpu != "x86",
     21 #         "Windows cross-builds from Mac must be 64-bit.")
     22 
     23   action("copy_cdb_to_output") {
     24     script = "//chromium/build/win/copy_cdb_to_output.py"
     25     inputs = [
     26       script,
     27       "//chromium/build/vs_toolchain.py",
     28     ]
     29     outputs = [
     30       "$root_out_dir/cdb/cdb.exe",
     31       "$root_out_dir/cdb/dbgeng.dll",
     32       "$root_out_dir/cdb/dbghelp.dll",
     33       "$root_out_dir/cdb/dbgmodel.dll",
     34       "$root_out_dir/cdb/winext/ext.dll",
     35       "$root_out_dir/cdb/winext/uext.dll",
     36       "$root_out_dir/cdb/winxp/exts.dll",
     37       "$root_out_dir/cdb/winxp/ntsdexts.dll",
     38     ]
     39     args = [
     40       rebase_path("$root_out_dir/cdb", root_out_dir),
     41       target_cpu,
     42     ]
     43   }
     44 
     45   group("runtime_libs") {
     46     # These are needed for any tests that need to decode stacks.
     47     data = [
     48       "$root_out_dir/dbghelp.dll",
     49       "$root_out_dir/dbgcore.dll",
     50     ]
     51     if (is_component_build || is_asan) {
     52       # Copy the VS runtime DLLs into the isolate so that they don't have to be
     53       # preinstalled on the target machine. The debug runtimes have a "d" at
     54       # the end.
     55       if (is_debug) {
     56         vcrt_suffix = "d"
     57       } else {
     58         vcrt_suffix = ""
     59       }
     60 
     61       # These runtime files are copied to the output directory by the
     62       # vs_toolchain script that runs as part of toolchain configuration.
     63       data += [
     64         "$root_out_dir/msvcp140${vcrt_suffix}.dll",
     65         "$root_out_dir/vccorlib140${vcrt_suffix}.dll",
     66         "$root_out_dir/vcruntime140${vcrt_suffix}.dll",
     67       ]
     68       if (target_cpu == "x64") {
     69         data += [ "$root_out_dir/vcruntime140_1${vcrt_suffix}.dll" ]
     70       }
     71       if (is_debug) {
     72         data += [ "$root_out_dir/ucrtbased.dll" ]
     73       }
     74       if (is_asan) {
     75         assert(target_cpu == "x64",
     76                "ASan is only supported in 64-bit builds on Windows.")
     77         data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-x86_64.dll" ]
     78       }
     79     }
     80   }
     81 }