From 29bd40e39a7b179cfeb1b5e9365ebd8270ffb8f6dfa49d1283ce32cbfded9869 Mon Sep 17 00:00:00 2001 From: Wolfgang Rosenauer Date: Sun, 13 Jan 2013 13:11:48 +0000 Subject: [PATCH] Accepting request 148241 from home:AndreasSchwab:ff - Fix WebRTC to build on powerpc OBS-URL: https://build.opensuse.org/request/show/148241 OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=314 --- MozillaFirefox.changes | 5 ++++ MozillaFirefox.spec | 2 ++ mozilla-webrtc-ppc.patch | 60 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 mozilla-webrtc-ppc.patch diff --git a/MozillaFirefox.changes b/MozillaFirefox.changes index e978c91a..7a6a99fe 100644 --- a/MozillaFirefox.changes +++ b/MozillaFirefox.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Jan 12 17:25:11 UTC 2013 - schwab@linux-m68k.org + +- Fix WebRTC to build on powerpc + ------------------------------------------------------------------- Sun Jan 6 21:54:18 UTC 2013 - wr@rosenauer.org diff --git a/MozillaFirefox.spec b/MozillaFirefox.spec index d17443a7..b8b6f900 100644 --- a/MozillaFirefox.spec +++ b/MozillaFirefox.spec @@ -101,6 +101,7 @@ Patch15: mozilla-gstreamer-760140.patch Patch16: mozilla-webrtc.patch Patch17: mozilla-libproxy-compat.patch Patch18: mozilla-backout-677092.patch +Patch19: mozilla-webrtc-ppc.patch # Firefox/browser Patch30: firefox-browser-css.patch Patch31: firefox-kde.patch @@ -237,6 +238,7 @@ cd $RPM_BUILD_DIR/mozilla %patch16 -p1 %patch17 -p1 %patch18 -p1 +%patch19 -p1 # %patch30 -p1 %if %suse_version >= 1110 diff --git a/mozilla-webrtc-ppc.patch b/mozilla-webrtc-ppc.patch new file mode 100644 index 00000000..e1925619 --- /dev/null +++ b/mozilla-webrtc-ppc.patch @@ -0,0 +1,60 @@ +--- mozilla/media/webrtc/shared_libs.mk ++++ mozilla/media/webrtc/shared_libs.mk +@@ -28,13 +28,11 @@ WEBRTC_LIBS = \ + $(call EXPAND_LIBNAME_PATH,bitrate_controller,$(DEPTH)/media/webrtc/trunk/src/modules/modules_bitrate_controller) \ + $(call EXPAND_LIBNAME_PATH,remote_bitrate_estimator,$(DEPTH)/media/webrtc/trunk/src/modules/modules_remote_bitrate_estimator) \ + $(call EXPAND_LIBNAME_PATH,video_processing,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing) \ +- $(call EXPAND_LIBNAME_PATH,video_processing_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing_sse2) \ + $(call EXPAND_LIBNAME_PATH,voice_engine_core,$(DEPTH)/media/webrtc/trunk/src/voice_engine/voice_engine_voice_engine_core) \ + $(call EXPAND_LIBNAME_PATH,audio_conference_mixer,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_conference_mixer) \ + $(call EXPAND_LIBNAME_PATH,audio_device,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_device) \ + $(call EXPAND_LIBNAME_PATH,audio_processing,$(DEPTH)/media/webrtc/trunk/src/modules/modules_audio_processing) \ + $(call EXPAND_LIBNAME_PATH,aec,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec) \ +- $(call EXPAND_LIBNAME_PATH,aec_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec_sse2) \ + $(call EXPAND_LIBNAME_PATH,apm_util,$(DEPTH)/media/webrtc/trunk/src/modules/modules_apm_util) \ + $(call EXPAND_LIBNAME_PATH,aecm,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aecm) \ + $(call EXPAND_LIBNAME_PATH,agc,$(DEPTH)/media/webrtc/trunk/src/modules/modules_agc) \ +@@ -45,6 +43,14 @@ WEBRTC_LIBS = \ + $(call EXPAND_LIBNAME_PATH,nrappkit,$(DEPTH)/media/mtransport/third_party/nrappkit/nrappkit_nrappkit) \ + $(NULL) + ++# if we're on an intel arch, we want SSE2 optimizations ++ifneq (,$(INTEL_ARCHITECTURE)) ++WEBRTC_LIBS += \ ++ $(call EXPAND_LIBNAME_PATH,video_processing_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_video_processing_sse2) \ ++ $(call EXPAND_LIBNAME_PATH,aec_sse2,$(DEPTH)/media/webrtc/trunk/src/modules/modules_aec_sse2) \ ++ $(NULL) ++endif ++ + # If you enable one of these codecs in webrtc_config.gypi, you'll need to re-add the + # relevant library from this list: + # +--- mozilla/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi ++++ mozilla/media/webrtc/trunk/src/modules/audio_coding/codecs/pcm16b/pcm16b.gypi +@@ -11,6 +11,9 @@ + { + 'target_name': 'PCM16B', + 'type': '<(library)', ++ 'dependencies': [ ++ '<(webrtc_root)/common_audio/common_audio.gyp:signal_processing', ++ ], + 'include_dirs': [ + 'include', + ], +--- mozilla/media/webrtc/trunk/src/typedefs.h ++++ mozilla/media/webrtc/trunk/src/typedefs.h +@@ -57,6 +57,14 @@ + #define WEBRTC_ARCH_32_BITS + #define WEBRTC_ARCH_LITTLE_ENDIAN + #define WEBRTC_LITTLE_ENDIAN ++#elif defined(__powerpc__) ++#if defined(__powerpc64__) ++#define WEBRTC_ARCH_64_BITS ++#else ++#define WEBRTC_ARCH_32_BITS ++#endif ++#define WEBRTC_ARCH_BIG_ENDIAN ++#define WEBRTC_BIG_ENDIAN + #else + #error Please add support for your architecture in typedefs.h + #endif