diff options
author | mark a. foltz <mfoltz@chromium.org> | 2021-07-20 17:00:33 -0700 |
---|---|---|
committer | Openscreen LUCI CQ <openscreen-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2021-07-21 01:08:04 +0000 |
commit | f9715c5369c7dca34da0cb7b416efe65ed52a474 (patch) | |
tree | d7c301f5976aaf2492c12471af206c94af787804 /discovery | |
parent | 0d8bd6b2f8ffde7cfc93a414e38bcc8e93f82699 (diff) | |
download | openscreen-f9715c5369c7dca34da0cb7b416efe65ed52a474.tar.gz |
[Open Screen] Create a //discovery:public target
This creates a :public GN target for other Open Screen modules (or
embedders) to depend on.
It also:
- Consolidates the DNS-SD public APIs.
- Adds DEPS rules to enforce use of public headers.
- Adds DEPS rules to enforce layering inside of //discovery (with some
exceptions).
- Adjusts deps for the //discovery targets.
Bug: b/179705382
Change-Id: Ice48b8d8937d3c68351d693b348a2928f14dfb4b
Reviewed-on: https://chromium-review.googlesource.com/c/openscreen/+/3032947
Commit-Queue: mark a. foltz <mfoltz@chromium.org>
Reviewed-by: Ryan Keane <rwkeane@google.com>
Diffstat (limited to 'discovery')
-rw-r--r-- | discovery/BUILD.gn | 68 | ||||
-rw-r--r-- | discovery/DEPS | 2 | ||||
-rw-r--r-- | discovery/dnssd/impl/DEPS | 10 | ||||
-rw-r--r-- | discovery/dnssd/public/DEPS | 6 | ||||
-rw-r--r-- | discovery/mdns/DEPS | 2 | ||||
-rw-r--r-- | discovery/mdns/public/DEPS | 8 |
6 files changed, 53 insertions, 43 deletions
diff --git a/discovery/BUILD.gn b/discovery/BUILD.gn index 11598c8f..0a747258 100644 --- a/discovery/BUILD.gn +++ b/discovery/BUILD.gn @@ -5,20 +5,32 @@ import("//build_overrides/build.gni") import("../testing/libfuzzer/fuzzer_test.gni") -source_set("common") { +source_set("public") { sources = [ "common/config.h", "common/reporting_client.h", + "dnssd/public/dns_sd_instance.cc", + "dnssd/public/dns_sd_instance.h", + "dnssd/public/dns_sd_instance_endpoint.cc", + "dnssd/public/dns_sd_instance_endpoint.h", + "dnssd/public/dns_sd_publisher.h", + "dnssd/public/dns_sd_querier.h", + "dnssd/public/dns_sd_service.h", + "dnssd/public/dns_sd_txt_record.cc", + "dnssd/public/dns_sd_txt_record.h", + "mdns/public/mdns_constants.h", + "mdns/public/mdns_service.cc", + "mdns/public/mdns_service.h", + "public/dns_sd_service_factory.h", + "public/dns_sd_service_publisher.h", + "public/dns_sd_service_watcher.h", ] - + public_deps = [ "../platform" ] deps = [ "../util" ] - - public_deps = [ - "../platform", - "../third_party/abseil", - ] } +# TODO(https://issuetracker.google.com/issues/194234872): +# Move implementation files to impl/ source_set("mdns") { sources = [ "mdns/mdns_domain_confirmed_provider.h", @@ -47,21 +59,16 @@ source_set("mdns") { "mdns/mdns_trackers.h", "mdns/mdns_writer.cc", "mdns/mdns_writer.h", - "mdns/public/mdns_constants.h", - "mdns/public/mdns_service.cc", - "mdns/public/mdns_service.h", ] - deps = [ "../util" ] - - public_deps = [ - ":common", + deps = [ + ":public", "../platform", "../third_party/abseil", + "../util", ] } -# TODO(issuetracker.google.com/179705382): Separate out a public target. source_set("dnssd") { sources = [ "dnssd/impl/conversion_layer.cc", @@ -82,34 +89,12 @@ source_set("dnssd") { "dnssd/impl/service_instance.h", "dnssd/impl/service_key.cc", "dnssd/impl/service_key.h", - "dnssd/public/dns_sd_instance.cc", - "dnssd/public/dns_sd_instance.h", - "dnssd/public/dns_sd_instance_endpoint.cc", - "dnssd/public/dns_sd_instance_endpoint.h", - "dnssd/public/dns_sd_publisher.h", - "dnssd/public/dns_sd_querier.h", - "dnssd/public/dns_sd_service.h", - "dnssd/public/dns_sd_txt_record.cc", - "dnssd/public/dns_sd_txt_record.h", ] - public_deps = [ - ":common", + deps = [ ":mdns", - "../util", - ] -} - -source_set("public") { - sources = [ - "public/dns_sd_service_factory.h", - "public/dns_sd_service_publisher.h", - "public/dns_sd_service_watcher.h", - ] - - public_deps = [ - ":common", - ":dnssd", + ":public", + "../third_party/abseil", "../util", ] } @@ -133,8 +118,9 @@ source_set("testing") { sources += [ "mdns/testing/hash_test_util_abseil.h" ] } - public_deps = [ + deps = [ ":mdns", + ":public", "../third_party/abseil", "../third_party/googletest:gmock", "../third_party/googletest:gtest", diff --git a/discovery/DEPS b/discovery/DEPS index de7afcec..4d758dcd 100644 --- a/discovery/DEPS +++ b/discovery/DEPS @@ -4,6 +4,6 @@ include_rules = [ # Intra-discovery dependencies must be explicit. '-discovery', - # All discovery code can use discovery/common + # All discovery code can use discovery/common. '+discovery/common', ] diff --git a/discovery/dnssd/impl/DEPS b/discovery/dnssd/impl/DEPS index 243d363d..57d73c16 100644 --- a/discovery/dnssd/impl/DEPS +++ b/discovery/dnssd/impl/DEPS @@ -2,5 +2,13 @@ include_rules = [ '+discovery/dnssd/public', - '+discovery/mdns', + '+discovery/mdns/public', + + # TODO(https://issuetracker.google.com/issues/194234872): + # Move these to discovery/mdns/public + '+discovery/mdns/mdns_domain_confirmed_provider.h', + '+discovery/mdns/mdns_record_changed_callback.h', + '+discovery/mdns/mdns_records.h', + + '+discovery/mdns/testing/mdns_test_util.h', ] diff --git a/discovery/dnssd/public/DEPS b/discovery/dnssd/public/DEPS new file mode 100644 index 00000000..e8ae0cbe --- /dev/null +++ b/discovery/dnssd/public/DEPS @@ -0,0 +1,6 @@ +# -*- Mode: Python; -*- + +include_rules = [ + # Layering rule. + '-discovery/dnssd/impl', +] diff --git a/discovery/mdns/DEPS b/discovery/mdns/DEPS index 309d03f4..c0348a87 100644 --- a/discovery/mdns/DEPS +++ b/discovery/mdns/DEPS @@ -2,4 +2,6 @@ include_rules = [ '+discovery/mdns/public', + # DNS-SD is layered on top of mDNS. + '-discovery/dnssd', ] diff --git a/discovery/mdns/public/DEPS b/discovery/mdns/public/DEPS new file mode 100644 index 00000000..5b65c0e4 --- /dev/null +++ b/discovery/mdns/public/DEPS @@ -0,0 +1,8 @@ +# -*- Mode: Python; -*- +include_rules = [ + # Layering rule. + '-discovery/mdns', + # Except ourselves. + '+discovery/mdns/public', +] + |