Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(447)

Side by Side Diff: webrtc/sdk/BUILD.gn

Issue 2431603002: Prevent stripping of C interfaces in framework (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2016 The WebRTC project authors. All Rights Reserved. 1 # Copyright 2016 The WebRTC project authors. All Rights Reserved.
2 # 2 #
3 # Use of this source code is governed by a BSD-style license 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 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 5 # tree. An additional intellectual property rights grant can be found
6 # in the file PATENTS. All contributing project authors may 6 # in the file PATENTS. All contributing project authors may
7 # be found in the AUTHORS file in the root of the source tree. 7 # be found in the AUTHORS file in the root of the source tree.
8 8
9 import("../build/webrtc.gni") 9 import("../build/webrtc.gni")
10 if (is_mac) { 10 if (is_mac) {
(...skipping 234 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 "objc/Framework/Headers/WebRTC/RTCSSLAdapter.h", 245 "objc/Framework/Headers/WebRTC/RTCSSLAdapter.h",
246 "objc/Framework/Headers/WebRTC/RTCSessionDescription.h", 246 "objc/Framework/Headers/WebRTC/RTCSessionDescription.h",
247 "objc/Framework/Headers/WebRTC/RTCTracing.h", 247 "objc/Framework/Headers/WebRTC/RTCTracing.h",
248 "objc/Framework/Headers/WebRTC/RTCVideoFrame.h", 248 "objc/Framework/Headers/WebRTC/RTCVideoFrame.h",
249 "objc/Framework/Headers/WebRTC/RTCVideoRenderer.h", 249 "objc/Framework/Headers/WebRTC/RTCVideoRenderer.h",
250 "objc/Framework/Headers/WebRTC/RTCVideoSource.h", 250 "objc/Framework/Headers/WebRTC/RTCVideoSource.h",
251 "objc/Framework/Headers/WebRTC/RTCVideoTrack.h", 251 "objc/Framework/Headers/WebRTC/RTCVideoTrack.h",
252 "objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h", 252 "objc/Framework/Headers/WebRTC/UIDevice+RTCDevice.h",
253 "objc/Framework/Headers/WebRTC/WebRTC.h", 253 "objc/Framework/Headers/WebRTC/WebRTC.h",
254 ] 254 ]
255
256 # Slightly hacky, but we need to re-declare files here that are C
tkchin_webrtc 2016/10/19 00:26:26 use -all_load like the ios framework?
257 # interfaces because otherwise they will be dead-stripped during
258 # linking (ObjC classes cannot be dead-stripped). We might consider
259 # just only using ObjC interfaces.
260 c_interfaces = [
261 "objc/Framework/Classes/RTCFieldTrials.mm",
262 "objc/Framework/Classes/RTCLogging.mm",
263 "objc/Framework/Classes/RTCMetrics.mm",
264 "objc/Framework/Classes/RTCSSLAdapter.mm",
265 "objc/Framework/Classes/RTCTracing.mm",
266 ]
255 if (is_mac) { 267 if (is_mac) {
256 mac_framework_bundle("rtc_sdk_framework_objc") { 268 mac_framework_bundle("rtc_sdk_framework_objc") {
257 info_plist = "objc/Framework/Info.plist" 269 info_plist = "objc/Framework/Info.plist"
258 output_name = "WebRTC" 270 output_name = "WebRTC"
259 271
260 sources = common_objc_headers + 272 sources = common_objc_headers + c_interfaces +
261 [ "objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h" ] 273 [ "objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h" ]
262 274
263 if (!build_with_chromium) { 275 if (!build_with_chromium) {
264 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] 276 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ]
265 } 277 }
266 278
267 deps = [ 279 deps = [
268 ":rtc_sdk_peerconnection_objc", 280 ":rtc_sdk_peerconnection_objc",
269 "../system_wrappers:field_trial_default", 281 "../system_wrappers:field_trial_default",
270 "../system_wrappers:metrics_default", 282 "../system_wrappers:metrics_default",
(...skipping 19 matching lines...) Expand all
290 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163) 302 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163)
291 configs -= [ "//build/config/clang:find_bad_constructs" ] 303 configs -= [ "//build/config/clang:find_bad_constructs" ]
292 } 304 }
293 } 305 }
294 } 306 }
295 if (is_ios) { 307 if (is_ios) {
296 ios_framework_bundle("rtc_sdk_framework_objc") { 308 ios_framework_bundle("rtc_sdk_framework_objc") {
297 info_plist = "objc/Framework/Info.plist" 309 info_plist = "objc/Framework/Info.plist"
298 output_name = "WebRTC" 310 output_name = "WebRTC"
299 311
300 sources = common_objc_headers 312 sources = common_objc_headers + c_interfaces
301 public_headers = common_objc_headers 313 public_headers = common_objc_headers
302 314
303 if (!build_with_chromium) { 315 if (!build_with_chromium) {
304 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] 316 sources += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ]
305 public_headers += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ] 317 public_headers += [ "objc/Framework/Headers/WebRTC/RTCFileLogger.h" ]
306 } 318 }
307 319
308 ldflags = [ "-all_load" ] 320 ldflags = [ "-all_load" ]
309 321
310 deps = [ 322 deps = [
(...skipping 27 matching lines...) Expand all
338 350
339 rtc_static_library("rtc_sdk_objc") { 351 rtc_static_library("rtc_sdk_objc") {
340 complete_static_lib = true 352 complete_static_lib = true
341 deps = [ 353 deps = [
342 ":rtc_sdk_peerconnection_objc", 354 ":rtc_sdk_peerconnection_objc",
343 "../system_wrappers:field_trial_default", 355 "../system_wrappers:field_trial_default",
344 "../system_wrappers:metrics_default", 356 "../system_wrappers:metrics_default",
345 ] 357 ]
346 } 358 }
347 } 359 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698