You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
212 lines
6.1 KiB
212 lines
6.1 KiB
4 months ago
|
// Copyright (C) 2020 The Android Open Source Project
|
||
|
//
|
||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
// you may not use this file except in compliance with the License.
|
||
|
// You may obtain a copy of the License at
|
||
|
//
|
||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||
|
//
|
||
|
// Unless required by applicable law or agreed to in writing, software
|
||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
// See the License for the specific language governing permissions and
|
||
|
// limitations under the License.
|
||
|
|
||
|
// Common variables.
|
||
|
package {
|
||
|
default_applicable_licenses: ["external_libwebsockets_license"],
|
||
|
}
|
||
|
|
||
|
// Added automatically by a large-scale-change that took the approach of
|
||
|
// 'apply every license found to every target'. While this makes sure we respect
|
||
|
// every license restriction, it may not be entirely correct.
|
||
|
//
|
||
|
// e.g. GPL in an MIT project might only apply to the contrib/ directory.
|
||
|
//
|
||
|
// Please consider splitting the single license below into multiple licenses,
|
||
|
// taking care not to lose any license_kind information, and overriding the
|
||
|
// default license using the 'licenses: [...]' property on targets as needed.
|
||
|
//
|
||
|
// For unused files, consider creating a 'fileGroup' with "//visibility:private"
|
||
|
// to attach the license to, and including a comment whether the files may be
|
||
|
// used in the current project.
|
||
|
// See: http://go/android-license-faq
|
||
|
license {
|
||
|
name: "external_libwebsockets_license",
|
||
|
visibility: [":__subpackages__"],
|
||
|
license_kinds: [
|
||
|
"SPDX-license-identifier-Apache-2.0",
|
||
|
"SPDX-license-identifier-BSD",
|
||
|
"SPDX-license-identifier-Beerware",
|
||
|
"SPDX-license-identifier-CC0-1.0",
|
||
|
"SPDX-license-identifier-GPL",
|
||
|
"SPDX-license-identifier-LGPL",
|
||
|
"SPDX-license-identifier-MIT",
|
||
|
"SPDX-license-identifier-Zlib",
|
||
|
"legacy_permissive",
|
||
|
"legacy_unencumbered",
|
||
|
],
|
||
|
license_text: [
|
||
|
"LICENSE",
|
||
|
],
|
||
|
}
|
||
|
|
||
|
libwebsocketsSrcFiles = [
|
||
|
"lib/core-net/adopt.c",
|
||
|
"lib/core-net/client.c",
|
||
|
"lib/core-net/close.c",
|
||
|
"lib/core-net/connect.c",
|
||
|
"lib/core-net/dummy-callback.c",
|
||
|
"lib/core-net/network.c",
|
||
|
"lib/core-net/output.c",
|
||
|
"lib/core-net/pollfd.c",
|
||
|
"lib/core-net/sequencer.c",
|
||
|
"lib/core-net/server.c",
|
||
|
"lib/core-net/service.c",
|
||
|
"lib/core-net/sorted-usec-list.c",
|
||
|
"lib/core-net/state.c",
|
||
|
"lib/core-net/stats.c",
|
||
|
"lib/core-net/vhost.c",
|
||
|
"lib/core-net/wsi-timeout.c",
|
||
|
"lib/core-net/wsi.c",
|
||
|
"lib/core/alloc.c",
|
||
|
"lib/core/buflist.c",
|
||
|
"lib/core/context.c",
|
||
|
"lib/core/libwebsockets.c",
|
||
|
"lib/core/logs.c",
|
||
|
"lib/core/lws_dll2.c",
|
||
|
"lib/core/vfs.c",
|
||
|
"lib/event-libs/poll/poll.c",
|
||
|
"lib/misc/base64-decode.c",
|
||
|
"lib/misc/dir.c",
|
||
|
"lib/misc/lejp.c",
|
||
|
"lib/misc/lws-ring.c",
|
||
|
"lib/misc/lwsac/cached-file.c",
|
||
|
"lib/misc/lwsac/lwsac.c",
|
||
|
"lib/misc/sha-1.c",
|
||
|
"lib/plat/unix/unix-caps.c",
|
||
|
"lib/plat/unix/unix-fds.c",
|
||
|
"lib/plat/unix/unix-file.c",
|
||
|
"lib/plat/unix/unix-init.c",
|
||
|
"lib/plat/unix/unix-misc.c",
|
||
|
"lib/plat/unix/unix-pipe.c",
|
||
|
"lib/plat/unix/unix-service.c",
|
||
|
"lib/plat/unix/unix-sockets.c",
|
||
|
"lib/roles/h1/ops-h1.c",
|
||
|
"lib/roles/h2/hpack.c",
|
||
|
"lib/roles/h2/http2.c",
|
||
|
"lib/roles/h2/ops-h2.c",
|
||
|
"lib/roles/http/client/client-handshake.c",
|
||
|
"lib/roles/http/client/client-http.c",
|
||
|
"lib/roles/http/header.c",
|
||
|
"lib/roles/http/parsers.c",
|
||
|
"lib/roles/http/server/lejp-conf.c",
|
||
|
"lib/roles/http/server/lws-spa.c",
|
||
|
"lib/roles/http/server/server.c",
|
||
|
"lib/roles/listen/ops-listen.c",
|
||
|
"lib/roles/pipe/ops-pipe.c",
|
||
|
"lib/roles/raw-file/ops-raw-file.c",
|
||
|
"lib/roles/raw-skt/ops-raw-skt.c",
|
||
|
"lib/roles/ws/client-parser-ws.c",
|
||
|
"lib/roles/ws/client-ws.c",
|
||
|
"lib/roles/ws/ops-ws.c",
|
||
|
"lib/roles/ws/server-ws.c",
|
||
|
"lib/system/system.c",
|
||
|
"lib/tls/openssl/openssl-client.c",
|
||
|
"lib/tls/openssl/openssl-server.c",
|
||
|
"lib/tls/openssl/openssl-ssl.c",
|
||
|
"lib/tls/openssl/openssl-tls.c",
|
||
|
"lib/tls/openssl/openssl-x509.c",
|
||
|
"lib/tls/tls-client.c",
|
||
|
"lib/tls/tls-network.c",
|
||
|
"lib/tls/tls-server.c",
|
||
|
"lib/tls/tls.c",
|
||
|
]
|
||
|
|
||
|
libwebsocketsIncludePath = [
|
||
|
"plugins",
|
||
|
"lib/core",
|
||
|
"lib/core-net",
|
||
|
"lib/event-libs",
|
||
|
"lib/abstract",
|
||
|
"lib/tls",
|
||
|
"lib/roles",
|
||
|
"lib/event-libs/libuv",
|
||
|
"lib/event-libs/poll",
|
||
|
"lib/event-libs/libevent",
|
||
|
"lib/event-libs/glib",
|
||
|
"lib/event-libs/libev",
|
||
|
"lib/jose/jwe",
|
||
|
"lib/jose/jws",
|
||
|
"lib/jose",
|
||
|
"lib/misc",
|
||
|
"lib/roles/http",
|
||
|
"lib/roles/http/compression",
|
||
|
"lib/roles/h1",
|
||
|
"lib/roles/h2",
|
||
|
"lib/roles/ws",
|
||
|
"lib/roles/cgi",
|
||
|
"lib/roles/dbus",
|
||
|
"lib/roles/raw-proxy",
|
||
|
"lib/abstract",
|
||
|
"lib/system/async-dns",
|
||
|
"lib/roles/mqtt",
|
||
|
"lib/plat/unix",
|
||
|
"lib",
|
||
|
]
|
||
|
|
||
|
cc_library_static {
|
||
|
name: "libwebsockets",
|
||
|
srcs: libwebsocketsSrcFiles,
|
||
|
local_include_dirs: libwebsocketsIncludePath,
|
||
|
export_include_dirs: ["include"],
|
||
|
static_libs: [
|
||
|
"libssl",
|
||
|
"libcap",
|
||
|
],
|
||
|
host_supported: true,
|
||
|
product_variables: {
|
||
|
debuggable: {
|
||
|
cflags: [
|
||
|
"-UNDEBUG",
|
||
|
],
|
||
|
},
|
||
|
},
|
||
|
target: {
|
||
|
darwin: {
|
||
|
enabled: false,
|
||
|
},
|
||
|
android: {
|
||
|
shared_libs: [
|
||
|
"libcrypto",
|
||
|
],
|
||
|
cflags: [
|
||
|
"-Wno-unused-parameter",
|
||
|
"-Wno-missing-field-initializers",
|
||
|
],
|
||
|
},
|
||
|
host: {
|
||
|
static_libs: [
|
||
|
"libcrypto",
|
||
|
],
|
||
|
cflags: [
|
||
|
"-UNDEBUG",
|
||
|
"-Wall",
|
||
|
"-Wsign-compare",
|
||
|
"-Wstrict-aliasing",
|
||
|
"-Wuninitialized",
|
||
|
"-Werror",
|
||
|
"-fvisibility=hidden",
|
||
|
"-Wundef",
|
||
|
"-Wtype-limits",
|
||
|
"-Wignored-qualifiers",
|
||
|
"-Wno-deprecated-declarations",
|
||
|
"-pthread",
|
||
|
"-Wno-unused-command-line-argument",
|
||
|
"-Wno-unused-parameter",
|
||
|
"-Wno-implicit-function-declaration",
|
||
|
],
|
||
|
},
|
||
|
},
|
||
|
}
|