tenfourfox/media/webrtc/signaling/signaling.gyp
Cameron Kaiser c9b2922b70 hello FPR
2017-04-19 00:56:45 -07:00

381 lines
11 KiB
Python

# Copyright (c) 2011, The WebRTC project authors. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# * Neither the name of Google nor the names of its contributors may
# be used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Indent 2 spaces, no tabs.
#
#
# sip.gyp - a library for SIP
#
{
'variables': {
'chromium_code': 1,
},
'target_defaults': {
'conditions': [
['moz_widget_toolkit_gonk==1', {
'defines' : [
'WEBRTC_GONK',
],
}],
],
},
'targets': [
#
# ECC
#
{
'target_name': 'ecc',
'type': 'static_library',
#
# INCLUDES
#
'include_dirs': [
'..',
'./src',
'./src/common',
'./src/common/browser_logging',
'./src/common/time_profiling',
'./src/media',
'./src/media-conduit',
'./src/mediapipeline',
'./src/peerconnection',
'./src/sdp/sipcc',
'../../../dom/base',
'../../../dom/media',
'../../../media/mtransport',
'../trunk',
'../../libyuv/include',
'../../mtransport/third_party/nrappkit/src/util/libekr',
],
#
# DEPENDENCIES
#
'dependencies': [
],
'export_dependent_settings': [
],
#
# SOURCES
#
'sources': [
# Media Conduit
'./src/media-conduit/AudioConduit.h',
'./src/media-conduit/AudioConduit.cpp',
'./src/media-conduit/VideoConduit.h',
'./src/media-conduit/VideoConduit.cpp',
'./src/media-conduit/CodecStatistics.h',
'./src/media-conduit/CodecStatistics.cpp',
'./src/media-conduit/RunningStat.h',
# Common
'./src/common/CommonTypes.h',
'./src/common/csf_common.h',
'./src/common/NullDeleter.h',
'./src/common/PtrVector.h',
'./src/common/Wrapper.h',
'./src/common/NullTransport.h',
'./src/common/YuvStamper.cpp',
# Browser Logging
'./src/common/browser_logging/CSFLog.cpp',
'./src/common/browser_logging/CSFLog.h',
'./src/common/browser_logging/WebRtcLog.cpp',
'./src/common/browser_logging/WebRtcLog.h',
# Browser Logging
'./src/common/time_profiling/timecard.c',
'./src/common/time_profiling/timecard.h',
# PeerConnection
'./src/peerconnection/MediaPipelineFactory.cpp',
'./src/peerconnection/MediaPipelineFactory.h',
'./src/peerconnection/PeerConnectionCtx.cpp',
'./src/peerconnection/PeerConnectionCtx.h',
'./src/peerconnection/PeerConnectionImpl.cpp',
'./src/peerconnection/PeerConnectionImpl.h',
'./src/peerconnection/PeerConnectionMedia.cpp',
'./src/peerconnection/PeerConnectionMedia.h',
# Media pipeline
'./src/mediapipeline/MediaPipeline.h',
'./src/mediapipeline/MediaPipeline.cpp',
'./src/mediapipeline/MediaPipelineFilter.h',
'./src/mediapipeline/MediaPipelineFilter.cpp',
# SDP
'./src/sdp/sipcc/ccsdp.h',
'./src/sdp/sipcc/cpr_string.c',
'./src/sdp/sipcc/sdp_access.c',
'./src/sdp/sipcc/sdp_attr.c',
'./src/sdp/sipcc/sdp_attr_access.c',
'./src/sdp/sipcc/sdp_base64.c',
'./src/sdp/sipcc/sdp_config.c',
'./src/sdp/sipcc/sdp_main.c',
'./src/sdp/sipcc/sdp_token.c',
'./src/sdp/sipcc/sdp.h',
'./src/sdp/sipcc/sdp_base64.h',
'./src/sdp/sipcc/sdp_os_defs.h',
'./src/sdp/sipcc/sdp_private.h',
'./src/sdp/sipcc/sdp_utils.c',
'./src/sdp/sipcc/sdp_services_unix.c',
# SDP Wrapper
'./src/sdp/Sdp.h',
'./src/sdp/SdpAttribute.h',
'./src/sdp/SdpAttribute.cpp',
'./src/sdp/SdpAttributeList.h',
'./src/sdp/SdpErrorHolder.h',
'./src/sdp/SdpHelper.h',
'./src/sdp/SdpHelper.cpp',
'./src/sdp/SdpMediaSection.h',
'./src/sdp/SdpMediaSection.cpp',
'./src/sdp/SipccSdp.h',
'./src/sdp/SipccSdpAttributeList.h',
'./src/sdp/SipccSdpAttributeList.cpp',
'./src/sdp/SipccSdpMediaSection.h',
'./src/sdp/SipccSdpParser.h',
'./src/sdp/SipccSdp.cpp',
'./src/sdp/SipccSdpMediaSection.cpp',
'./src/sdp/SipccSdpParser.cpp',
# JSEP
'./src/jsep/JsepCodecDescription.h',
'./src/jsep/JsepSession.h',
'./src/jsep/JsepSessionImpl.cpp',
'./src/jsep/JsepSessionImpl.h',
'./src/jsep/JsepTrack.cpp',
'./src/jsep/JsepTrack.h',
'./src/jsep/JsepTrackEncoding.h',
'./src/jsep/JsepTransport.h'
],
#
# DEFINES
#
'defines' : [
'LOG4CXX_STATIC',
'_NO_LOG4CXX',
'USE_SSLEAY',
'_CPR_USE_EXTERNAL_LOGGER',
'WEBRTC_RELATIVE_PATH',
'HAVE_WEBRTC_VIDEO',
'HAVE_WEBRTC_VOICE',
'HAVE_STDINT_H=1',
'HAVE_STDLIB_H=1',
'HAVE_UINT8_T=1',
'HAVE_UINT16_T=1',
'HAVE_UINT32_T=1',
'HAVE_UINT64_T=1',
],
'cflags_mozilla': [
'$(NSPR_CFLAGS)',
'$(NSS_CFLAGS)',
'$(MOZ_PIXMAN_CFLAGS)',
],
#
# Conditionals
#
'conditions': [
# hack so I can change the include flow for SrtpFlow
['build_with_mozilla==1', {
'sources': [
'./src/mediapipeline/SrtpFlow.h',
'./src/mediapipeline/SrtpFlow.cpp',
],
'include_dirs!': [
'../trunk/webrtc',
],
'include_dirs': [
'../../../netwerk/srtp/src/include',
'../../../netwerk/srtp/src/crypto/include',
],
}],
['moz_webrtc_omx==1', {
'sources': [
'./src/media-conduit/WebrtcOMXH264VideoCodec.cpp',
'./src/media-conduit/OMXVideoCodec.cpp',
],
'include_dirs': [
# hack on hack to re-add it after SrtpFlow removes it
'../../../dom/media/omx',
'../../../gfx/layers/client',
],
'cflags_mozilla': [
'-I$(ANDROID_SOURCE)/frameworks/av/include/media/stagefright',
'-I$(ANDROID_SOURCE)/frameworks/av/include',
'-I$(ANDROID_SOURCE)/frameworks/native/include/media/openmax',
'-I$(ANDROID_SOURCE)/frameworks/native/include',
'-I$(ANDROID_SOURCE)/frameworks/native/opengl/include',
],
'defines' : [
'MOZ_WEBRTC_OMX'
],
}],
['moz_webrtc_mediacodec==1', {
'include_dirs': [
'../../../widget/android',
],
'sources': [
'./src/media-conduit/MediaCodecVideoCodec.h',
'./src/media-conduit/WebrtcMediaCodecVP8VideoCodec.h',
'./src/media-conduit/MediaCodecVideoCodec.cpp',
'./src/media-conduit/WebrtcMediaCodecVP8VideoCodec.cpp',
],
'defines' : [
'MOZ_WEBRTC_MEDIACODEC',
],
}],
['(build_for_test==0) and (build_for_standalone==0)', {
'defines' : [
'MOZILLA_INTERNAL_API',
],
'sources': [
'./src/peerconnection/MediaStreamList.cpp',
'./src/peerconnection/MediaStreamList.h',
'./src/peerconnection/WebrtcGlobalInformation.cpp',
'./src/peerconnection/WebrtcGlobalInformation.h',
],
}],
['build_for_test!=0', {
'include_dirs': [
'./test'
],
'defines' : [
'NO_CHROMIUM_LOGGING',
'USE_FAKE_MEDIA_STREAMS',
'USE_FAKE_PCOBSERVER',
'MOZILLA_EXTERNAL_LINKAGE',
],
}],
['build_for_standalone==0', {
'sources': [
'./src/media-conduit/GmpVideoCodec.cpp',
'./src/media-conduit/WebrtcGmpVideoCodec.cpp',
],
}],
['build_for_standalone!=0', {
'include_dirs': [
'./test'
],
'defines' : [
'MOZILLA_INTERNAL_API',
'MOZILLA_XPCOMRT_API',
'MOZILLA_EXTERNAL_LINKAGE',
'NO_CHROMIUM_LOGGING',
'USE_FAKE_MEDIA_STREAMS',
'USE_FAKE_PCOBSERVER',
],
}],
['(OS=="linux") or (OS=="android")', {
'include_dirs': [
],
'defines': [
'OS_LINUX',
'SIP_OS_LINUX',
'WEBRTC_POSIX',
'_GNU_SOURCE',
'LINUX',
'GIPS_VER=3510',
'SECLIB_OPENSSL',
],
'cflags_mozilla': [
],
}],
['OS=="android" or moz_widget_toolkit_gonk==1', {
'cflags_mozilla': [
# This warning complains about important MOZ_EXPORT attributes
# on forward declarations for Android API types.
'-Wno-error=attributes',
],
}],
['OS=="win"', {
'include_dirs': [
],
'defines': [
'OS_WIN',
'SIP_OS_WINDOWS',
'WEBRTC_WIN',
'WIN32',
'GIPS_VER=3480',
'SIPCC_BUILD',
'HAVE_WINSOCK2_H'
],
'cflags_mozilla': [
],
}],
['os_bsd==1', {
'include_dirs': [
],
'defines': [
# avoiding pointless ifdef churn
'WEBRTC_POSIX',
'SIP_OS_OSX',
'OSX',
'SECLIB_OPENSSL',
],
'cflags_mozilla': [
],
}],
['OS=="mac" or OS=="ios"', {
'include_dirs': [
],
'defines': [
'WEBRTC_POSIX',
'OS_MACOSX',
'SIP_OS_OSX',
'OSX',
'_FORTIFY_SOURCE=2',
],
'cflags_mozilla': [
],
}],
],
},
],
}
# Local Variables:
# tab-width:2
# indent-tabs-mode:nil
# End:
# vim: set expandtab tabstop=2 shiftwidth=2: