xref: /aosp_15_r20/external/cronet/build/config/aix/BUILD.gn (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Copyright 2017 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/config/sanitizers/sanitizers.gni")
6*6777b538SAndroid Build Coastguard Workerimport("//build/toolchain/toolchain.gni")
7*6777b538SAndroid Build Coastguard Worker
8*6777b538SAndroid Build Coastguard Worker# This is included by reference in the //build/config/compiler config that
9*6777b538SAndroid Build Coastguard Worker# is applied to all targets. It is here to separate out the logic.
10*6777b538SAndroid Build Coastguard Worker
11*6777b538SAndroid Build Coastguard Workerconfig("compiler") {
12*6777b538SAndroid Build Coastguard Worker  # These flags are shared between the C compiler and linker.
13*6777b538SAndroid Build Coastguard Worker  defines = [
14*6777b538SAndroid Build Coastguard Worker    "_LINUX_SOURCE_COMPAT=1",
15*6777b538SAndroid Build Coastguard Worker    "__STDC_FORMAT_MACROS",
16*6777b538SAndroid Build Coastguard Worker    "_ALL_SOURCE=1",
17*6777b538SAndroid Build Coastguard Worker  ]
18*6777b538SAndroid Build Coastguard Worker
19*6777b538SAndroid Build Coastguard Worker  cflags = [
20*6777b538SAndroid Build Coastguard Worker    "-Wall",
21*6777b538SAndroid Build Coastguard Worker    "-Wno-unused-parameter",
22*6777b538SAndroid Build Coastguard Worker    "-pthread",
23*6777b538SAndroid Build Coastguard Worker    "-Wmissing-field-initializers",
24*6777b538SAndroid Build Coastguard Worker    "-Wno-uninitialized",
25*6777b538SAndroid Build Coastguard Worker    "-mcpu=power5+",
26*6777b538SAndroid Build Coastguard Worker    "-mfprnd",
27*6777b538SAndroid Build Coastguard Worker    "-mno-popcntb",
28*6777b538SAndroid Build Coastguard Worker    "-maix64",
29*6777b538SAndroid Build Coastguard Worker    "-fdata-sections",
30*6777b538SAndroid Build Coastguard Worker    "-ffunction-sections",
31*6777b538SAndroid Build Coastguard Worker    "-fno-extern-tls-init",
32*6777b538SAndroid Build Coastguard Worker    "-O3",
33*6777b538SAndroid Build Coastguard Worker
34*6777b538SAndroid Build Coastguard Worker    # "-Werror"
35*6777b538SAndroid Build Coastguard Worker    # We need to find a way to fix the TOC warnings if we want to enable this.
36*6777b538SAndroid Build Coastguard Worker  ]
37*6777b538SAndroid Build Coastguard Worker
38*6777b538SAndroid Build Coastguard Worker  cflags_cc = [
39*6777b538SAndroid Build Coastguard Worker    "-fno-rtti",
40*6777b538SAndroid Build Coastguard Worker    "-fno-exceptions",
41*6777b538SAndroid Build Coastguard Worker    "-Wno-narrowing",
42*6777b538SAndroid Build Coastguard Worker    "-Wno-non-virtual-dtor",
43*6777b538SAndroid Build Coastguard Worker  ]
44*6777b538SAndroid Build Coastguard Worker
45*6777b538SAndroid Build Coastguard Worker  ldflags = [
46*6777b538SAndroid Build Coastguard Worker    "-pthread",
47*6777b538SAndroid Build Coastguard Worker    "-maix64",
48*6777b538SAndroid Build Coastguard Worker    "-Wl,-bbigtoc",
49*6777b538SAndroid Build Coastguard Worker  ]
50*6777b538SAndroid Build Coastguard Worker
51*6777b538SAndroid Build Coastguard Worker  if (is_component_build) {
52*6777b538SAndroid Build Coastguard Worker    cflags += [ "-fpic" ]
53*6777b538SAndroid Build Coastguard Worker    ldflags += [
54*6777b538SAndroid Build Coastguard Worker      "-Wl,-brtl",
55*6777b538SAndroid Build Coastguard Worker
56*6777b538SAndroid Build Coastguard Worker      # -bnoipath so that only names of .so objects are stored in loader
57*6777b538SAndroid Build Coastguard Worker      # section, excluding leading "./"
58*6777b538SAndroid Build Coastguard Worker      "-Wl,-bnoipath",
59*6777b538SAndroid Build Coastguard Worker    ]
60*6777b538SAndroid Build Coastguard Worker  }
61*6777b538SAndroid Build Coastguard Worker}
62