xref: /aosp_15_r20/external/cronet/third_party/netty-tcnative/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_netty-tcnative_license",
21    ],
22}
23
24// GN: License-Artificial
25license {
26    name: "external_cronet_third_party_netty-tcnative_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/netty-tcnative:netty-tcnative-so__testing
39cc_library_shared {
40    name: "cronet_aml_third_party_netty_tcnative_netty_tcnative_so__testing",
41    srcs: [
42        "src/c/bb.c",
43        "src/c/error.c",
44        "src/c/jnilib.c",
45        "src/c/native_constants.c",
46        "src/c/ssl.c",
47        "src/c/sslcontext.c",
48        "src/c/sslutils.c",
49    ],
50    whole_static_libs: [
51        "cronet_aml_buildtools_third_party_libc___libc____testing",
52        "cronet_aml_buildtools_third_party_libc__abi_libc__abi__testing",
53        "cronet_aml_third_party_apache_portable_runtime_apr__testing",
54        "cronet_aml_third_party_boringssl_boringssl__testing",
55        "cronet_aml_third_party_boringssl_boringssl_asm__testing",
56    ],
57    defaults: [
58        "cronet_aml_cc_defaults",
59    ],
60    cflags: [
61        "-DANDROID",
62        "-DANDROID_NDK_VERSION_ROLL=r26b_1",
63        "-DCR_CLANG_REVISION=\"llvmorg-19-init-8091-gab037c4f-22\"",
64        "-DCR_LIBCXX_REVISION=e3b94d0e5b86883fd77696bf10dc33ba250ba99b",
65        "-DDYNAMIC_ANNOTATIONS_ENABLED=0",
66        "-DHAVE_OPENSSL",
67        "-DHAVE_SYS_UIO_H",
68        "-DNDEBUG",
69        "-DNO_UNWIND_TABLES",
70        "-DNVALGRIND",
71        "-DOFFICIAL_BUILD",
72        "-D_GNU_SOURCE",
73        "-D_LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS",
74        "-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE",
75        "-D_LIBCXXABI_DISABLE_VISIBILITY_ANNOTATIONS",
76        "-D__ANDROID_UNAVAILABLE_SYMBOLS_ARE_WEAK__",
77        "-D__STDC_CONSTANT_MACROS",
78        "-D__STDC_FORMAT_MACROS",
79        "-Wno-error=pointer-bool-conversion",
80        "-fdata-sections",
81        "-ffunction-sections",
82        "-fno-asynchronous-unwind-tables",
83        "-fno-unwind-tables",
84        "-fstack-protector",
85        "-fvisibility-inlines-hidden",
86        "-fvisibility=hidden",
87        "-g1",
88    ],
89    include_dirs: [
90        "external/cronet/",
91        "external/cronet/buildtools/third_party/libc++/",
92        "external/cronet/third_party/apache-portable-runtime/src/include/",
93        "external/cronet/third_party/boringssl/src/include/",
94        "external/cronet/third_party/libc++/src/include",
95        "external/cronet/third_party/libc++abi/src/include",
96    ],
97    cpp_std: "c++20",
98    ldflags: [
99        "-Wl,--as-needed",
100        "-Wl,--gc-sections",
101        "-Wl,--icf=all",
102    ],
103    stem: "libnetty-tcnative",
104    visibility: [
105        "//external/cronet:__subpackages__",
106        "//packages/modules/Connectivity:__subpackages__",
107    ],
108    target: {
109        android_arm: {
110            cflags: [
111                "-D_FORTIFY_SOURCE=2",
112            ],
113        },
114        android_arm64: {
115            cflags: [
116                "-D_FORTIFY_SOURCE=2",
117                "-O2",
118                "-mno-outline",
119            ],
120        },
121        android_x86: {
122            cflags: [
123                "-D_FORTIFY_SOURCE=2",
124                "-msse3",
125            ],
126        },
127        android_x86_64: {
128            cflags: [
129                "-D_FORTIFY_SOURCE=2",
130                "-msse3",
131            ],
132        },
133    },
134}
135