Fix iOS GN build and cleanup system_wrappers
Compile fixes for GN on iOS that finally gets our bots green. Changes to system_wrappers: * Updated to only use inclusive sources for maintainability * Add a few missing GN headers. * Cleanup GYP hack for atomic32_mac.cc * Renamed changes sources to avoid problems with GYP/GN file suffix rules: - atomic32_mac.cc -> atomic32_darwin.cc - atomic32_posix.cc -> atomic32_non_darwin_unix.cc See https://code.google.com/p/chromium/codesearch#chromium/src/build/config/BUILDCONFIG.gn&l=325 for details on which extensions can/cannot be used. BUG=webrtc:5586 NOTRY=True Review-Url: https://codereview.webrtc.org/1999723002 Cr-Commit-Position: refs/heads/master@{#12897}
This commit is contained in:
@ -151,6 +151,11 @@ source_set("webrtc_h264") {
|
||||
"../../system_wrappers",
|
||||
]
|
||||
|
||||
if (is_ios) {
|
||||
sources += [ "codecs/h264/h264_objc.mm" ]
|
||||
deps += [ ":webrtc_h264_video_toolbox" ]
|
||||
}
|
||||
|
||||
if (rtc_use_h264) {
|
||||
defines += [ "WEBRTC_USE_H264" ]
|
||||
if (rtc_initialize_ffmpeg) {
|
||||
@ -170,8 +175,52 @@ source_set("webrtc_h264") {
|
||||
}
|
||||
}
|
||||
|
||||
# TODO(tkchin): Source set for webrtc_h264_video_toolbox. Currently not
|
||||
# possible to add, see https://crbug.com/297668.
|
||||
if (is_ios) {
|
||||
source_set("webrtc_h264_video_toolbox") {
|
||||
sources = [
|
||||
"codecs/h264/h264_video_toolbox_decoder.cc",
|
||||
"codecs/h264/h264_video_toolbox_decoder.h",
|
||||
"codecs/h264/h264_video_toolbox_encoder.cc",
|
||||
"codecs/h264/h264_video_toolbox_encoder.h",
|
||||
"codecs/h264/h264_video_toolbox_nalu.cc",
|
||||
"codecs/h264/h264_video_toolbox_nalu.h",
|
||||
]
|
||||
|
||||
configs += [ "//build/config/compiler:enable_arc" ]
|
||||
|
||||
cflags = [ "-Wobjc-missing-property-synthesis" ]
|
||||
|
||||
precompiled_header = "../../sdk/objc/WebRTC-Prefix.pch"
|
||||
precompiled_source = "../../sdk/objc/WebRTC-Prefix.pch"
|
||||
|
||||
deps = [
|
||||
"../../sdk:rtc_sdk_common_objc",
|
||||
]
|
||||
|
||||
libs = [
|
||||
"CoreFoundation.framework",
|
||||
"CoreMedia.framework",
|
||||
"CoreVideo.framework",
|
||||
"VideoToolbox.framework",
|
||||
]
|
||||
|
||||
if (is_clang) {
|
||||
# Suppress warnings from Chrome's Clang plugins.
|
||||
# See http://code.google.com/p/webrtc/issues/detail?id=163 for details.
|
||||
configs -= [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
|
||||
if (rtc_build_libyuv) {
|
||||
deps += [ "$rtc_libyuv_dir" ]
|
||||
public_deps = [
|
||||
"$rtc_libyuv_dir",
|
||||
]
|
||||
} else {
|
||||
# Need to add a directory normally exported by libyuv.
|
||||
include_dirs += [ "$rtc_libyuv_dir/include" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
source_set("webrtc_i420") {
|
||||
sources = [
|
||||
|
||||
Reference in New Issue
Block a user