summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/build/config/chromeos/BUILD.gn
blob: f3dfe70d424e0cb280b1f4f09dbdf26d45361cc0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Copyright 2019 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chromeos/ui_mode.gni")

assert(is_chromeos_ash)

declare_args() {
  # The location to a file used to dump symbols ordered by Call-Chain Clustering (C3)
  # https://research.fb.com/wp-content/uploads/2017/01/cgo2017-hfsort-final1.pdf?
  # to a file, used for generating orderfiles in Chrome OS
  dump_call_chain_clustering_order = ""
}

declare_args() {
  # Whether or not we're using new pass manager to build and link Chrome
  use_new_pass_manager = dump_call_chain_clustering_order != ""
}

config("print_orderfile") {
  if (dump_call_chain_clustering_order != "") {
    _output_orderfile =
        rebase_path(dump_call_chain_clustering_order, root_build_dir)
    ldflags = [ "-Wl,--print-symbol-order=$_output_orderfile" ]
  }
}

config("compiler") {
  if (use_new_pass_manager) {
    cflags = [ "-fexperimental-new-pass-manager" ]
    ldflags = [ "-fexperimental-new-pass-manager" ]
  }
}