xref: /aosp_15_r20/external/libevent/Android.bp (revision 663afb9b963571284e0f0a60f257164ab54f64bf)
1*663afb9bSAndroid Build Coastguard Worker// Copyright (C) 2015 The Android Open Source Project
2*663afb9bSAndroid Build Coastguard Worker//
3*663afb9bSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*663afb9bSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*663afb9bSAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*663afb9bSAndroid Build Coastguard Worker//
7*663afb9bSAndroid Build Coastguard Worker//      http://www.apache.org/licenses/LICENSE-2.0
8*663afb9bSAndroid Build Coastguard Worker//
9*663afb9bSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*663afb9bSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*663afb9bSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*663afb9bSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*663afb9bSAndroid Build Coastguard Worker// limitations under the License.
14*663afb9bSAndroid Build Coastguard Worker
15*663afb9bSAndroid Build Coastguard Workerpackage {
16*663afb9bSAndroid Build Coastguard Worker    default_applicable_licenses: ["external_libevent_license"],
17*663afb9bSAndroid Build Coastguard Worker}
18*663afb9bSAndroid Build Coastguard Worker
19*663afb9bSAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of
20*663afb9bSAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect
21*663afb9bSAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct.
22*663afb9bSAndroid Build Coastguard Worker//
23*663afb9bSAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory.
24*663afb9bSAndroid Build Coastguard Worker//
25*663afb9bSAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses,
26*663afb9bSAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the
27*663afb9bSAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed.
28*663afb9bSAndroid Build Coastguard Worker//
29*663afb9bSAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private"
30*663afb9bSAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be
31*663afb9bSAndroid Build Coastguard Worker// used in the current project.
32*663afb9bSAndroid Build Coastguard Worker// See: http://go/android-license-faq
33*663afb9bSAndroid Build Coastguard Workerlicense {
34*663afb9bSAndroid Build Coastguard Worker    name: "external_libevent_license",
35*663afb9bSAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
36*663afb9bSAndroid Build Coastguard Worker    license_kinds: [
37*663afb9bSAndroid Build Coastguard Worker        "SPDX-license-identifier-BSD",
38*663afb9bSAndroid Build Coastguard Worker        "SPDX-license-identifier-BSL-1.0",
39*663afb9bSAndroid Build Coastguard Worker        "SPDX-license-identifier-ISC",
40*663afb9bSAndroid Build Coastguard Worker        "SPDX-license-identifier-MIT",
41*663afb9bSAndroid Build Coastguard Worker        "legacy_notice",
42*663afb9bSAndroid Build Coastguard Worker        "legacy_unencumbered",
43*663afb9bSAndroid Build Coastguard Worker    ],
44*663afb9bSAndroid Build Coastguard Worker    license_text: [
45*663afb9bSAndroid Build Coastguard Worker        "LICENSE",
46*663afb9bSAndroid Build Coastguard Worker    ],
47*663afb9bSAndroid Build Coastguard Worker}
48*663afb9bSAndroid Build Coastguard Worker
49*663afb9bSAndroid Build Coastguard Workercc_library {
50*663afb9bSAndroid Build Coastguard Worker    name: "libevent",
51*663afb9bSAndroid Build Coastguard Worker    host_supported: true,
52*663afb9bSAndroid Build Coastguard Worker    ramdisk_available: true,
53*663afb9bSAndroid Build Coastguard Worker    recovery_available: true,
54*663afb9bSAndroid Build Coastguard Worker    vendor_available: true,
55*663afb9bSAndroid Build Coastguard Worker    product_available: true,
56*663afb9bSAndroid Build Coastguard Worker    unique_host_soname: true,
57*663afb9bSAndroid Build Coastguard Worker
58*663afb9bSAndroid Build Coastguard Worker    arch: {
59*663afb9bSAndroid Build Coastguard Worker        arm: {
60*663afb9bSAndroid Build Coastguard Worker            instruction_set: "arm",
61*663afb9bSAndroid Build Coastguard Worker        },
62*663afb9bSAndroid Build Coastguard Worker    },
63*663afb9bSAndroid Build Coastguard Worker    cflags: [
64*663afb9bSAndroid Build Coastguard Worker        "-D_BSD_SOURCE",
65*663afb9bSAndroid Build Coastguard Worker        "-O3",
66*663afb9bSAndroid Build Coastguard Worker        "-Wno-strict-aliasing",
67*663afb9bSAndroid Build Coastguard Worker        "-Wno-unused-parameter",
68*663afb9bSAndroid Build Coastguard Worker        "-Werror",
69*663afb9bSAndroid Build Coastguard Worker    ],
70*663afb9bSAndroid Build Coastguard Worker    export_include_dirs: ["include"],
71*663afb9bSAndroid Build Coastguard Worker
72*663afb9bSAndroid Build Coastguard Worker    local_include_dirs: ["compat"],
73*663afb9bSAndroid Build Coastguard Worker
74*663afb9bSAndroid Build Coastguard Worker    srcs: [
75*663afb9bSAndroid Build Coastguard Worker        // core
76*663afb9bSAndroid Build Coastguard Worker        "buffer.c",
77*663afb9bSAndroid Build Coastguard Worker        "bufferevent.c",
78*663afb9bSAndroid Build Coastguard Worker        "bufferevent_filter.c",
79*663afb9bSAndroid Build Coastguard Worker        "bufferevent_pair.c",
80*663afb9bSAndroid Build Coastguard Worker        "bufferevent_ratelim.c",
81*663afb9bSAndroid Build Coastguard Worker        "bufferevent_sock.c",
82*663afb9bSAndroid Build Coastguard Worker        "event.c",
83*663afb9bSAndroid Build Coastguard Worker        "evmap.c",
84*663afb9bSAndroid Build Coastguard Worker        "evthread.c",
85*663afb9bSAndroid Build Coastguard Worker        "evthread_pthread.c",
86*663afb9bSAndroid Build Coastguard Worker        "evutil.c",
87*663afb9bSAndroid Build Coastguard Worker        "evutil_rand.c",
88*663afb9bSAndroid Build Coastguard Worker        "evutil_time.c",
89*663afb9bSAndroid Build Coastguard Worker        "listener.c",
90*663afb9bSAndroid Build Coastguard Worker        "log.c",
91*663afb9bSAndroid Build Coastguard Worker        "signal.c",
92*663afb9bSAndroid Build Coastguard Worker        "strlcpy.c",
93*663afb9bSAndroid Build Coastguard Worker
94*663afb9bSAndroid Build Coastguard Worker        // extra
95*663afb9bSAndroid Build Coastguard Worker        "evdns.c",
96*663afb9bSAndroid Build Coastguard Worker        "event_tagging.c",
97*663afb9bSAndroid Build Coastguard Worker        "evrpc.c",
98*663afb9bSAndroid Build Coastguard Worker        "http.c",
99*663afb9bSAndroid Build Coastguard Worker
100*663afb9bSAndroid Build Coastguard Worker        "poll.c",
101*663afb9bSAndroid Build Coastguard Worker        "select.c",
102*663afb9bSAndroid Build Coastguard Worker    ],
103*663afb9bSAndroid Build Coastguard Worker
104*663afb9bSAndroid Build Coastguard Worker    target: {
105*663afb9bSAndroid Build Coastguard Worker        linux: {
106*663afb9bSAndroid Build Coastguard Worker            srcs: ["epoll.c"],
107*663afb9bSAndroid Build Coastguard Worker            cflags: ["-D_GNU_SOURCE=1"],
108*663afb9bSAndroid Build Coastguard Worker        },
109*663afb9bSAndroid Build Coastguard Worker        linux_bionic: {
110*663afb9bSAndroid Build Coastguard Worker            enabled: true,
111*663afb9bSAndroid Build Coastguard Worker        },
112*663afb9bSAndroid Build Coastguard Worker        darwin: {
113*663afb9bSAndroid Build Coastguard Worker            srcs: ["kqueue.c"],
114*663afb9bSAndroid Build Coastguard Worker        },
115*663afb9bSAndroid Build Coastguard Worker    },
116*663afb9bSAndroid Build Coastguard Worker    min_sdk_version: "30",
117*663afb9bSAndroid Build Coastguard Worker    apex_available: [
118*663afb9bSAndroid Build Coastguard Worker        "//apex_available:platform",
119*663afb9bSAndroid Build Coastguard Worker        "com.android.btservices",
120*663afb9bSAndroid Build Coastguard Worker        "com.android.nfcservices",
121*663afb9bSAndroid Build Coastguard Worker    ],
122*663afb9bSAndroid Build Coastguard Worker}
123