This will avoid errors related to DirectX not being found for Chromium bots (mainly GN, but it's safest to do the same changes for GYP since they also make sense there as GYP generation go slightly faster without having to process those targets). Thanks to vchigrin@yandex-team.ru for originally suggesting this being fixed in https://webrtc-codereview.appspot.com/37639004/ TESTED= Successfully ran: webrtc/build/gyp_webrtc webrtc/build/gyp_webrtc -Dbuild_with_chromium=1 and trybots. R=andresp@webrtc.org Review URL: https://webrtc-codereview.appspot.com/38619004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@8102 4adac7df-926f-26a2-2b94-8c16560cd09d
224 lines
7.4 KiB
Python
224 lines
7.4 KiB
Python
# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
|
|
#
|
|
# Use of this source code is governed by a BSD-style license
|
|
# that can be found in the LICENSE file in the root of the source
|
|
# tree. An additional intellectual property rights grant can be found
|
|
# in the file PATENTS. All contributing project authors may
|
|
# be found in the AUTHORS file in the root of the source tree.
|
|
|
|
{
|
|
'targets': [
|
|
{
|
|
# Note this library is missing an implementation for the video render.
|
|
# For that targets must link with 'video_render_module_impl' or
|
|
# 'video_render_module_internal_impl' if they want to compile and use
|
|
# the internal render as the default renderer.
|
|
'target_name': 'video_render_module',
|
|
'type': 'static_library',
|
|
'dependencies': [
|
|
'webrtc_utility',
|
|
'<(webrtc_root)/common_video/common_video.gyp:common_video',
|
|
'<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
|
|
],
|
|
'sources': [
|
|
'external/video_render_external_impl.cc',
|
|
'external/video_render_external_impl.h',
|
|
'i_video_render.h',
|
|
'include/video_render.h',
|
|
'include/video_render_defines.h',
|
|
'incoming_video_stream.cc',
|
|
'incoming_video_stream.h',
|
|
'video_render_frames.cc',
|
|
'video_render_frames.h',
|
|
'video_render_impl.h',
|
|
],
|
|
},
|
|
{
|
|
# Default video_render_module implementation that only supports external
|
|
# renders.
|
|
'target_name': 'video_render_module_impl',
|
|
'type': 'static_library',
|
|
'dependencies': [
|
|
'video_render_module',
|
|
],
|
|
'sources': [
|
|
'video_render_impl.cc',
|
|
],
|
|
},
|
|
], # targets
|
|
|
|
'conditions': [
|
|
['build_with_chromium==0', {
|
|
'targets': [
|
|
{
|
|
# video_render_module implementation that supports the internal
|
|
# video_render implementation.
|
|
'target_name': 'video_render_module_internal_impl',
|
|
'type': 'static_library',
|
|
'dependencies': [
|
|
'video_render_module',
|
|
],
|
|
'sources': [
|
|
'video_render_internal_impl.cc',
|
|
],
|
|
# TODO(andrew): with the proper suffix, these files will be excluded
|
|
# automatically.
|
|
'conditions': [
|
|
['OS=="android"', {
|
|
'sources': [
|
|
'android/video_render_android_impl.h',
|
|
'android/video_render_android_native_opengl2.h',
|
|
'android/video_render_android_surface_view.h',
|
|
'android/video_render_opengles20.h',
|
|
'android/video_render_android_impl.cc',
|
|
'android/video_render_android_native_opengl2.cc',
|
|
'android/video_render_android_surface_view.cc',
|
|
'android/video_render_opengles20.cc',
|
|
],
|
|
'link_settings': {
|
|
'libraries': [
|
|
'-lGLESv2',
|
|
],
|
|
},
|
|
}],
|
|
['OS=="ios"', {
|
|
'sources': [
|
|
# iOS
|
|
'ios/open_gles20.h',
|
|
'ios/open_gles20.mm',
|
|
'ios/video_render_ios_channel.h',
|
|
'ios/video_render_ios_channel.mm',
|
|
'ios/video_render_ios_gles20.h',
|
|
'ios/video_render_ios_gles20.mm',
|
|
'ios/video_render_ios_impl.h',
|
|
'ios/video_render_ios_impl.mm',
|
|
'ios/video_render_ios_view.h',
|
|
'ios/video_render_ios_view.mm',
|
|
],
|
|
'xcode_settings': {
|
|
'CLANG_ENABLE_OBJC_ARC': 'YES',
|
|
},
|
|
'all_dependent_settings': {
|
|
'xcode_settings': {
|
|
'OTHER_LDFLAGS': [
|
|
'-framework OpenGLES',
|
|
'-framework QuartzCore',
|
|
'-framework UIKit',
|
|
],
|
|
},
|
|
},
|
|
}],
|
|
['OS=="linux"', {
|
|
'sources': [
|
|
'linux/video_render_linux_impl.h',
|
|
'linux/video_x11_channel.h',
|
|
'linux/video_x11_render.h',
|
|
'linux/video_render_linux_impl.cc',
|
|
'linux/video_x11_channel.cc',
|
|
'linux/video_x11_render.cc',
|
|
],
|
|
'link_settings': {
|
|
'libraries': [
|
|
'-lXext',
|
|
],
|
|
},
|
|
}],
|
|
['OS=="mac"', {
|
|
'sources': [
|
|
'mac/cocoa_full_screen_window.h',
|
|
'mac/cocoa_render_view.h',
|
|
'mac/video_render_agl.h',
|
|
'mac/video_render_mac_carbon_impl.h',
|
|
'mac/video_render_mac_cocoa_impl.h',
|
|
'mac/video_render_nsopengl.h',
|
|
'mac/video_render_nsopengl.mm',
|
|
'mac/video_render_mac_cocoa_impl.mm',
|
|
'mac/video_render_agl.cc',
|
|
'mac/video_render_mac_carbon_impl.cc',
|
|
'mac/cocoa_render_view.mm',
|
|
'mac/cocoa_full_screen_window.mm',
|
|
],
|
|
}],
|
|
['OS=="win"', {
|
|
'sources': [
|
|
'windows/i_video_render_win.h',
|
|
'windows/video_render_direct3d9.h',
|
|
'windows/video_render_windows_impl.h',
|
|
'windows/video_render_direct3d9.cc',
|
|
'windows/video_render_windows_impl.cc',
|
|
],
|
|
'include_dirs': [
|
|
'<(directx_sdk_path)/Include',
|
|
],
|
|
}],
|
|
] # conditions
|
|
},
|
|
],
|
|
}], # build_with_chromium==0
|
|
['include_tests==1', {
|
|
'targets': [
|
|
{
|
|
'target_name': 'video_render_tests',
|
|
'type': 'executable',
|
|
'dependencies': [
|
|
'video_render_module_internal_impl',
|
|
'webrtc_utility',
|
|
'<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
|
|
'<(webrtc_root)/common_video/common_video.gyp:common_video',
|
|
],
|
|
'sources': [
|
|
'test/testAPI/testAPI.cc',
|
|
'test/testAPI/testAPI.h',
|
|
'test/testAPI/testAPI_android.cc',
|
|
'test/testAPI/testAPI_mac.mm',
|
|
],
|
|
'conditions': [
|
|
['OS=="mac" or OS=="linux"', {
|
|
'cflags': [
|
|
'-Wno-write-strings',
|
|
],
|
|
'ldflags': [
|
|
'-lpthread -lm',
|
|
],
|
|
}],
|
|
['OS=="linux"', {
|
|
'link_settings': {
|
|
'libraries': [
|
|
'-lX11',
|
|
],
|
|
},
|
|
}],
|
|
['OS=="mac"', {
|
|
'xcode_settings': {
|
|
'OTHER_LDFLAGS': [
|
|
'-framework Foundation -framework AppKit -framework Cocoa -framework OpenGL',
|
|
],
|
|
},
|
|
}],
|
|
] # conditions
|
|
}, # video_render_module_test
|
|
], # targets
|
|
'conditions': [
|
|
['test_isolation_mode != "noop"', {
|
|
'targets': [
|
|
{
|
|
'target_name': 'video_render_tests_run',
|
|
'type': 'none',
|
|
'dependencies': [
|
|
'video_render_tests',
|
|
],
|
|
'includes': [
|
|
'../../build/isolate.gypi',
|
|
],
|
|
'sources': [
|
|
'video_render_tests.isolate',
|
|
],
|
|
},
|
|
],
|
|
}],
|
|
],
|
|
}], # include_tests==1
|
|
], # conditions
|
|
}
|
|
|