Patches for firefox port on FreeBSD powerpc.
Alfred Perlstein
alfred at ixsystems.com
Thu Mar 7 05:59:24 UTC 2013
I tried to submit a PR but I'm not sure if they are going through, I
hope this is helpful.
-Alfred
-------------- next part --------------
diff --git a/www/firefox/Makefile b/www/firefox/Makefile
index ed6efee..dc36ede 100644
--- a/www/firefox/Makefile
+++ b/www/firefox/Makefile
@@ -57,6 +57,10 @@ OPTIONS_DEFAULT:=${OPTIONS_DEFAULT:S/OSS/ALSA/}
WRKSRC:= ${WRKDIR}/mozilla-release
+.if ! ${MACHINE_CPU:Msse2}
+GYP_DEFINES+= disable_sse2=1
+.endif
+
.if ${ARCH} == amd64
CONFIGURE_TARGET=x86_64-portbld-freebsd${OSREL}
.elif ${ARCH} == powerpc64
@@ -68,6 +72,11 @@ CFLAGS+= -mminimal-toc
.endif
.endif
+CFLAGS+= -D__STDC_CONSTANT_MACROS=1 -D__STDC_LIMIT_MACROS=1
+
+
+USE_GCC= yes
+
.if ${PORT_OPTIONS:MPGO}
USE_GCC?= yes
USE_DISPLAY= yes
diff --git a/www/firefox/files/patch-media-webrtc-shared_libs.mk b/www/firefox/files/patch-media-webrtc-shared_libs.mk
new file mode 100644
index 0000000..15e3235
--- /dev/null
+++ b/www/firefox/files/patch-media-webrtc-shared_libs.mk
@@ -0,0 +1,31 @@
+--- media/webrtc/shared_libs.mk~
++++ media/webrtc/shared_libs.mk
+@@ -28,13 +28,11 @@
+ $(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 @@
+ $(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:
+ #
diff --git a/www/firefox/files/patch-media-webrtc-trunk-src-build-common.gypi b/www/firefox/files/patch-media-webrtc-trunk-src-build-common.gypi
new file mode 100644
index 0000000..8eaaedf
--- /dev/null
+++ b/www/firefox/files/patch-media-webrtc-trunk-src-build-common.gypi
@@ -0,0 +1,11 @@
+--- media/webrtc/trunk/src/build/common.gypi~
++++ media/webrtc/trunk/src/build/common.gypi
+@@ -118,7 +118,7 @@
+ 'target_defaults': {
+ 'include_dirs': [
+ # TODO(andrew): we should be able to just use <(webrtc_root) here.
+- '..','../..',
++ '..','../..','../common_audio/signal_processing/include',
+ ],
+ 'defines': [
+ # TODO(leozwang): Run this as a gclient hook rather than at build-time:
diff --git a/www/firefox/files/patch-media-webrtc-trunk-src-typedefs.h b/www/firefox/files/patch-media-webrtc-trunk-src-typedefs.h
new file mode 100644
index 0000000..25a0e64
--- /dev/null
+++ b/www/firefox/files/patch-media-webrtc-trunk-src-typedefs.h
@@ -0,0 +1,15 @@
+--- media/webrtc/trunk/src/typedefs.h~
++++ media/webrtc/trunk/src/typedefs.h
+@@ -57,7 +57,11 @@
+ #define WEBRTC_ARCH_32_BITS
+ #define WEBRTC_ARCH_LITTLE_ENDIAN
+ #define WEBRTC_LITTLE_ENDIAN
+-#else
++#elif defined(__PPC__)
++#define WEBRTC_ARCH_32_BITS
++#define WEBRTC_ARCH_BIG_ENDIAN
++#define WEBRTC_BIG_ENDIAN
++#else
+ #error Please add support for your architecture in typedefs.h
+ #endif
+
More information about the freebsd-gecko
mailing list