Updating XTBs based on .GRDs from branch master
[chromium-blink-merge.git] / media / cast / cast.gyp
blob71ba2f0446782d49cdaa532a1f397b055d9b907a
1 # Copyright 2013 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.
6   'variables': {
7     'include_tests%': 1,
8     'chromium_code': 1,
9   },
10   'conditions': [
11     ['include_tests==1', {
12       'includes': [ 'cast_testing.gypi' ]
13     }],
14   ],
15   'targets': [
16     {
17       # GN version: //media/cast:common
18       'target_name': 'cast_base',
19       'type': 'static_library',
20       'include_dirs': [
21         '<(DEPTH)/',
22       ],
23       'dependencies': [
24         'cast_logging_proto',
25         '<(DEPTH)/base/base.gyp:base',
26         '<(DEPTH)/crypto/crypto.gyp:crypto',
27         '<(DEPTH)/net/net.gyp:net',
28       ],
29       'export_dependent_settings': [
30         'cast_logging_proto',
31       ],
32       'sources': [
33         'cast_config.cc',
34         'cast_config.h',
35         'cast_defines.h',
36         'cast_environment.cc',
37         'cast_environment.h',
38         'common/clock_drift_smoother.cc',
39         'common/clock_drift_smoother.h',
40         'common/transport_encryption_handler.cc',
41         'common/transport_encryption_handler.h',
42         'logging/encoding_event_subscriber.cc',
43         'logging/encoding_event_subscriber.h',
44         'logging/log_deserializer.cc',
45         'logging/log_deserializer.h',
46         'logging/log_serializer.cc',
47         'logging/log_serializer.h',
48         'logging/logging_defines.cc',
49         'logging/logging_defines.h',
50         'logging/logging_impl.cc',
51         'logging/logging_impl.h',
52         'logging/logging_raw.cc',
53         'logging/logging_raw.h',
54         'logging/raw_event_subscriber.h',
55         'logging/raw_event_subscriber_bundle.cc',
56         'logging/raw_event_subscriber_bundle.h',
57         'logging/receiver_time_offset_estimator.h',
58         'logging/receiver_time_offset_estimator_impl.cc',
59         'logging/receiver_time_offset_estimator_impl.h',
60         'logging/simple_event_subscriber.cc',
61         'logging/simple_event_subscriber.h',
62         'logging/stats_event_subscriber.cc',
63         'logging/stats_event_subscriber.h',
64       ], # source
65     },
66     {
67       # GN version: //media/cast/logging/proto
68       'target_name': 'cast_logging_proto',
69       'type': 'static_library',
70       'include_dirs': [
71         '<(DEPTH)/',
72       ],
73       'sources': [
74         'logging/proto/proto_utils.cc',
75         'logging/proto/raw_events.proto',
76       ],
77       'variables': {
78         'proto_in_dir': 'logging/proto',
79         'proto_out_dir': 'media/cast/logging/proto',
80       },
81       'includes': ['../../build/protoc.gypi'],
82     },
83     {
84       # GN version: //media/cast:receiver
85       'target_name': 'cast_receiver',
86       'type': 'static_library',
87       'include_dirs': [
88         '<(DEPTH)/',
89       ],
90       'dependencies': [
91         'cast_base',
92         'cast_net',
93         '<(DEPTH)/base/base.gyp:base',
94         '<(DEPTH)/media/media.gyp:media',
95         '<(DEPTH)/media/media.gyp:shared_memory_support',
96         '<(DEPTH)/third_party/opus/opus.gyp:opus',
97         '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
98         '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
99       ],
100       'sources': [
101         'cast_receiver.h',
102         'net/rtp/cast_message_builder.cc',
103         'net/rtp/cast_message_builder.h',
104         'net/rtp/frame_buffer.cc',
105         'net/rtp/frame_buffer.h',
106         'net/rtp/framer.cc',
107         'net/rtp/framer.h',
108         'net/rtp/receiver_stats.cc',
109         'net/rtp/receiver_stats.h',
110         'net/rtp/rtp_receiver_defines.cc',
111         'net/rtp/rtp_receiver_defines.h',
112         'receiver/audio_decoder.cc',
113         'receiver/audio_decoder.h',
114         'receiver/cast_receiver_impl.cc',
115         'receiver/cast_receiver_impl.h',
116         'receiver/frame_receiver.cc',
117         'receiver/frame_receiver.h',
118         'receiver/video_decoder.cc',
119         'receiver/video_decoder.h',
120       ], # source
121       'conditions': [
122         # use a restricted subset of media and no software codecs on iOS
123         ['OS=="ios"', {
124           'dependencies': [ '<(DEPTH)/media/media.gyp:media_for_cast_ios' ],
125           'dependencies!': [
126             '<(DEPTH)/media/media.gyp:media',
127             '<(DEPTH)/third_party/opus/opus.gyp:opus',
128             '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
129           ],
130         }], # OS=="ios"
131       ], # conditions
132     },
133     {
134       # GN version: //media/cast:sender
135       'target_name': 'cast_sender',
136       'type': 'static_library',
137       'include_dirs': [
138         '<(DEPTH)/',
139       ],
140       'dependencies': [
141         'cast_base',
142         'cast_net',
143         '<(DEPTH)/media/media.gyp:media',
144         '<(DEPTH)/media/media.gyp:shared_memory_support',
145         '<(DEPTH)/third_party/opus/opus.gyp:opus',
146         '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
147         '<(DEPTH)/ui/gfx/gfx.gyp:gfx_geometry',
148       ], # dependencies
149       'sources': [
150         'cast_sender.h',
151         'cast_sender_impl.cc',
152         'cast_sender_impl.h',
153         'sender/audio_encoder.cc',
154         'sender/audio_encoder.h',
155         'sender/audio_sender.cc',
156         'sender/audio_sender.h',
157         'sender/congestion_control.cc',
158         'sender/congestion_control.h',
159         'sender/external_video_encoder.cc',
160         'sender/external_video_encoder.h',
161         'sender/fake_software_video_encoder.cc',
162         'sender/fake_software_video_encoder.h',
163         'sender/frame_sender.cc',
164         'sender/frame_sender.h',
165         'sender/performance_metrics_overlay.cc',
166         'sender/performance_metrics_overlay.h',
167         'sender/sender_encoded_frame.cc',
168         'sender/sender_encoded_frame.h',
169         'sender/size_adaptable_video_encoder_base.cc',
170         'sender/size_adaptable_video_encoder_base.h',
171         'sender/software_video_encoder.h',
172         'sender/video_encoder.cc',
173         'sender/video_encoder.h',
174         'sender/video_encoder_impl.cc',
175         'sender/video_encoder_impl.h',
176         'sender/video_frame_factory.h',
177         'sender/video_sender.cc',
178         'sender/video_sender.h',
179         'sender/vp8_encoder.cc',
180         'sender/vp8_encoder.h',
181       ], # source
182       'conditions': [
183         # use a restricted subset of media and no software codecs on iOS
184         ['OS=="ios"', {
185           'dependencies': [ '<(DEPTH)/media/media.gyp:media_for_cast_ios' ],
186           'dependencies!': [
187             '<(DEPTH)/media/media.gyp:media',
188             '<(DEPTH)/third_party/opus/opus.gyp:opus',
189             '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
190           ],
191           'sources!': [
192             'sender/external_video_encoder.cc',
193             'sender/external_video_encoder.h',
194             'sender/video_encoder_impl.cc',
195             'sender/video_encoder_impl.h',
196             'sender/vp8_encoder.cc',
197             'sender/vp8_encoder.h',
198           ],
199         }], # OS=="ios"
200         # iOS and OS X encoders
201         ['OS=="ios" or OS=="mac"', {
202           'sources': [
203             'sender/h264_vt_encoder.cc',
204             'sender/h264_vt_encoder.h',
205           ],
206           'link_settings': {
207             'libraries': [
208               '$(SDKROOT)/System/Library/Frameworks/AudioToolbox.framework',
209               '$(SDKROOT)/System/Library/Frameworks/CoreVideo.framework',
210             ],
211           },
212         }],  # OS=="ios" or OS=="mac"
213       ], # conditions
214     },
215     {
216       # GN version: //media/cast:net
217       'target_name': 'cast_net',
218       'type': 'static_library',
219       'include_dirs': [
220         '<(DEPTH)/',
221       ],
222       'dependencies': [
223         'cast_base',
224         '<(DEPTH)/base/base.gyp:base',
225         '<(DEPTH)/net/net.gyp:net',
226       ],
227       'sources': [
228         'net/cast_transport_config.cc',
229         'net/cast_transport_config.h',
230         'net/cast_transport_defines.h',
231         'net/cast_transport_sender.h',
232         'net/cast_transport_sender_impl.cc',
233         'net/cast_transport_sender_impl.h',
234         'net/pacing/paced_sender.cc',
235         'net/pacing/paced_sender.h',
236         'net/rtcp/receiver_rtcp_event_subscriber.cc',
237         'net/rtcp/rtcp.cc',
238         'net/rtcp/rtcp.h',
239         'net/rtcp/rtcp_builder.cc',
240         'net/rtcp/rtcp_builder.h',
241         'net/rtcp/rtcp_defines.cc',
242         'net/rtcp/rtcp_defines.h',
243         'net/rtcp/rtcp_utility.cc',
244         'net/rtcp/rtcp_utility.h',
245         'net/rtp/packet_storage.cc',
246         'net/rtp/packet_storage.h',
247         'net/rtp/rtp_packetizer.cc',
248         'net/rtp/rtp_packetizer.h',
249         'net/rtp/rtp_parser.cc',
250         'net/rtp/rtp_parser.h',
251         'net/rtp/rtp_sender.cc',
252         'net/rtp/rtp_sender.h',
253         'net/udp_transport.cc',
254         'net/udp_transport.h',
255       ], # source
256     },
257   ],