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