| package { |
| default_applicable_licenses: ["external_openscreen_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. |
| // |
| // large-scale-change filtered out the below license kinds as false-positives: |
| // SPDX-license-identifier-GPL-2.0 |
| // SPDX-license-identifier-LGPL-2.1 |
| // SPDX-license-identifier-MPL |
| // See: http://go/android-license-faq |
| license { |
| name: "external_openscreen_license", |
| visibility: [":__subpackages__"], |
| license_kinds: [ |
| "SPDX-license-identifier-Apache-2.0", |
| "SPDX-license-identifier-BSD", |
| "SPDX-license-identifier-ISC", |
| "SPDX-license-identifier-MIT", |
| "SPDX-license-identifier-NCSA", |
| "SPDX-license-identifier-OpenSSL", |
| "SPDX-license-identifier-Zlib", |
| "legacy_unencumbered", |
| ], |
| license_text: [ |
| "LICENSE", |
| ], |
| } |
| |
| cc_defaults { |
| name: "openscreen_defaults", |
| |
| cflags: [ |
| "-O2", |
| "-g", |
| "-fno-strict-aliasing", |
| "-W", |
| "-Wall", |
| "-Wextra", |
| "-Wno-address-of-packed-member", |
| "-Wno-array-bounds", |
| "-Wno-pointer-sign", |
| "-Wno-unused", |
| "-Wno-unused-but-set-variable", |
| "-Wno-unused-parameter", |
| "-Wno-missing-field-initializers", |
| "-Werror=implicit-function-declaration", |
| "-D_DEBUG", |
| "-DOPENSCREEN_TEST_DATA_DIR=\"$ANDROID_BUILD_TOP/external/openscreen/test/data/\"", |
| ], |
| cppflags: [ |
| "-fno-exceptions", |
| "-fno-unwind-tables", |
| "-fno-asynchronous-unwind-tables", |
| ], |
| header_libs: [ |
| "libopenscreen_absl_headers", |
| ], |
| |
| // cpp_std: "c++17", |
| } |
| |
| osp_discovery_srcs = [ |
| "discovery/dnssd/impl/conversion_layer.cc", |
| "discovery/dnssd/impl/dns_data_graph.cc", |
| "discovery/dnssd/impl/instance_key.cc", |
| "discovery/dnssd/impl/network_interface_config.cc", |
| "discovery/dnssd/impl/publisher_impl.cc", |
| "discovery/dnssd/impl/querier_impl.cc", |
| "discovery/dnssd/impl/service_dispatcher.cc", |
| "discovery/dnssd/impl/service_instance.cc", |
| "discovery/dnssd/impl/service_key.cc", |
| "discovery/dnssd/public/dns_sd_instance.cc", |
| "discovery/dnssd/public/dns_sd_instance_endpoint.cc", |
| "discovery/dnssd/public/dns_sd_txt_record.cc", |
| "discovery/mdns/mdns_probe.cc", |
| "discovery/mdns/mdns_probe_manager.cc", |
| "discovery/mdns/mdns_publisher.cc", |
| "discovery/mdns/mdns_querier.cc", |
| "discovery/mdns/mdns_reader.cc", |
| "discovery/mdns/mdns_receiver.cc", |
| "discovery/mdns/mdns_records.cc", |
| "discovery/mdns/mdns_responder.cc", |
| "discovery/mdns/mdns_sender.cc", |
| "discovery/mdns/mdns_service_impl.cc", |
| "discovery/mdns/mdns_trackers.cc", |
| "discovery/mdns/mdns_writer.cc", |
| "discovery/mdns/public/mdns_service.cc", |
| ] |
| |
| osp_discovery_testing_srcs = [ |
| "discovery/dnssd/testing/fake_dns_record_factory.cc", |
| "discovery/mdns/testing/mdns_test_util.cc", |
| ] |
| |
| osp_discovery_unittest_srcs = [ |
| "discovery/dnssd/impl/conversion_layer_unittest.cc", |
| "discovery/dnssd/impl/dns_data_graph_unittest.cc", |
| "discovery/dnssd/impl/instance_key_unittest.cc", |
| "discovery/dnssd/impl/publisher_impl_unittest.cc", |
| "discovery/dnssd/impl/querier_impl_unittest.cc", |
| "discovery/dnssd/impl/service_key_unittest.cc", |
| "discovery/dnssd/public/dns_sd_instance_endpoint_unittest.cc", |
| "discovery/dnssd/public/dns_sd_instance_unittest.cc", |
| "discovery/dnssd/public/dns_sd_txt_record_unittest.cc", |
| "discovery/mdns/mdns_probe_manager_unittest.cc", |
| "discovery/mdns/mdns_probe_unittest.cc", |
| "discovery/mdns/mdns_publisher_unittest.cc", |
| "discovery/mdns/mdns_querier_unittest.cc", |
| "discovery/mdns/mdns_random_unittest.cc", |
| "discovery/mdns/mdns_reader_unittest.cc", |
| "discovery/mdns/mdns_receiver_unittest.cc", |
| "discovery/mdns/mdns_records_unittest.cc", |
| "discovery/mdns/mdns_responder_unittest.cc", |
| "discovery/mdns/mdns_sender_unittest.cc", |
| "discovery/mdns/mdns_trackers_unittest.cc", |
| "discovery/mdns/mdns_writer_unittest.cc", |
| "discovery/public/dns_sd_service_watcher_unittest.cc", |
| ] |
| |
| osp_platform_base_srcs = [ |
| "platform/base/error.cc", |
| "platform/base/interface_info.cc", |
| "platform/base/ip_address.cc", |
| "platform/base/udp_packet.cc", |
| ] |
| |
| osp_platform_api_srcs = [ |
| "platform/api/udp_socket.cc", |
| ] |
| |
| osp_util_srcs = [ |
| "util/alarm.cc", |
| "util/big_endian.cc", |
| ] |
| |
| //######################### |
| |
| // This library contains reference implementations for the platform api, and may not be |
| // optimal for every embedder's needs. Only files added are for adb (the only embedder ATM). |
| cc_library_host_static { |
| name: "libopenscreen-platform-impl", |
| defaults: ["openscreen_defaults"], |
| stl: "libc++_static", |
| |
| srcs: [ |
| "platform/impl/time.cc", |
| "platform/impl/network_interface.cc", |
| ], |
| |
| |
| target: { |
| linux: { |
| srcs: [ |
| "platform/impl/network_interface_linux.cc", |
| ], |
| }, |
| darwin: { |
| srcs: [ |
| "platform/impl/network_interface_mac.cc", |
| ], |
| cflags: [ |
| // Required, to use the new IPv6 Sockets options introduced by RFC 3542. |
| "-D__APPLE_USE_RFC_3542", |
| ], |
| }, |
| windows: { |
| enabled: true, |
| srcs: [ |
| "platform/impl/network_interface_win.cc", |
| ], |
| }, |
| }, |
| |
| export_include_dirs: ["."], |
| } |
| |
| // TODO: enable the osp discovery unittests |
| cc_library_host_static { |
| name: "libopenscreen-discovery", |
| defaults: ["openscreen_defaults"], |
| stl: "libc++_static", |
| |
| srcs: osp_platform_api_srcs + |
| osp_platform_base_srcs + |
| osp_util_srcs + |
| osp_discovery_srcs, |
| |
| whole_static_libs: [ |
| "libopenscreen_absl", |
| ], |
| |
| target: { |
| windows: { |
| enabled: true, |
| }, |
| } |
| } |