1*3f982cf4SFabien Sanglardpackage { 2*3f982cf4SFabien Sanglard default_applicable_licenses: ["external_openscreen_license"], 3*3f982cf4SFabien Sanglard} 4*3f982cf4SFabien Sanglard 5*3f982cf4SFabien Sanglard// Added automatically by a large-scale-change that took the approach of 6*3f982cf4SFabien Sanglard// 'apply every license found to every target'. While this makes sure we respect 7*3f982cf4SFabien Sanglard// every license restriction, it may not be entirely correct. 8*3f982cf4SFabien Sanglard// 9*3f982cf4SFabien Sanglard// e.g. GPL in an MIT project might only apply to the contrib/ directory. 10*3f982cf4SFabien Sanglard// 11*3f982cf4SFabien Sanglard// Please consider splitting the single license below into multiple licenses, 12*3f982cf4SFabien Sanglard// taking care not to lose any license_kind information, and overriding the 13*3f982cf4SFabien Sanglard// default license using the 'licenses: [...]' property on targets as needed. 14*3f982cf4SFabien Sanglard// 15*3f982cf4SFabien Sanglard// For unused files, consider creating a 'fileGroup' with "//visibility:private" 16*3f982cf4SFabien Sanglard// to attach the license to, and including a comment whether the files may be 17*3f982cf4SFabien Sanglard// used in the current project. 18*3f982cf4SFabien Sanglard// 19*3f982cf4SFabien Sanglard// large-scale-change filtered out the below license kinds as false-positives: 20*3f982cf4SFabien Sanglard// SPDX-license-identifier-GPL-2.0 21*3f982cf4SFabien Sanglard// SPDX-license-identifier-LGPL-2.1 22*3f982cf4SFabien Sanglard// SPDX-license-identifier-MPL 23*3f982cf4SFabien Sanglard// See: http://go/android-license-faq 24*3f982cf4SFabien Sanglardlicense { 25*3f982cf4SFabien Sanglard name: "external_openscreen_license", 26*3f982cf4SFabien Sanglard visibility: [":__subpackages__"], 27*3f982cf4SFabien Sanglard license_kinds: [ 28*3f982cf4SFabien Sanglard "SPDX-license-identifier-Apache-2.0", 29*3f982cf4SFabien Sanglard "SPDX-license-identifier-BSD", 30*3f982cf4SFabien Sanglard "SPDX-license-identifier-ISC", 31*3f982cf4SFabien Sanglard "SPDX-license-identifier-MIT", 32*3f982cf4SFabien Sanglard "SPDX-license-identifier-NCSA", 33*3f982cf4SFabien Sanglard "SPDX-license-identifier-OpenSSL", 34*3f982cf4SFabien Sanglard "SPDX-license-identifier-Zlib", 35*3f982cf4SFabien Sanglard "legacy_unencumbered", 36*3f982cf4SFabien Sanglard ], 37*3f982cf4SFabien Sanglard license_text: [ 38*3f982cf4SFabien Sanglard "LICENSE", 39*3f982cf4SFabien Sanglard ], 40*3f982cf4SFabien Sanglard} 41*3f982cf4SFabien Sanglard 42*3f982cf4SFabien Sanglardcc_defaults { 43*3f982cf4SFabien Sanglard name: "openscreen_defaults", 44*3f982cf4SFabien Sanglard 45*3f982cf4SFabien Sanglard cflags: [ 46*3f982cf4SFabien Sanglard "-O2", 47*3f982cf4SFabien Sanglard "-g", 48*3f982cf4SFabien Sanglard "-fno-strict-aliasing", 49*3f982cf4SFabien Sanglard "-W", 50*3f982cf4SFabien Sanglard "-Wall", 51*3f982cf4SFabien Sanglard "-Wextra", 52*3f982cf4SFabien Sanglard "-Wno-address-of-packed-member", 53*3f982cf4SFabien Sanglard "-Wno-array-bounds", 54*3f982cf4SFabien Sanglard "-Wno-pointer-sign", 55*3f982cf4SFabien Sanglard "-Wno-unused", 56*3f982cf4SFabien Sanglard "-Wno-unused-but-set-variable", 57*3f982cf4SFabien Sanglard "-Wno-unused-parameter", 58*3f982cf4SFabien Sanglard "-Wno-missing-field-initializers", 59*3f982cf4SFabien Sanglard "-Werror=implicit-function-declaration", 60*3f982cf4SFabien Sanglard "-D_DEBUG", 61*3f982cf4SFabien Sanglard "-DOPENSCREEN_TEST_DATA_DIR=\"$ANDROID_BUILD_TOP/external/openscreen/test/data/\"", 62*3f982cf4SFabien Sanglard ], 63*3f982cf4SFabien Sanglard cppflags: [ 64*3f982cf4SFabien Sanglard "-fno-exceptions", 65*3f982cf4SFabien Sanglard "-fno-unwind-tables", 66*3f982cf4SFabien Sanglard "-fno-asynchronous-unwind-tables", 67*3f982cf4SFabien Sanglard ], 68*3f982cf4SFabien Sanglard header_libs: [ 69*3f982cf4SFabien Sanglard "libopenscreen_absl_headers", 70*3f982cf4SFabien Sanglard ], 71*3f982cf4SFabien Sanglard} 72*3f982cf4SFabien Sanglard 73*3f982cf4SFabien Sanglardosp_discovery_srcs = [ 74*3f982cf4SFabien Sanglard "discovery/dnssd/impl/conversion_layer.cc", 75*3f982cf4SFabien Sanglard "discovery/dnssd/impl/dns_data_graph.cc", 76*3f982cf4SFabien Sanglard "discovery/dnssd/impl/instance_key.cc", 77*3f982cf4SFabien Sanglard "discovery/dnssd/impl/network_interface_config.cc", 78*3f982cf4SFabien Sanglard "discovery/dnssd/impl/publisher_impl.cc", 79*3f982cf4SFabien Sanglard "discovery/dnssd/impl/querier_impl.cc", 80*3f982cf4SFabien Sanglard "discovery/dnssd/impl/service_dispatcher.cc", 81*3f982cf4SFabien Sanglard "discovery/dnssd/impl/service_instance.cc", 82*3f982cf4SFabien Sanglard "discovery/dnssd/impl/service_key.cc", 83*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_instance.cc", 84*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_instance_endpoint.cc", 85*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_txt_record.cc", 86*3f982cf4SFabien Sanglard "discovery/mdns/mdns_probe.cc", 87*3f982cf4SFabien Sanglard "discovery/mdns/mdns_probe_manager.cc", 88*3f982cf4SFabien Sanglard "discovery/mdns/mdns_publisher.cc", 89*3f982cf4SFabien Sanglard "discovery/mdns/mdns_querier.cc", 90*3f982cf4SFabien Sanglard "discovery/mdns/mdns_reader.cc", 91*3f982cf4SFabien Sanglard "discovery/mdns/mdns_receiver.cc", 92*3f982cf4SFabien Sanglard "discovery/mdns/mdns_records.cc", 93*3f982cf4SFabien Sanglard "discovery/mdns/mdns_responder.cc", 94*3f982cf4SFabien Sanglard "discovery/mdns/mdns_sender.cc", 95*3f982cf4SFabien Sanglard "discovery/mdns/mdns_service_impl.cc", 96*3f982cf4SFabien Sanglard "discovery/mdns/mdns_trackers.cc", 97*3f982cf4SFabien Sanglard "discovery/mdns/mdns_writer.cc", 98*3f982cf4SFabien Sanglard "discovery/mdns/public/mdns_service.cc", 99*3f982cf4SFabien Sanglard] 100*3f982cf4SFabien Sanglard 101*3f982cf4SFabien Sanglardosp_discovery_testing_srcs = [ 102*3f982cf4SFabien Sanglard "discovery/dnssd/testing/fake_dns_record_factory.cc", 103*3f982cf4SFabien Sanglard "discovery/mdns/testing/mdns_test_util.cc", 104*3f982cf4SFabien Sanglard] 105*3f982cf4SFabien Sanglard 106*3f982cf4SFabien Sanglardosp_discovery_unittest_srcs = [ 107*3f982cf4SFabien Sanglard "discovery/dnssd/impl/conversion_layer_unittest.cc", 108*3f982cf4SFabien Sanglard "discovery/dnssd/impl/dns_data_graph_unittest.cc", 109*3f982cf4SFabien Sanglard "discovery/dnssd/impl/instance_key_unittest.cc", 110*3f982cf4SFabien Sanglard "discovery/dnssd/impl/publisher_impl_unittest.cc", 111*3f982cf4SFabien Sanglard "discovery/dnssd/impl/querier_impl_unittest.cc", 112*3f982cf4SFabien Sanglard "discovery/dnssd/impl/service_key_unittest.cc", 113*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_instance_endpoint_unittest.cc", 114*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_instance_unittest.cc", 115*3f982cf4SFabien Sanglard "discovery/dnssd/public/dns_sd_txt_record_unittest.cc", 116*3f982cf4SFabien Sanglard "discovery/mdns/mdns_probe_manager_unittest.cc", 117*3f982cf4SFabien Sanglard "discovery/mdns/mdns_probe_unittest.cc", 118*3f982cf4SFabien Sanglard "discovery/mdns/mdns_publisher_unittest.cc", 119*3f982cf4SFabien Sanglard "discovery/mdns/mdns_querier_unittest.cc", 120*3f982cf4SFabien Sanglard "discovery/mdns/mdns_random_unittest.cc", 121*3f982cf4SFabien Sanglard "discovery/mdns/mdns_reader_unittest.cc", 122*3f982cf4SFabien Sanglard "discovery/mdns/mdns_receiver_unittest.cc", 123*3f982cf4SFabien Sanglard "discovery/mdns/mdns_records_unittest.cc", 124*3f982cf4SFabien Sanglard "discovery/mdns/mdns_responder_unittest.cc", 125*3f982cf4SFabien Sanglard "discovery/mdns/mdns_sender_unittest.cc", 126*3f982cf4SFabien Sanglard "discovery/mdns/mdns_trackers_unittest.cc", 127*3f982cf4SFabien Sanglard "discovery/mdns/mdns_writer_unittest.cc", 128*3f982cf4SFabien Sanglard "discovery/public/dns_sd_service_watcher_unittest.cc", 129*3f982cf4SFabien Sanglard] 130*3f982cf4SFabien Sanglard 131*3f982cf4SFabien Sanglardosp_platform_base_srcs = [ 132*3f982cf4SFabien Sanglard "platform/base/error.cc", 133*3f982cf4SFabien Sanglard "platform/base/interface_info.cc", 134*3f982cf4SFabien Sanglard "platform/base/ip_address.cc", 135*3f982cf4SFabien Sanglard "platform/base/udp_packet.cc", 136*3f982cf4SFabien Sanglard] 137*3f982cf4SFabien Sanglard 138*3f982cf4SFabien Sanglardosp_platform_api_srcs = [ 139*3f982cf4SFabien Sanglard "platform/api/udp_socket.cc", 140*3f982cf4SFabien Sanglard] 141*3f982cf4SFabien Sanglard 142*3f982cf4SFabien Sanglardosp_util_srcs = [ 143*3f982cf4SFabien Sanglard "util/alarm.cc", 144*3f982cf4SFabien Sanglard "util/big_endian.cc", 145*3f982cf4SFabien Sanglard] 146*3f982cf4SFabien Sanglard 147*3f982cf4SFabien Sanglard//######################### 148*3f982cf4SFabien Sanglard 149*3f982cf4SFabien Sanglard// This library contains reference implementations for the platform api, and may not be 150*3f982cf4SFabien Sanglard// optimal for every embedder's needs. Only files added are for adb (the only embedder ATM). 151*3f982cf4SFabien Sanglardcc_library_host_static { 152*3f982cf4SFabien Sanglard name: "libopenscreen-platform-impl", 153*3f982cf4SFabien Sanglard defaults: ["openscreen_defaults"], 154*3f982cf4SFabien Sanglard stl: "libc++_static", 155*3f982cf4SFabien Sanglard 156*3f982cf4SFabien Sanglard srcs: [ 157*3f982cf4SFabien Sanglard "platform/impl/time.cc", 158*3f982cf4SFabien Sanglard "platform/impl/network_interface.cc", 159*3f982cf4SFabien Sanglard ], 160*3f982cf4SFabien Sanglard 161*3f982cf4SFabien Sanglard 162*3f982cf4SFabien Sanglard target: { 163*3f982cf4SFabien Sanglard linux: { 164*3f982cf4SFabien Sanglard srcs: [ 165*3f982cf4SFabien Sanglard "platform/impl/network_interface_linux.cc", 166*3f982cf4SFabien Sanglard ], 167*3f982cf4SFabien Sanglard }, 168*3f982cf4SFabien Sanglard darwin: { 169*3f982cf4SFabien Sanglard srcs: [ 170*3f982cf4SFabien Sanglard "platform/impl/network_interface_mac.cc", 171*3f982cf4SFabien Sanglard ], 172*3f982cf4SFabien Sanglard cflags: [ 173*3f982cf4SFabien Sanglard // Required, to use the new IPv6 Sockets options introduced by RFC 3542. 174*3f982cf4SFabien Sanglard "-D__APPLE_USE_RFC_3542", 175*3f982cf4SFabien Sanglard ], 176*3f982cf4SFabien Sanglard }, 177*3f982cf4SFabien Sanglard windows: { 178*3f982cf4SFabien Sanglard enabled: true, 179*3f982cf4SFabien Sanglard srcs: [ 180*3f982cf4SFabien Sanglard "platform/impl/network_interface_win.cc", 181*3f982cf4SFabien Sanglard ], 182*3f982cf4SFabien Sanglard }, 183*3f982cf4SFabien Sanglard }, 184*3f982cf4SFabien Sanglard 185*3f982cf4SFabien Sanglard export_include_dirs: ["."], 186*3f982cf4SFabien Sanglard} 187*3f982cf4SFabien Sanglard 188*3f982cf4SFabien Sanglard// TODO: enable the osp discovery unittests 189*3f982cf4SFabien Sanglardcc_library_host_static { 190*3f982cf4SFabien Sanglard name: "libopenscreen-discovery", 191*3f982cf4SFabien Sanglard defaults: ["openscreen_defaults"], 192*3f982cf4SFabien Sanglard stl: "libc++_static", 193*3f982cf4SFabien Sanglard 194*3f982cf4SFabien Sanglard srcs: osp_platform_api_srcs + 195*3f982cf4SFabien Sanglard osp_platform_base_srcs + 196*3f982cf4SFabien Sanglard osp_util_srcs + 197*3f982cf4SFabien Sanglard osp_discovery_srcs, 198*3f982cf4SFabien Sanglard 199*3f982cf4SFabien Sanglard whole_static_libs: [ 200*3f982cf4SFabien Sanglard "libopenscreen_absl", 201*3f982cf4SFabien Sanglard ], 202*3f982cf4SFabien Sanglard 203*3f982cf4SFabien Sanglard target: { 204*3f982cf4SFabien Sanglard windows: { 205*3f982cf4SFabien Sanglard enabled: true, 206*3f982cf4SFabien Sanglard }, 207*3f982cf4SFabien Sanglard } 208*3f982cf4SFabien Sanglard} 209