xref: /aosp_15_r20/external/cronet/third_party/cpu_features/Android.bp (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker// Copyright (C) 2022 The Android Open Source Project
2*6777b538SAndroid Build Coastguard Worker//
3*6777b538SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*6777b538SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*6777b538SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*6777b538SAndroid Build Coastguard Worker//
7*6777b538SAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*6777b538SAndroid Build Coastguard Worker//
9*6777b538SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*6777b538SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*6777b538SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*6777b538SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*6777b538SAndroid Build Coastguard Worker// limitations under the License.
14*6777b538SAndroid Build Coastguard Worker//
15*6777b538SAndroid Build Coastguard Worker// This file is automatically generated by gn2bp/gen_android_bp.py. Do not edit.
16*6777b538SAndroid Build Coastguard Worker
17*6777b538SAndroid Build Coastguard Worker// GN: Package-Artificial
18*6777b538SAndroid Build Coastguard Workerpackage {
19*6777b538SAndroid Build Coastguard Worker    default_applicable_licenses: [
20*6777b538SAndroid Build Coastguard Worker        "external_cronet_third_party_cpu_features_license",
21*6777b538SAndroid Build Coastguard Worker    ],
22*6777b538SAndroid Build Coastguard Worker}
23*6777b538SAndroid Build Coastguard Worker
24*6777b538SAndroid Build Coastguard Worker// GN: License-Artificial
25*6777b538SAndroid Build Coastguard Workerlicense {
26*6777b538SAndroid Build Coastguard Worker    name: "external_cronet_third_party_cpu_features_license",
27*6777b538SAndroid Build Coastguard Worker    visibility: [
28*6777b538SAndroid Build Coastguard Worker        ":__subpackages__",
29*6777b538SAndroid Build Coastguard Worker    ],
30*6777b538SAndroid Build Coastguard Worker    license_text: [
31*6777b538SAndroid Build Coastguard Worker        "LICENSE",
32*6777b538SAndroid Build Coastguard Worker    ],
33*6777b538SAndroid Build Coastguard Worker    license_kinds: [
34*6777b538SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
35*6777b538SAndroid Build Coastguard Worker    ],
36*6777b538SAndroid Build Coastguard Worker}
37*6777b538SAndroid Build Coastguard Worker
38*6777b538SAndroid Build Coastguard Worker// GN: //third_party/cpu_features:cpuinfo
39*6777b538SAndroid Build Coastguard Workercc_library_static {
40*6777b538SAndroid Build Coastguard Worker    name: "cronet_aml_third_party_cpu_features_cpuinfo",
41*6777b538SAndroid Build Coastguard Worker    srcs: [
42*6777b538SAndroid Build Coastguard Worker        "src/src/filesystem.c",
43*6777b538SAndroid Build Coastguard Worker        "src/src/hwcaps.c",
44*6777b538SAndroid Build Coastguard Worker        "src/src/stack_line_reader.c",
45*6777b538SAndroid Build Coastguard Worker        "src/src/string_view.c",
46*6777b538SAndroid Build Coastguard Worker    ],
47*6777b538SAndroid Build Coastguard Worker    defaults: [
48*6777b538SAndroid Build Coastguard Worker        "cronet_aml_cc_defaults",
49*6777b538SAndroid Build Coastguard Worker    ],
50*6777b538SAndroid Build Coastguard Worker    cflags: [
51*6777b538SAndroid Build Coastguard Worker        "-DANDROID",
52*6777b538SAndroid Build Coastguard Worker        "-DANDROID_NDK_VERSION_ROLL=r26b_1",
53*6777b538SAndroid Build Coastguard Worker        "-DCR_CLANG_REVISION=\"llvmorg-19-init-8091-gab037c4f-22\"",
54*6777b538SAndroid Build Coastguard Worker        "-DCR_LIBCXX_REVISION=e3b94d0e5b86883fd77696bf10dc33ba250ba99b",
55*6777b538SAndroid Build Coastguard Worker        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
56*6777b538SAndroid Build Coastguard Worker        "-DHAVE_STRONG_GETAUXVAL",
57*6777b538SAndroid Build Coastguard Worker        "-DHAVE_SYS_UIO_H",
58*6777b538SAndroid Build Coastguard Worker        "-DNDEBUG",
59*6777b538SAndroid Build Coastguard Worker        "-DNO_UNWIND_TABLES",
60*6777b538SAndroid Build Coastguard Worker        "-DNVALGRIND",
61*6777b538SAndroid Build Coastguard Worker        "-DOFFICIAL_BUILD",
62*6777b538SAndroid Build Coastguard Worker        "-DSTACK_LINE_READER_BUFFER_SIZE=1024",
63*6777b538SAndroid Build Coastguard Worker        "-D_GNU_SOURCE",
64*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
65*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE",
66*6777b538SAndroid Build Coastguard Worker        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
67*6777b538SAndroid Build Coastguard Worker        "-D__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__",
68*6777b538SAndroid Build Coastguard Worker        "-D__STDC_CONSTANT_MACROS",
69*6777b538SAndroid Build Coastguard Worker        "-D__STDC_FORMAT_MACROS",
70*6777b538SAndroid Build Coastguard Worker        "-fdata-sections",
71*6777b538SAndroid Build Coastguard Worker        "-ffunction-sections",
72*6777b538SAndroid Build Coastguard Worker        "-fno-asynchronous-unwind-tables",
73*6777b538SAndroid Build Coastguard Worker        "-fno-unwind-tables",
74*6777b538SAndroid Build Coastguard Worker        "-fstack-protector",
75*6777b538SAndroid Build Coastguard Worker        "-fvisibility-inlines-hidden",
76*6777b538SAndroid Build Coastguard Worker        "-fvisibility=hidden",
77*6777b538SAndroid Build Coastguard Worker        "-g1",
78*6777b538SAndroid Build Coastguard Worker    ],
79*6777b538SAndroid Build Coastguard Worker    include_dirs: [
80*6777b538SAndroid Build Coastguard Worker        "external/cronet/",
81*6777b538SAndroid Build Coastguard Worker        "external/cronet/buildtools/third_party/libc++/",
82*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/include/",
83*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++/src/include",
84*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++abi/src/include",
85*6777b538SAndroid Build Coastguard Worker    ],
86*6777b538SAndroid Build Coastguard Worker    cpp_std: "c++20",
87*6777b538SAndroid Build Coastguard Worker    ldflags: [
88*6777b538SAndroid Build Coastguard Worker        "-Wl,--as-needed",
89*6777b538SAndroid Build Coastguard Worker        "-Wl,--gc-sections",
90*6777b538SAndroid Build Coastguard Worker        "-Wl,--icf=all",
91*6777b538SAndroid Build Coastguard Worker    ],
92*6777b538SAndroid Build Coastguard Worker    visibility: [
93*6777b538SAndroid Build Coastguard Worker        "//external/cronet:__subpackages__",
94*6777b538SAndroid Build Coastguard Worker    ],
95*6777b538SAndroid Build Coastguard Worker    target: {
96*6777b538SAndroid Build Coastguard Worker        android_arm: {
97*6777b538SAndroid Build Coastguard Worker            srcs: [
98*6777b538SAndroid Build Coastguard Worker                "src/src/impl_arm_linux_or_android.c",
99*6777b538SAndroid Build Coastguard Worker            ],
100*6777b538SAndroid Build Coastguard Worker            cflags: [
101*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
102*6777b538SAndroid Build Coastguard Worker            ],
103*6777b538SAndroid Build Coastguard Worker        },
104*6777b538SAndroid Build Coastguard Worker        android_arm64: {
105*6777b538SAndroid Build Coastguard Worker            srcs: [
106*6777b538SAndroid Build Coastguard Worker                "src/src/impl_aarch64_linux_or_android.c",
107*6777b538SAndroid Build Coastguard Worker            ],
108*6777b538SAndroid Build Coastguard Worker            cflags: [
109*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
110*6777b538SAndroid Build Coastguard Worker                "-O2",
111*6777b538SAndroid Build Coastguard Worker                "-mno-outline",
112*6777b538SAndroid Build Coastguard Worker            ],
113*6777b538SAndroid Build Coastguard Worker        },
114*6777b538SAndroid Build Coastguard Worker        android_riscv64: {
115*6777b538SAndroid Build Coastguard Worker            srcs: [
116*6777b538SAndroid Build Coastguard Worker                "src/src/impl_riscv_linux.c",
117*6777b538SAndroid Build Coastguard Worker            ],
118*6777b538SAndroid Build Coastguard Worker        },
119*6777b538SAndroid Build Coastguard Worker        android_x86: {
120*6777b538SAndroid Build Coastguard Worker            srcs: [
121*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_freebsd.c",
122*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_linux_or_android.c",
123*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_macos.c",
124*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_windows.c",
125*6777b538SAndroid Build Coastguard Worker            ],
126*6777b538SAndroid Build Coastguard Worker            cflags: [
127*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
128*6777b538SAndroid Build Coastguard Worker                "-msse3",
129*6777b538SAndroid Build Coastguard Worker            ],
130*6777b538SAndroid Build Coastguard Worker        },
131*6777b538SAndroid Build Coastguard Worker        android_x86_64: {
132*6777b538SAndroid Build Coastguard Worker            srcs: [
133*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_freebsd.c",
134*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_linux_or_android.c",
135*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_macos.c",
136*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_windows.c",
137*6777b538SAndroid Build Coastguard Worker            ],
138*6777b538SAndroid Build Coastguard Worker            cflags: [
139*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
140*6777b538SAndroid Build Coastguard Worker                "-msse3",
141*6777b538SAndroid Build Coastguard Worker            ],
142*6777b538SAndroid Build Coastguard Worker        },
143*6777b538SAndroid Build Coastguard Worker    },
144*6777b538SAndroid Build Coastguard Worker}
145*6777b538SAndroid Build Coastguard Worker
146*6777b538SAndroid Build Coastguard Worker// GN: //third_party/cpu_features:cpuinfo__testing
147*6777b538SAndroid Build Coastguard Workercc_library_static {
148*6777b538SAndroid Build Coastguard Worker    name: "cronet_aml_third_party_cpu_features_cpuinfo__testing",
149*6777b538SAndroid Build Coastguard Worker    srcs: [
150*6777b538SAndroid Build Coastguard Worker        "src/src/filesystem.c",
151*6777b538SAndroid Build Coastguard Worker        "src/src/hwcaps.c",
152*6777b538SAndroid Build Coastguard Worker        "src/src/stack_line_reader.c",
153*6777b538SAndroid Build Coastguard Worker        "src/src/string_view.c",
154*6777b538SAndroid Build Coastguard Worker    ],
155*6777b538SAndroid Build Coastguard Worker    defaults: [
156*6777b538SAndroid Build Coastguard Worker        "cronet_aml_cc_defaults",
157*6777b538SAndroid Build Coastguard Worker    ],
158*6777b538SAndroid Build Coastguard Worker    cflags: [
159*6777b538SAndroid Build Coastguard Worker        "-DANDROID",
160*6777b538SAndroid Build Coastguard Worker        "-DANDROID_NDK_VERSION_ROLL=r26b_1",
161*6777b538SAndroid Build Coastguard Worker        "-DCR_CLANG_REVISION=\"llvmorg-19-init-8091-gab037c4f-22\"",
162*6777b538SAndroid Build Coastguard Worker        "-DCR_LIBCXX_REVISION=e3b94d0e5b86883fd77696bf10dc33ba250ba99b",
163*6777b538SAndroid Build Coastguard Worker        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
164*6777b538SAndroid Build Coastguard Worker        "-DHAVE_STRONG_GETAUXVAL",
165*6777b538SAndroid Build Coastguard Worker        "-DHAVE_SYS_UIO_H",
166*6777b538SAndroid Build Coastguard Worker        "-DNDEBUG",
167*6777b538SAndroid Build Coastguard Worker        "-DNO_UNWIND_TABLES",
168*6777b538SAndroid Build Coastguard Worker        "-DNVALGRIND",
169*6777b538SAndroid Build Coastguard Worker        "-DOFFICIAL_BUILD",
170*6777b538SAndroid Build Coastguard Worker        "-DSTACK_LINE_READER_BUFFER_SIZE=1024",
171*6777b538SAndroid Build Coastguard Worker        "-D_GNU_SOURCE",
172*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
173*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE",
174*6777b538SAndroid Build Coastguard Worker        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
175*6777b538SAndroid Build Coastguard Worker        "-D__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__",
176*6777b538SAndroid Build Coastguard Worker        "-D__STDC_CONSTANT_MACROS",
177*6777b538SAndroid Build Coastguard Worker        "-D__STDC_FORMAT_MACROS",
178*6777b538SAndroid Build Coastguard Worker        "-fdata-sections",
179*6777b538SAndroid Build Coastguard Worker        "-ffunction-sections",
180*6777b538SAndroid Build Coastguard Worker        "-fno-asynchronous-unwind-tables",
181*6777b538SAndroid Build Coastguard Worker        "-fno-unwind-tables",
182*6777b538SAndroid Build Coastguard Worker        "-fstack-protector",
183*6777b538SAndroid Build Coastguard Worker        "-fvisibility-inlines-hidden",
184*6777b538SAndroid Build Coastguard Worker        "-fvisibility=hidden",
185*6777b538SAndroid Build Coastguard Worker        "-g1",
186*6777b538SAndroid Build Coastguard Worker    ],
187*6777b538SAndroid Build Coastguard Worker    include_dirs: [
188*6777b538SAndroid Build Coastguard Worker        "external/cronet/",
189*6777b538SAndroid Build Coastguard Worker        "external/cronet/buildtools/third_party/libc++/",
190*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/include/",
191*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++/src/include",
192*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++abi/src/include",
193*6777b538SAndroid Build Coastguard Worker    ],
194*6777b538SAndroid Build Coastguard Worker    cpp_std: "c++20",
195*6777b538SAndroid Build Coastguard Worker    ldflags: [
196*6777b538SAndroid Build Coastguard Worker        "-Wl,--as-needed",
197*6777b538SAndroid Build Coastguard Worker        "-Wl,--gc-sections",
198*6777b538SAndroid Build Coastguard Worker        "-Wl,--icf=all",
199*6777b538SAndroid Build Coastguard Worker    ],
200*6777b538SAndroid Build Coastguard Worker    visibility: [
201*6777b538SAndroid Build Coastguard Worker        "//external/cronet:__subpackages__",
202*6777b538SAndroid Build Coastguard Worker    ],
203*6777b538SAndroid Build Coastguard Worker    target: {
204*6777b538SAndroid Build Coastguard Worker        android_arm: {
205*6777b538SAndroid Build Coastguard Worker            srcs: [
206*6777b538SAndroid Build Coastguard Worker                "src/src/impl_arm_linux_or_android.c",
207*6777b538SAndroid Build Coastguard Worker            ],
208*6777b538SAndroid Build Coastguard Worker            cflags: [
209*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
210*6777b538SAndroid Build Coastguard Worker            ],
211*6777b538SAndroid Build Coastguard Worker        },
212*6777b538SAndroid Build Coastguard Worker        android_arm64: {
213*6777b538SAndroid Build Coastguard Worker            srcs: [
214*6777b538SAndroid Build Coastguard Worker                "src/src/impl_aarch64_linux_or_android.c",
215*6777b538SAndroid Build Coastguard Worker            ],
216*6777b538SAndroid Build Coastguard Worker            cflags: [
217*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
218*6777b538SAndroid Build Coastguard Worker                "-O2",
219*6777b538SAndroid Build Coastguard Worker                "-mno-outline",
220*6777b538SAndroid Build Coastguard Worker            ],
221*6777b538SAndroid Build Coastguard Worker        },
222*6777b538SAndroid Build Coastguard Worker        android_riscv64: {
223*6777b538SAndroid Build Coastguard Worker            srcs: [
224*6777b538SAndroid Build Coastguard Worker                "src/src/impl_riscv_linux.c",
225*6777b538SAndroid Build Coastguard Worker            ],
226*6777b538SAndroid Build Coastguard Worker        },
227*6777b538SAndroid Build Coastguard Worker        android_x86: {
228*6777b538SAndroid Build Coastguard Worker            srcs: [
229*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_freebsd.c",
230*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_linux_or_android.c",
231*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_macos.c",
232*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_windows.c",
233*6777b538SAndroid Build Coastguard Worker            ],
234*6777b538SAndroid Build Coastguard Worker            cflags: [
235*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
236*6777b538SAndroid Build Coastguard Worker                "-msse3",
237*6777b538SAndroid Build Coastguard Worker            ],
238*6777b538SAndroid Build Coastguard Worker        },
239*6777b538SAndroid Build Coastguard Worker        android_x86_64: {
240*6777b538SAndroid Build Coastguard Worker            srcs: [
241*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_freebsd.c",
242*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_linux_or_android.c",
243*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_macos.c",
244*6777b538SAndroid Build Coastguard Worker                "src/src/impl_x86_windows.c",
245*6777b538SAndroid Build Coastguard Worker            ],
246*6777b538SAndroid Build Coastguard Worker            cflags: [
247*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
248*6777b538SAndroid Build Coastguard Worker                "-msse3",
249*6777b538SAndroid Build Coastguard Worker            ],
250*6777b538SAndroid Build Coastguard Worker        },
251*6777b538SAndroid Build Coastguard Worker    },
252*6777b538SAndroid Build Coastguard Worker}
253*6777b538SAndroid Build Coastguard Worker
254*6777b538SAndroid Build Coastguard Worker// GN: //third_party/cpu_features:ndk_compat
255*6777b538SAndroid Build Coastguard Workercc_library_static {
256*6777b538SAndroid Build Coastguard Worker    name: "cronet_aml_third_party_cpu_features_ndk_compat",
257*6777b538SAndroid Build Coastguard Worker    srcs: [
258*6777b538SAndroid Build Coastguard Worker        "src/ndk_compat/cpu-features.c",
259*6777b538SAndroid Build Coastguard Worker    ],
260*6777b538SAndroid Build Coastguard Worker    defaults: [
261*6777b538SAndroid Build Coastguard Worker        "cronet_aml_cc_defaults",
262*6777b538SAndroid Build Coastguard Worker    ],
263*6777b538SAndroid Build Coastguard Worker    cflags: [
264*6777b538SAndroid Build Coastguard Worker        "-DANDROID",
265*6777b538SAndroid Build Coastguard Worker        "-DANDROID_NDK_VERSION_ROLL=r26b_1",
266*6777b538SAndroid Build Coastguard Worker        "-DCR_CLANG_REVISION=\"llvmorg-19-init-8091-gab037c4f-22\"",
267*6777b538SAndroid Build Coastguard Worker        "-DCR_LIBCXX_REVISION=e3b94d0e5b86883fd77696bf10dc33ba250ba99b",
268*6777b538SAndroid Build Coastguard Worker        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
269*6777b538SAndroid Build Coastguard Worker        "-DHAVE_STRONG_GETAUXVAL",
270*6777b538SAndroid Build Coastguard Worker        "-DHAVE_SYS_UIO_H",
271*6777b538SAndroid Build Coastguard Worker        "-DNDEBUG",
272*6777b538SAndroid Build Coastguard Worker        "-DNO_UNWIND_TABLES",
273*6777b538SAndroid Build Coastguard Worker        "-DNVALGRIND",
274*6777b538SAndroid Build Coastguard Worker        "-DOFFICIAL_BUILD",
275*6777b538SAndroid Build Coastguard Worker        "-DSTACK_LINE_READER_BUFFER_SIZE=1024",
276*6777b538SAndroid Build Coastguard Worker        "-D_GNU_SOURCE",
277*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
278*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE",
279*6777b538SAndroid Build Coastguard Worker        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
280*6777b538SAndroid Build Coastguard Worker        "-D__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__",
281*6777b538SAndroid Build Coastguard Worker        "-D__STDC_CONSTANT_MACROS",
282*6777b538SAndroid Build Coastguard Worker        "-D__STDC_FORMAT_MACROS",
283*6777b538SAndroid Build Coastguard Worker        "-fdata-sections",
284*6777b538SAndroid Build Coastguard Worker        "-ffunction-sections",
285*6777b538SAndroid Build Coastguard Worker        "-fno-asynchronous-unwind-tables",
286*6777b538SAndroid Build Coastguard Worker        "-fno-unwind-tables",
287*6777b538SAndroid Build Coastguard Worker        "-fstack-protector",
288*6777b538SAndroid Build Coastguard Worker        "-fvisibility-inlines-hidden",
289*6777b538SAndroid Build Coastguard Worker        "-fvisibility=hidden",
290*6777b538SAndroid Build Coastguard Worker        "-g1",
291*6777b538SAndroid Build Coastguard Worker    ],
292*6777b538SAndroid Build Coastguard Worker    include_dirs: [
293*6777b538SAndroid Build Coastguard Worker        "external/cronet/",
294*6777b538SAndroid Build Coastguard Worker        "external/cronet/buildtools/third_party/libc++/",
295*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/include/",
296*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/ndk_compat/",
297*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++/src/include",
298*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++abi/src/include",
299*6777b538SAndroid Build Coastguard Worker    ],
300*6777b538SAndroid Build Coastguard Worker    cpp_std: "c++20",
301*6777b538SAndroid Build Coastguard Worker    ldflags: [
302*6777b538SAndroid Build Coastguard Worker        "-Wl,--as-needed",
303*6777b538SAndroid Build Coastguard Worker        "-Wl,--gc-sections",
304*6777b538SAndroid Build Coastguard Worker        "-Wl,--icf=all",
305*6777b538SAndroid Build Coastguard Worker    ],
306*6777b538SAndroid Build Coastguard Worker    visibility: [
307*6777b538SAndroid Build Coastguard Worker        "//external/cronet:__subpackages__",
308*6777b538SAndroid Build Coastguard Worker    ],
309*6777b538SAndroid Build Coastguard Worker    target: {
310*6777b538SAndroid Build Coastguard Worker        android_arm: {
311*6777b538SAndroid Build Coastguard Worker            cflags: [
312*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
313*6777b538SAndroid Build Coastguard Worker            ],
314*6777b538SAndroid Build Coastguard Worker        },
315*6777b538SAndroid Build Coastguard Worker        android_arm64: {
316*6777b538SAndroid Build Coastguard Worker            cflags: [
317*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
318*6777b538SAndroid Build Coastguard Worker                "-O2",
319*6777b538SAndroid Build Coastguard Worker                "-mno-outline",
320*6777b538SAndroid Build Coastguard Worker            ],
321*6777b538SAndroid Build Coastguard Worker        },
322*6777b538SAndroid Build Coastguard Worker        android_x86: {
323*6777b538SAndroid Build Coastguard Worker            cflags: [
324*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
325*6777b538SAndroid Build Coastguard Worker                "-msse3",
326*6777b538SAndroid Build Coastguard Worker            ],
327*6777b538SAndroid Build Coastguard Worker        },
328*6777b538SAndroid Build Coastguard Worker        android_x86_64: {
329*6777b538SAndroid Build Coastguard Worker            cflags: [
330*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
331*6777b538SAndroid Build Coastguard Worker                "-msse3",
332*6777b538SAndroid Build Coastguard Worker            ],
333*6777b538SAndroid Build Coastguard Worker        },
334*6777b538SAndroid Build Coastguard Worker    },
335*6777b538SAndroid Build Coastguard Worker}
336*6777b538SAndroid Build Coastguard Worker
337*6777b538SAndroid Build Coastguard Worker// GN: //third_party/cpu_features:ndk_compat__testing
338*6777b538SAndroid Build Coastguard Workercc_library_static {
339*6777b538SAndroid Build Coastguard Worker    name: "cronet_aml_third_party_cpu_features_ndk_compat__testing",
340*6777b538SAndroid Build Coastguard Worker    srcs: [
341*6777b538SAndroid Build Coastguard Worker        "src/ndk_compat/cpu-features.c",
342*6777b538SAndroid Build Coastguard Worker    ],
343*6777b538SAndroid Build Coastguard Worker    defaults: [
344*6777b538SAndroid Build Coastguard Worker        "cronet_aml_cc_defaults",
345*6777b538SAndroid Build Coastguard Worker    ],
346*6777b538SAndroid Build Coastguard Worker    cflags: [
347*6777b538SAndroid Build Coastguard Worker        "-DANDROID",
348*6777b538SAndroid Build Coastguard Worker        "-DANDROID_NDK_VERSION_ROLL=r26b_1",
349*6777b538SAndroid Build Coastguard Worker        "-DCR_CLANG_REVISION=\"llvmorg-19-init-8091-gab037c4f-22\"",
350*6777b538SAndroid Build Coastguard Worker        "-DCR_LIBCXX_REVISION=e3b94d0e5b86883fd77696bf10dc33ba250ba99b",
351*6777b538SAndroid Build Coastguard Worker        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
352*6777b538SAndroid Build Coastguard Worker        "-DHAVE_STRONG_GETAUXVAL",
353*6777b538SAndroid Build Coastguard Worker        "-DHAVE_SYS_UIO_H",
354*6777b538SAndroid Build Coastguard Worker        "-DNDEBUG",
355*6777b538SAndroid Build Coastguard Worker        "-DNO_UNWIND_TABLES",
356*6777b538SAndroid Build Coastguard Worker        "-DNVALGRIND",
357*6777b538SAndroid Build Coastguard Worker        "-DOFFICIAL_BUILD",
358*6777b538SAndroid Build Coastguard Worker        "-DSTACK_LINE_READER_BUFFER_SIZE=1024",
359*6777b538SAndroid Build Coastguard Worker        "-D_GNU_SOURCE",
360*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
361*6777b538SAndroid Build Coastguard Worker        "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE",
362*6777b538SAndroid Build Coastguard Worker        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
363*6777b538SAndroid Build Coastguard Worker        "-D__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__",
364*6777b538SAndroid Build Coastguard Worker        "-D__STDC_CONSTANT_MACROS",
365*6777b538SAndroid Build Coastguard Worker        "-D__STDC_FORMAT_MACROS",
366*6777b538SAndroid Build Coastguard Worker        "-fdata-sections",
367*6777b538SAndroid Build Coastguard Worker        "-ffunction-sections",
368*6777b538SAndroid Build Coastguard Worker        "-fno-asynchronous-unwind-tables",
369*6777b538SAndroid Build Coastguard Worker        "-fno-unwind-tables",
370*6777b538SAndroid Build Coastguard Worker        "-fstack-protector",
371*6777b538SAndroid Build Coastguard Worker        "-fvisibility-inlines-hidden",
372*6777b538SAndroid Build Coastguard Worker        "-fvisibility=hidden",
373*6777b538SAndroid Build Coastguard Worker        "-g1",
374*6777b538SAndroid Build Coastguard Worker    ],
375*6777b538SAndroid Build Coastguard Worker    include_dirs: [
376*6777b538SAndroid Build Coastguard Worker        "external/cronet/",
377*6777b538SAndroid Build Coastguard Worker        "external/cronet/buildtools/third_party/libc++/",
378*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/include/",
379*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/cpu_features/src/ndk_compat/",
380*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++/src/include",
381*6777b538SAndroid Build Coastguard Worker        "external/cronet/third_party/libc++abi/src/include",
382*6777b538SAndroid Build Coastguard Worker    ],
383*6777b538SAndroid Build Coastguard Worker    cpp_std: "c++20",
384*6777b538SAndroid Build Coastguard Worker    ldflags: [
385*6777b538SAndroid Build Coastguard Worker        "-Wl,--as-needed",
386*6777b538SAndroid Build Coastguard Worker        "-Wl,--gc-sections",
387*6777b538SAndroid Build Coastguard Worker        "-Wl,--icf=all",
388*6777b538SAndroid Build Coastguard Worker    ],
389*6777b538SAndroid Build Coastguard Worker    visibility: [
390*6777b538SAndroid Build Coastguard Worker        "//external/cronet:__subpackages__",
391*6777b538SAndroid Build Coastguard Worker    ],
392*6777b538SAndroid Build Coastguard Worker    target: {
393*6777b538SAndroid Build Coastguard Worker        android_arm: {
394*6777b538SAndroid Build Coastguard Worker            cflags: [
395*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
396*6777b538SAndroid Build Coastguard Worker            ],
397*6777b538SAndroid Build Coastguard Worker        },
398*6777b538SAndroid Build Coastguard Worker        android_arm64: {
399*6777b538SAndroid Build Coastguard Worker            cflags: [
400*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
401*6777b538SAndroid Build Coastguard Worker                "-O2",
402*6777b538SAndroid Build Coastguard Worker                "-mno-outline",
403*6777b538SAndroid Build Coastguard Worker            ],
404*6777b538SAndroid Build Coastguard Worker        },
405*6777b538SAndroid Build Coastguard Worker        android_x86: {
406*6777b538SAndroid Build Coastguard Worker            cflags: [
407*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
408*6777b538SAndroid Build Coastguard Worker                "-msse3",
409*6777b538SAndroid Build Coastguard Worker            ],
410*6777b538SAndroid Build Coastguard Worker        },
411*6777b538SAndroid Build Coastguard Worker        android_x86_64: {
412*6777b538SAndroid Build Coastguard Worker            cflags: [
413*6777b538SAndroid Build Coastguard Worker                "-D_FORTIFY_SOURCE=2",
414*6777b538SAndroid Build Coastguard Worker                "-msse3",
415*6777b538SAndroid Build Coastguard Worker            ],
416*6777b538SAndroid Build Coastguard Worker        },
417*6777b538SAndroid Build Coastguard Worker    },
418*6777b538SAndroid Build Coastguard Worker}
419