blob: 4ddfcec6598ea22c2c25bbc0c3d446c7a320d0b7 [file] [log] [blame]
btolsch762c4da2018-03-19 12:27:00 -07001# Copyright 2018 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
btolsch2f2e7fa2019-03-29 16:48:49 -07005import("//build_overrides/build.gni")
mark a. foltz115345f2019-05-02 14:17:16 -07006import("osp/build/config/services.gni")
btolsch2f2e7fa2019-03-29 16:48:49 -07007
mark a. foltzc28ca402018-07-19 16:11:32 -07008# All compilable non-test targets in the repository (both executables and
9# source_sets).
btolsch9d6900c2018-05-30 18:22:53 -070010group("gn_all") {
mark a. foltzc28ca402018-07-19 16:11:32 -070011 deps = [
mark a. foltzeeef1da2019-11-06 13:40:18 -080012 "cast/common:certificate",
13 "cast/common:channel",
btolsch9931e7a2020-02-26 15:50:20 -080014 "cast/common:public",
btolsch3fb84812019-12-17 18:23:10 -080015 "cast/receiver:channel",
mark a. foltzeeef1da2019-11-06 13:40:18 -080016 "cast/sender:channel",
Yuri Wiitala7d2583a2019-11-22 15:04:27 -080017 "cast/streaming:receiver",
18 "cast/streaming:sender",
Ryan Keanebd5d0f02019-10-21 16:46:56 -070019 "discovery:dnssd",
mark a. foltzc2291e52019-11-05 15:59:33 -080020 "discovery:mdns",
Ryan Keane697863a2019-12-26 10:31:20 -080021 "discovery:public",
btolsch2f2e7fa2019-03-29 16:48:49 -070022 "platform",
btolsch2f2e7fa2019-03-29 16:48:49 -070023 "third_party/abseil",
mark a. foltz3fe46172019-09-18 05:50:30 -070024 "third_party/boringssl",
25 "third_party/jsoncpp",
btolsche060aaf2020-02-20 14:55:18 -080026 "third_party/mozilla",
btolsch2f2e7fa2019-03-29 16:48:49 -070027 "third_party/tinycbor",
btolsch2666dd92020-01-10 15:07:49 -080028 "tools/cddl($host_toolchain)",
Jordan Baylesa26582d2019-07-10 14:44:58 -070029 "util",
mark a. foltzc28ca402018-07-19 16:11:32 -070030 ]
btolsch2f2e7fa2019-03-29 16:48:49 -070031
Jordan Bayles64dcdb62020-09-25 15:43:30 -070032 # Mac OS X 10.15 is incompatible with the current version of QUIC.
33 if (!is_mac) {
btolsch2f2e7fa2019-03-29 16:48:49 -070034 deps += [
Jordan Bayles64dcdb62020-09-25 15:43:30 -070035 "osp",
36 "osp/msgs",
btolsch2f2e7fa2019-03-29 16:48:49 -070037 ]
mark a. foltz3fe46172019-09-18 05:50:30 -070038
Jordan Bayles64dcdb62020-09-25 15:43:30 -070039 if (use_chromium_quic) {
40 deps += [
41 "third_party/chromium_quic",
42 "third_party/chromium_quic:quic_demo_server",
43 "third_party/chromium_quic:quic_streaming_playback_controller",
44 ]
45 }
46
mark a. foltzd29ea542021-07-15 12:25:07 -070047 if (use_chromium_quic) {
Jordan Bayles64dcdb62020-09-25 15:43:30 -070048 deps += [ "osp:osp_demo" ]
49 }
mark a. foltz3fe46172019-09-18 05:50:30 -070050 }
Jordan Bayles21b5adc2019-10-25 12:01:20 -070051
52 if (!build_with_chromium) {
53 deps += [
Jordan Baylesee059e92020-09-21 16:38:51 -070054 "cast/standalone_receiver:cast_receiver",
55 "cast/standalone_sender:cast_sender",
btolsch2666dd92020-01-10 15:07:49 -080056 "third_party/protobuf:protoc($host_toolchain)",
Jordan Bayles21b5adc2019-10-25 12:01:20 -070057 "third_party/zlib",
58 ]
btolsch43bb3ea2021-06-28 15:56:45 -070059 } else {
btolsch12857d42021-06-28 20:06:55 -070060 if (!is_mac) {
61 deps += [ "cast/cast_core/api" ]
62 }
Jordan Bayles21b5adc2019-10-25 12:01:20 -070063 }
mark a. foltzc28ca402018-07-19 16:11:32 -070064}
btolschb4893e62018-05-28 22:03:07 -070065
Jordan Bayles21b5adc2019-10-25 12:01:20 -070066source_set("openscreen_unittests_all") {
mark a. foltzc28ca402018-07-19 16:11:32 -070067 testonly = true
Jordan Bayles21b5adc2019-10-25 12:01:20 -070068 public_deps = [
mark a. foltzeeef1da2019-11-06 13:40:18 -080069 "cast/common:unittests",
btolsch3fb84812019-12-17 18:23:10 -080070 "cast/receiver:unittests",
mark a. foltzeeef1da2019-11-06 13:40:18 -080071 "cast/sender:unittests",
Yuri Wiitala7d2583a2019-11-22 15:04:27 -080072 "cast/streaming:unittests",
btolsch3fb84812019-12-17 18:23:10 -080073 "cast/test:unittests",
mark a. foltz3fe46172019-09-18 05:50:30 -070074 "platform:unittests",
btolsch2f2e7fa2019-03-29 16:48:49 -070075 "third_party/abseil",
mark a. foltz3fe46172019-09-18 05:50:30 -070076 "util:unittests",
btolsch762c4da2018-03-19 12:27:00 -070077 ]
Jordan Bayles21b5adc2019-10-25 12:01:20 -070078
Ryan Keane3c396112020-04-28 14:24:43 -070079 if (!build_with_chromium && is_posix) {
Jordan Bayles53a6a132020-09-26 15:36:18 -070080 public_deps += [
81 "cast/test:make_crl_tests($host_toolchain)",
82
83 # TODO(crbug.com/1132604): Discovery unittests fail in Chrome.
84 "discovery:unittests",
85 ]
Ryan Keane3c396112020-04-28 14:24:43 -070086 }
87
Jordan Bayles64dcdb62020-09-25 15:43:30 -070088 if (!is_mac) {
Jordan Bayles21b5adc2019-10-25 12:01:20 -070089 public_deps += [
Jordan Bayles64dcdb62020-09-25 15:43:30 -070090 "osp:unittests",
91 "osp/msgs:unittests",
Jordan Bayles21b5adc2019-10-25 12:01:20 -070092 ]
93 }
94}
95
96if (!build_with_chromium) {
97 executable("openscreen_unittests") {
98 testonly = true
Jordan Baylesf318b722020-06-23 15:32:13 -070099 deps = [
100 ":openscreen_unittests_all",
101 "test:test_main",
102 ]
Jordan Bayles21b5adc2019-10-25 12:01:20 -0700103 }
btolsch762c4da2018-03-19 12:27:00 -0700104}
Ryan Keane809e0df2020-02-10 12:33:44 -0800105
106if (!build_with_chromium && is_posix) {
Jordan Bayles6b138fb2020-02-11 15:15:38 -0800107 source_set("e2e_tests_all") {
108 testonly = true
109 public_deps = [
110 "cast/common:discovery_e2e_test",
btolsch1aa88262020-03-16 18:06:20 -0700111 "cast/test:e2e_tests",
Ryan Keane3c396112020-04-28 14:24:43 -0700112 "cast/test:make_crl_tests($host_toolchain)",
Jordan Bayles6b138fb2020-02-11 15:15:38 -0800113 ]
114 }
115
Ryan Keane809e0df2020-02-10 12:33:44 -0800116 executable("e2e_tests") {
117 testonly = true
Jordan Baylesf318b722020-06-23 15:32:13 -0700118 deps = [
119 ":e2e_tests_all",
120 "test:test_main",
121 ]
Ryan Keane809e0df2020-02-10 12:33:44 -0800122 }
123}
mark a. foltz7ad58ff2021-07-26 21:04:45 -0700124
125if (!build_with_chromium) {
126 source_set("fuzzer_tests_all") {
127 testonly = true
128 deps = [
129 "//cast/common:message_framer_fuzzer",
130 "//cast/streaming:compound_rtcp_parser_fuzzer",
131 "//cast/streaming:rtp_packet_parser_fuzzer",
132 "//cast/streaming:sender_report_parser_fuzzer",
133 "//discovery:mdns_fuzzer",
134 ]
135 }
136}