OLD | NEW |
| (Empty) |
1 # 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 | |
9 import("../../build/webrtc.gni") | |
10 | |
11 source_set("video_render_module") { | |
12 sources = [ | |
13 "external/video_render_external_impl.cc", | |
14 "external/video_render_external_impl.h", | |
15 "i_video_render.h", | |
16 "video_render.h", | |
17 "video_render_defines.h", | |
18 "video_render_impl.h", | |
19 ] | |
20 | |
21 deps = [ | |
22 "../..:webrtc_common", | |
23 "../../common_video", | |
24 "../../system_wrappers", | |
25 "../utility", | |
26 ] | |
27 | |
28 configs += [ "../..:common_config" ] | |
29 public_configs = [ "../..:common_inherited_config" ] | |
30 | |
31 if (is_clang) { | |
32 # Suppress warnings from Chrome's Clang plugins. | |
33 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. | |
34 configs -= [ "//build/config/clang:find_bad_constructs" ] | |
35 } | |
36 } | |
37 | |
38 source_set("video_render") { | |
39 sources = [ | |
40 "video_render_impl.cc", | |
41 ] | |
42 deps = [ | |
43 ":video_render_module", | |
44 "../../system_wrappers", | |
45 ] | |
46 | |
47 configs += [ "../..:common_config" ] | |
48 public_configs = [ "../..:common_inherited_config" ] | |
49 | |
50 if (is_clang) { | |
51 # Suppress warnings from Chrome's Clang plugins. | |
52 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. | |
53 configs -= [ "//build/config/clang:find_bad_constructs" ] | |
54 } | |
55 } | |
56 | |
57 if (!build_with_chromium) { | |
58 config("video_render_internal_impl_config") { | |
59 if (is_ios) { | |
60 libs = [ | |
61 "OpenGLES.framework", | |
62 "QuartzCore.framework", | |
63 ] | |
64 } | |
65 } | |
66 | |
67 source_set("video_render_internal_impl") { | |
68 libs = [] | |
69 sources = [ | |
70 "video_render_internal_impl.cc", | |
71 ] | |
72 deps = [ | |
73 ":video_render_module", | |
74 "../../system_wrappers", | |
75 ] | |
76 | |
77 if (is_linux) { | |
78 sources += [ | |
79 "linux/video_render_linux_impl.cc", | |
80 "linux/video_render_linux_impl.h", | |
81 "linux/video_x11_channel.cc", | |
82 "linux/video_x11_channel.h", | |
83 "linux/video_x11_render.cc", | |
84 "linux/video_x11_render.h", | |
85 ] | |
86 | |
87 deps += [ "../..:webrtc_common" ] | |
88 | |
89 libs += [ "Xext" ] | |
90 } | |
91 if (is_mac) { | |
92 sources += [ | |
93 "mac/cocoa_full_screen_window.h", | |
94 "mac/cocoa_full_screen_window.mm", | |
95 "mac/cocoa_render_view.h", | |
96 "mac/cocoa_render_view.mm", | |
97 "mac/video_render_agl.cc", | |
98 "mac/video_render_agl.h", | |
99 "mac/video_render_mac_carbon_impl.cc", | |
100 "mac/video_render_mac_carbon_impl.h", | |
101 "mac/video_render_mac_cocoa_impl.h", | |
102 "mac/video_render_mac_cocoa_impl.mm", | |
103 "mac/video_render_nsopengl.h", | |
104 "mac/video_render_nsopengl.mm", | |
105 ] | |
106 | |
107 libs += [ | |
108 "CoreVideo.framework", | |
109 "QTKit.framework", | |
110 ] | |
111 } | |
112 if (is_win) { | |
113 sources += [ | |
114 "windows/i_video_render_win.h", | |
115 "windows/video_render_direct3d9.cc", | |
116 "windows/video_render_direct3d9.h", | |
117 "windows/video_render_windows_impl.cc", | |
118 "windows/video_render_windows_impl.h", | |
119 ] | |
120 | |
121 directxsdk_exists = | |
122 exec_script("//build/dir_exists.py", | |
123 [ rebase_path("//third_party/directxsdk/files", | |
124 root_build_dir) ], | |
125 "trim string") == "True" | |
126 if (directxsdk_exists) { | |
127 directxsdk_path = "//third_party/directxsdk/files" | |
128 } else { | |
129 directxsdk_path = | |
130 exec_script("../../build/find_directx_sdk.py", [], "trim string") | |
131 } | |
132 include_dirs = [ directxsdk_path + "/Include" ] | |
133 } | |
134 if (is_android) { | |
135 sources += [ | |
136 "android/video_render_android_impl.cc", | |
137 "android/video_render_android_impl.h", | |
138 "android/video_render_android_native_opengl2.cc", | |
139 "android/video_render_android_native_opengl2.h", | |
140 "android/video_render_android_surface_view.cc", | |
141 "android/video_render_android_surface_view.h", | |
142 "android/video_render_opengles20.cc", | |
143 "android/video_render_opengles20.h", | |
144 ] | |
145 | |
146 libs += [ "GLESv2" ] | |
147 } | |
148 if (is_ios) { | |
149 sources += [ | |
150 "ios/open_gles20.h", | |
151 "ios/open_gles20.mm", | |
152 "ios/video_render_ios_channel.h", | |
153 "ios/video_render_ios_channel.mm", | |
154 "ios/video_render_ios_gles20.h", | |
155 "ios/video_render_ios_gles20.mm", | |
156 "ios/video_render_ios_impl.h", | |
157 "ios/video_render_ios_impl.mm", | |
158 "ios/video_render_ios_view.h", | |
159 "ios/video_render_ios_view.mm", | |
160 ] | |
161 | |
162 deps += [ "../..:webrtc_common" ] | |
163 | |
164 cflags = [ "-fobjc-arc" ] # CLANG_ENABLE_OBJC_ARC = YES. | |
165 } | |
166 | |
167 all_dependent_configs = [ ":video_render_internal_impl_config" ] | |
168 | |
169 configs += [ "../..:common_config" ] | |
170 public_configs = [ "../..:common_inherited_config" ] | |
171 | |
172 if (is_clang) { | |
173 # Suppress warnings from Chrome's Clang plugins. | |
174 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. | |
175 configs -= [ "//build/config/clang:find_bad_constructs" ] | |
176 } | |
177 } | |
178 } | |
OLD | NEW |