|
1 Submitted-by: schwab@@linux-m68k.org |
|
2 Subject: fix PPC build |
|
3 References: (not delivered with the patch but apparently mix of:) |
|
4 Bug 750869 - Support WebRTC for Android in our build system (TM:20) |
|
5 Bug 814693 - Build failure on Debian powerpc (TM:20) |
|
6 |
|
7 diff --git a/media/webrtc/shared_libs.mk b/media/webrtc/shared_libs.mk |
|
8 --- a/media/webrtc/shared_libs.mk |
|
9 +++ b/media/webrtc/shared_libs.mk |
|
10 @@ -23,33 +23,39 @@ WEBRTC_LIBS = \ |
|
11 $(call EXPAND_LIBNAME_PATH,video_render_module,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_render_module) \ |
|
12 $(call EXPAND_LIBNAME_PATH,video_engine_core,$(DEPTH)/media/webrtc/trunk/src/video_engine/video_engine_video_engine_core) \ |
|
13 $(call EXPAND_LIBNAME_PATH,media_file,$(DEPTH)/media/webrtc/trunk/src/modules/modules_media_file) \ |
|
14 $(call EXPAND_LIBNAME_PATH,rtp_rtcp,$(DEPTH)/media/webrtc/trunk/src/modules/modules_rtp_rtcp) \ |
|
15 $(call EXPAND_LIBNAME_PATH,udp_transport,$(DEPTH)/media/webrtc/trunk/src/modules/modules_udp_transport) \ |
|
16 $(call EXPAND_LIBNAME_PATH,bitrate_controller,$(DEPTH)/media/webrtc/trunk/src/modules/modules_bitrate_controller) \ |
|
17 $(call EXPAND_LIBNAME_PATH,remote_bitrate_estimator,$(DEPTH)/media/webrtc/trunk/src/modules/modules_remote_bitrate_estimator) \ |
|
18 $(call EXPAND_LIBNAME_PATH,video_processing,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing) \ |
|
19 - $(call EXPAND_LIBNAME_PATH,video_processing_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing_sse2) \ |
|
20 $(call EXPAND_LIBNAME_PATH,voice_engine_core,$(DEPTH)/media/webrtc/trunk/src/voice_engine/voice_engine_voice_engine_core) \ |
|
21 $(call EXPAND_LIBNAME_PATH,audio_conference_mixer,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_conference_mixer) \ |
|
22 $(call EXPAND_LIBNAME_PATH,audio_device,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_device) \ |
|
23 $(call EXPAND_LIBNAME_PATH,audio_processing,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_processing) \ |
|
24 $(call EXPAND_LIBNAME_PATH,aec,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec) \ |
|
25 - $(call EXPAND_LIBNAME_PATH,aec_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec_sse2) \ |
|
26 $(call EXPAND_LIBNAME_PATH,apm_util,$(DEPTH)/media/webrtc/trunk/src/modules/modules_apm_util) \ |
|
27 $(call EXPAND_LIBNAME_PATH,aecm,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aecm) \ |
|
28 $(call EXPAND_LIBNAME_PATH,agc,$(DEPTH)/media/webrtc/trunk/src/modules/modules_agc) \ |
|
29 $(call EXPAND_LIBNAME_PATH,ns,$(DEPTH)/media/webrtc/trunk/src/modules/modules_ns) \ |
|
30 $(call EXPAND_LIBNAME_PATH,yuv,$(DEPTH)/media/webrtc/trunk/third_party/libyuv/libyuv_libyuv) \ |
|
31 $(call EXPAND_LIBNAME_PATH,webrtc_jpeg,$(DEPTH)/media/webrtc/trunk/src/common_video/common_video_webrtc_jpeg) \ |
|
32 $(call EXPAND_LIBNAME_PATH,nicer,$(DEPTH)/media/mtransport/third_party/nICEr/nicer_nicer) \ |
|
33 $(call EXPAND_LIBNAME_PATH,nrappkit,$(DEPTH)/media/mtransport/third_party/nrappkit/nrappkit_nrappkit) \ |
|
34 $(NULL) |
|
35 |
|
36 +# if we're on an intel arch, we want SSE2 optimizations |
|
37 +ifneq (,$(INTEL_ARCHITECTURE)) |
|
38 +WEBRTC_LIBS += \ |
|
39 + $(call EXPAND_LIBNAME_PATH,video_processing_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing_sse2) \ |
|
40 + $(call EXPAND_LIBNAME_PATH,aec_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec_sse2) \ |
|
41 + $(NULL) |
|
42 +endif |
|
43 + |
|
44 # If you enable one of these codecs in webrtc_config.gypi, you'll need to re-add the |
|
45 # relevant library from this list: |
|
46 # |
|
47 # $(call EXPAND_LIBNAME_PATH,G722,$(DEPTH)/media/webrtc/trunk/src/modules/modules_G722) \ |
|
48 # $(call EXPAND_LIBNAME_PATH,iLBC,$(DEPTH)/media/webrtc/trunk/src/modules/modules_iLBC) \ |
|
49 # $(call EXPAND_LIBNAME_PATH,iSAC,$(DEPTH)/media/webrtc/trunk/src/modules/modules_iSAC) \ |
|
50 # $(call EXPAND_LIBNAME_PATH,iSACFix,$(DEPTH)/media/webrtc/trunk/src/modules/modules_iSACFix) \ |
|
51 # |
|
52 diff --git a/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi b/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi |
|
53 --- a/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi |
|
54 +++ b/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi |
|
55 @@ -6,16 +6,19 @@ |
|
56 # in the file PATENTS. All contributing project authors may |
|
57 # be found in the AUTHORS file in the root of the source tree. |
|
58 |
|
59 { |
|
60 'targets': [ |
|
61 { |
|
62 'target_name': 'PCM16B', |
|
63 'type': '<(library)', |
|
64 + 'dependencies': [ |
|
65 + '<(webrtc_root)/common_audio/common_audio.gyp:signal_processing', |
|
66 + ], |
|
67 'include_dirs': [ |
|
68 'include', |
|
69 ], |
|
70 'direct_dependent_settings': { |
|
71 'include_dirs': [ |
|
72 'include', |
|
73 ], |
|
74 }, |
|
75 diff --git a/media/webrtc/trunk/src/typedefs.h b/media/webrtc/trunk/src/typedefs.h |
|
76 --- a/media/webrtc/trunk/src/typedefs.h |
|
77 +++ b/media/webrtc/trunk/src/typedefs.h |
|
78 @@ -52,16 +52,24 @@ |
|
79 //#define WEBRTC_ARCH_ARMEL |
|
80 #define WEBRTC_ARCH_32_BITS |
|
81 #define WEBRTC_ARCH_LITTLE_ENDIAN |
|
82 #define WEBRTC_LITTLE_ENDIAN |
|
83 #elif defined(__MIPSEL__) |
|
84 #define WEBRTC_ARCH_32_BITS |
|
85 #define WEBRTC_ARCH_LITTLE_ENDIAN |
|
86 #define WEBRTC_LITTLE_ENDIAN |
|
87 +#elif defined(__powerpc__) |
|
88 +#if defined(__powerpc64__) |
|
89 +#define WEBRTC_ARCH_64_BITS |
|
90 +#else |
|
91 +#define WEBRTC_ARCH_32_BITS |
|
92 +#endif |
|
93 +#define WEBRTC_ARCH_BIG_ENDIAN |
|
94 +#define WEBRTC_BIG_ENDIAN |
|
95 #else |
|
96 #error Please add support for your architecture in typedefs.h |
|
97 #endif |
|
98 |
|
99 #if defined(__SSE2__) || defined(_MSC_VER) |
|
100 #define WEBRTC_USE_SSE2 |
|
101 #endif |
|
102 |