blob: 7474974c52872e7f0c688783a2199d1127c57bb0 [file] [log] [blame]
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +00001# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("../build/webrtc.gni")
10
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000011config("common_video_config") {
12 include_dirs = [
kjellander6f8ce062015-11-16 13:52:24 -080013 "include",
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000014 "libyuv/include",
15 ]
16}
17
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000018source_set("common_video") {
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000019 sources = [
emircan55a401e2016-04-26 12:55:07 -070020 "bitrate_adjuster.cc",
magjed@webrtc.org73d763e2015-03-17 11:40:45 +000021 "i420_buffer_pool.cc",
emircan55a401e2016-04-26 12:55:07 -070022 "include/bitrate_adjuster.h",
pbosa96b60b2016-04-18 21:12:48 -070023 "include/frame_callback.h",
kjellander6f8ce062015-11-16 13:52:24 -080024 "include/i420_buffer_pool.h",
25 "include/incoming_video_stream.h",
26 "include/video_frame_buffer.h",
Peter Boström9a638662015-05-13 13:28:11 +020027 "incoming_video_stream.cc",
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000028 "libyuv/include/scaler.h",
29 "libyuv/include/webrtc_libyuv.h",
30 "libyuv/scaler.cc",
31 "libyuv/webrtc_libyuv.cc",
Miguel Casas-Sanchez47650702015-05-29 17:21:40 -070032 "video_frame.cc",
magjed@webrtc.org2386d6d2015-03-05 14:03:08 +000033 "video_frame_buffer.cc",
Peter Boström9a638662015-05-13 13:28:11 +020034 "video_render_frames.cc",
35 "video_render_frames.h",
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000036 ]
37
38 include_dirs = [ "../modules/interface" ]
39
kjellander@webrtc.orgf21ea912014-09-28 17:37:22 +000040 configs += [ "..:common_config" ]
41 public_configs = [
42 "..:common_inherited_config",
43 ":common_video_config",
44 ]
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000045
kjellander@webrtc.org42ee5b52014-08-25 14:15:35 +000046 if (is_clang) {
47 # Suppress warnings from Chrome's Clang plugins.
48 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details.
49 configs -= [ "//build/config/clang:find_bad_constructs" ]
50 }
51
kwiberg@webrtc.orgac2d27d2015-02-26 13:59:22 +000052 deps = [
53 "..:webrtc_common",
54 "../system_wrappers",
55 ]
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000056
kjellander@webrtc.org6d08ca62014-09-07 17:36:10 +000057 if (rtc_build_libyuv) {
kjellander@webrtc.orgce22f132015-02-16 12:47:20 +000058 deps += [ "$rtc_libyuv_dir" ]
Henrik Kjellander57e5fd22015-05-25 12:55:39 +020059 public_deps = [
60 "$rtc_libyuv_dir",
61 ]
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000062 } else {
63 # Need to add a directory normally exported by libyuv.
kjellander@webrtc.orgce22f132015-02-16 12:47:20 +000064 include_dirs += [ "$rtc_libyuv_dir/include" ]
kjellander@webrtc.org11bea892014-07-03 17:04:12 +000065 }
tkchin7d06a8c2016-04-04 14:10:43 -070066
67 if (is_ios || is_mac) {
68 sources += [
69 "corevideo_frame_buffer.cc",
70 "include/corevideo_frame_buffer.h",
71 ]
72 libs = [ "CoreVideo.framework" ]
73 }
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000074}