xref: /aosp_15_r20/external/openscreen/BUILD.gn (revision 3f982cf4871df8771c9d4abe6e9a6f8d829b2736)
1*3f982cf4SFabien Sanglard# Copyright 2018 The Chromium Authors. All rights reserved.
2*3f982cf4SFabien Sanglard# Use of this source code is governed by a BSD-style license that can be
3*3f982cf4SFabien Sanglard# found in the LICENSE file.
4*3f982cf4SFabien Sanglard
5*3f982cf4SFabien Sanglardimport("//build_overrides/build.gni")
6*3f982cf4SFabien Sanglardimport("osp/build/config/services.gni")
7*3f982cf4SFabien Sanglard
8*3f982cf4SFabien Sanglard# All compilable non-test targets in the repository (both executables and
9*3f982cf4SFabien Sanglard# source_sets).
10*3f982cf4SFabien Sanglardgroup("gn_all") {
11*3f982cf4SFabien Sanglard  deps = [
12*3f982cf4SFabien Sanglard    "cast/common:certificate",
13*3f982cf4SFabien Sanglard    "cast/common:channel",
14*3f982cf4SFabien Sanglard    "cast/common:public",
15*3f982cf4SFabien Sanglard    "cast/receiver:channel",
16*3f982cf4SFabien Sanglard    "cast/sender:channel",
17*3f982cf4SFabien Sanglard    "cast/streaming:receiver",
18*3f982cf4SFabien Sanglard    "cast/streaming:sender",
19*3f982cf4SFabien Sanglard    "discovery:dnssd",
20*3f982cf4SFabien Sanglard    "discovery:mdns",
21*3f982cf4SFabien Sanglard    "discovery:public",
22*3f982cf4SFabien Sanglard    "platform",
23*3f982cf4SFabien Sanglard    "third_party/abseil",
24*3f982cf4SFabien Sanglard    "third_party/boringssl",
25*3f982cf4SFabien Sanglard    "third_party/jsoncpp",
26*3f982cf4SFabien Sanglard    "third_party/mozilla",
27*3f982cf4SFabien Sanglard    "third_party/tinycbor",
28*3f982cf4SFabien Sanglard    "tools/cddl($host_toolchain)",
29*3f982cf4SFabien Sanglard    "util",
30*3f982cf4SFabien Sanglard  ]
31*3f982cf4SFabien Sanglard
32*3f982cf4SFabien Sanglard  # Mac OS X 10.15 is incompatible with the current version of QUIC.
33*3f982cf4SFabien Sanglard  if (!is_mac) {
34*3f982cf4SFabien Sanglard    deps += [
35*3f982cf4SFabien Sanglard      "osp",
36*3f982cf4SFabien Sanglard      "osp/msgs",
37*3f982cf4SFabien Sanglard    ]
38*3f982cf4SFabien Sanglard
39*3f982cf4SFabien Sanglard    if (use_chromium_quic) {
40*3f982cf4SFabien Sanglard      deps += [
41*3f982cf4SFabien Sanglard        "third_party/chromium_quic",
42*3f982cf4SFabien Sanglard        "third_party/chromium_quic:quic_demo_server",
43*3f982cf4SFabien Sanglard        "third_party/chromium_quic:quic_streaming_playback_controller",
44*3f982cf4SFabien Sanglard      ]
45*3f982cf4SFabien Sanglard    }
46*3f982cf4SFabien Sanglard
47*3f982cf4SFabien Sanglard    if (use_chromium_quic) {
48*3f982cf4SFabien Sanglard      deps += [ "osp:osp_demo" ]
49*3f982cf4SFabien Sanglard    }
50*3f982cf4SFabien Sanglard  }
51*3f982cf4SFabien Sanglard
52*3f982cf4SFabien Sanglard  if (!build_with_chromium) {
53*3f982cf4SFabien Sanglard    deps += [
54*3f982cf4SFabien Sanglard      "cast/standalone_receiver:cast_receiver",
55*3f982cf4SFabien Sanglard      "cast/standalone_sender:cast_sender",
56*3f982cf4SFabien Sanglard      "third_party/protobuf:protoc($host_toolchain)",
57*3f982cf4SFabien Sanglard      "third_party/zlib",
58*3f982cf4SFabien Sanglard    ]
59*3f982cf4SFabien Sanglard  } else {
60*3f982cf4SFabien Sanglard    if (!is_mac) {
61*3f982cf4SFabien Sanglard      deps += [ "cast/cast_core/api" ]
62*3f982cf4SFabien Sanglard    }
63*3f982cf4SFabien Sanglard  }
64*3f982cf4SFabien Sanglard}
65*3f982cf4SFabien Sanglard
66*3f982cf4SFabien Sanglardsource_set("openscreen_unittests_all") {
67*3f982cf4SFabien Sanglard  testonly = true
68*3f982cf4SFabien Sanglard  public_deps = [
69*3f982cf4SFabien Sanglard    "cast/common:unittests",
70*3f982cf4SFabien Sanglard    "cast/receiver:unittests",
71*3f982cf4SFabien Sanglard    "cast/sender:unittests",
72*3f982cf4SFabien Sanglard    "cast/streaming:unittests",
73*3f982cf4SFabien Sanglard    "cast/test:unittests",
74*3f982cf4SFabien Sanglard    "platform:unittests",
75*3f982cf4SFabien Sanglard    "third_party/abseil",
76*3f982cf4SFabien Sanglard    "util:unittests",
77*3f982cf4SFabien Sanglard  ]
78*3f982cf4SFabien Sanglard
79*3f982cf4SFabien Sanglard  if (!build_with_chromium && is_posix) {
80*3f982cf4SFabien Sanglard    public_deps += [
81*3f982cf4SFabien Sanglard      "cast/test:make_crl_tests($host_toolchain)",
82*3f982cf4SFabien Sanglard
83*3f982cf4SFabien Sanglard      # TODO(crbug.com/1132604): Discovery unittests fail in Chrome.
84*3f982cf4SFabien Sanglard      "discovery:unittests",
85*3f982cf4SFabien Sanglard    ]
86*3f982cf4SFabien Sanglard  }
87*3f982cf4SFabien Sanglard
88*3f982cf4SFabien Sanglard  if (!is_mac) {
89*3f982cf4SFabien Sanglard    public_deps += [
90*3f982cf4SFabien Sanglard      "osp:unittests",
91*3f982cf4SFabien Sanglard      "osp/msgs:unittests",
92*3f982cf4SFabien Sanglard    ]
93*3f982cf4SFabien Sanglard  }
94*3f982cf4SFabien Sanglard}
95*3f982cf4SFabien Sanglard
96*3f982cf4SFabien Sanglardif (!build_with_chromium) {
97*3f982cf4SFabien Sanglard  executable("openscreen_unittests") {
98*3f982cf4SFabien Sanglard    testonly = true
99*3f982cf4SFabien Sanglard    deps = [
100*3f982cf4SFabien Sanglard      ":openscreen_unittests_all",
101*3f982cf4SFabien Sanglard      "test:test_main",
102*3f982cf4SFabien Sanglard    ]
103*3f982cf4SFabien Sanglard  }
104*3f982cf4SFabien Sanglard}
105*3f982cf4SFabien Sanglard
106*3f982cf4SFabien Sanglardif (!build_with_chromium && is_posix) {
107*3f982cf4SFabien Sanglard  source_set("e2e_tests_all") {
108*3f982cf4SFabien Sanglard    testonly = true
109*3f982cf4SFabien Sanglard    public_deps = [
110*3f982cf4SFabien Sanglard      "cast/common:discovery_e2e_test",
111*3f982cf4SFabien Sanglard      "cast/test:e2e_tests",
112*3f982cf4SFabien Sanglard      "cast/test:make_crl_tests($host_toolchain)",
113*3f982cf4SFabien Sanglard    ]
114*3f982cf4SFabien Sanglard  }
115*3f982cf4SFabien Sanglard
116*3f982cf4SFabien Sanglard  executable("e2e_tests") {
117*3f982cf4SFabien Sanglard    testonly = true
118*3f982cf4SFabien Sanglard    deps = [
119*3f982cf4SFabien Sanglard      ":e2e_tests_all",
120*3f982cf4SFabien Sanglard      "test:test_main",
121*3f982cf4SFabien Sanglard    ]
122*3f982cf4SFabien Sanglard  }
123*3f982cf4SFabien Sanglard}
124*3f982cf4SFabien Sanglard
125*3f982cf4SFabien Sanglardif (!build_with_chromium) {
126*3f982cf4SFabien Sanglard  source_set("fuzzer_tests_all") {
127*3f982cf4SFabien Sanglard    testonly = true
128*3f982cf4SFabien Sanglard    deps = [
129*3f982cf4SFabien Sanglard      "//cast/common:message_framer_fuzzer",
130*3f982cf4SFabien Sanglard      "//cast/streaming:compound_rtcp_parser_fuzzer",
131*3f982cf4SFabien Sanglard      "//cast/streaming:rtp_packet_parser_fuzzer",
132*3f982cf4SFabien Sanglard      "//cast/streaming:sender_report_parser_fuzzer",
133*3f982cf4SFabien Sanglard      "//discovery:mdns_fuzzer",
134*3f982cf4SFabien Sanglard    ]
135*3f982cf4SFabien Sanglard  }
136*3f982cf4SFabien Sanglard}
137