aboutsummaryrefslogtreecommitdiff
path: root/discovery
diff options
context:
space:
mode:
authormark a. foltz <mfoltz@chromium.org>2021-07-20 17:00:33 -0700
committerOpenscreen LUCI CQ <openscreen-scoped@luci-project-accounts.iam.gserviceaccount.com>2021-07-21 01:08:04 +0000
commitf9715c5369c7dca34da0cb7b416efe65ed52a474 (patch)
treed7c301f5976aaf2492c12471af206c94af787804 /discovery
parent0d8bd6b2f8ffde7cfc93a414e38bcc8e93f82699 (diff)
downloadopenscreen-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.gn68
-rw-r--r--discovery/DEPS2
-rw-r--r--discovery/dnssd/impl/DEPS10
-rw-r--r--discovery/dnssd/public/DEPS6
-rw-r--r--discovery/mdns/DEPS2
-rw-r--r--discovery/mdns/public/DEPS8
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',
+]
+