diff options
author | Beat Gaetzi <beat@FreeBSD.org> | 2014-06-11 03:42:55 +0000 |
---|---|---|
committer | Beat Gaetzi <beat@FreeBSD.org> | 2014-06-11 03:42:55 +0000 |
commit | 0557b9315d4e0c460a7150b697ad040a7084852d (patch) | |
tree | 95c4039ece9c88b497d122c1719bf5d754d803a8 /www/seamonkey | |
parent | 43fd6859fb194226b5da2b861b50a9d77315943b (diff) | |
download | ports-0557b9315d4e0c460a7150b697ad040a7084852d.tar.gz ports-0557b9315d4e0c460a7150b697ad040a7084852d.zip |
Notes
Diffstat (limited to 'www/seamonkey')
-rw-r--r-- | www/seamonkey/Makefile | 46 | ||||
-rw-r--r-- | www/seamonkey/files/patch-bug1013675 | 88 | ||||
-rw-r--r-- | www/seamonkey/files/patch-bug1015547 | 95 | ||||
-rw-r--r-- | www/seamonkey/files/patch-bug916589 | 17 | ||||
-rw-r--r-- | www/seamonkey/files/patch-bug975397 | 73 | ||||
-rw-r--r-- | www/seamonkey/files/patch-z-bug517422 | 23 |
6 files changed, 293 insertions, 49 deletions
diff --git a/www/seamonkey/Makefile b/www/seamonkey/Makefile index ff755e2b1848..ab7a35296b76 100644 --- a/www/seamonkey/Makefile +++ b/www/seamonkey/Makefile @@ -70,7 +70,6 @@ MAILNEWS_DESC?= Mail and News modules ALL_TARGET= build MAKEFILE= ${WRKSRC}/client.mk -NO_STAGE= yes .include "${.CURDIR}/../../www/firefox/Makefile.options" .include <bsd.port.options.mk> @@ -198,50 +197,27 @@ post-build: -C ${WRKSRC}/mailnews/extensions/enigmail .endif -port-pre-install: - ${ECHO_CMD} share/applications/${MOZILLA}.desktop >> ${PLIST} - ${ECHO_CMD} 'share/pixmaps/${MOZILLA}.png' >> ${PLIST} - post-install: ${INSTALL_DATA} ${WRKDIR}/${MOZILLA}.desktop ${PREFIX}/share/applications/ ${LN} -sf ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png \ - ${PREFIX}/share/pixmaps/${MOZILLA}.png + ${STAGEDIR}${PREFIX}/share/pixmaps/${MOZILLA}.png .if ${PORT_OPTIONS:MLIGHTNING} - @${MKDIR} ${XPI_LIBDIR}/${XPI_ID} ${XPI_LIBDIR}/symlinks/seamonkey - @(cd ${XPI_LIBDIR}/${XPI_ID}; ${TAR} -xf ${XPI_FILE}) - @${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${XPI_LIBDIR}/${XPI_ID} - @${REINPLACE_CMD} -i "" "s/${XPI_ORIG_ID}/${XPI_ID}/" ${XPI_LIBDIR}/${XPI_ID}/install.rdf - @${CHMOD} -R a+rX,go-w ${XPI_LIBDIR}/${XPI_ID} - @${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${LOCALBASE}/lib/seamonkey/extensions 2>/dev/null || true - @${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${XPI_LIBDIR}/symlinks/seamonkey 2>/dev/null || true - @(cd ${XPI_LIBDIR}; ${FIND} ${XPI_ID} -not -type d) | ${SORT} | \ - ${SED} -ne 's,^,lib/xpi/,p' >> ${TMPPLIST} - @${ECHO_CMD} 'lib/xpi/symlinks/seamonkey/${XPI_ID}' >> ${TMPPLIST} + @${MKDIR} ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/seamonkey + @(cd ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID}; ${TAR} -xf ${XPI_FILE}) + @${REINPLACE_CMD} -i "" "s/${XPI_ORIG_ID}/${XPI_ID}/" ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID}/install.rdf + @${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${XPI_ID} + @${LN} -sf ${XPI_LIBDIR}/${XPI_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/seamonkey 2>/dev/null || true @${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${XPI_ID} ${LOCALBASE}/lib/seamonkey/extensions 2>/dev/null || true' >> ${TMPPLIST} @${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/seamonkey/extensions/${XPI_ID}' >> ${TMPPLIST} - @(cd ${XPI_LIBDIR}; ${FIND} ${XPI_ID} -type d) | ${SORT} -r | \ - ${SED} -ne 's,^,@dirrm lib/xpi/,p' >> ${TMPPLIST} .endif .if ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} - @${MKDIR} ${XPI_LIBDIR}/${EM_ID} ${XPI_LIBDIR}/symlinks/${PORTNAME} - @(cd ${XPI_LIBDIR}/${EM_ID}; ${TAR} -xf ${EM_XPI_FILE}) - @${CHOWN} -R ${SHAREOWN}:${SHAREGRP} ${XPI_LIBDIR}/${EM_ID} - @${REINPLACE_CMD} -i "" "s/${EM_ORIG_ID}/${EM_ID}/" ${EM_ID_RFILES} - @${CHMOD} -R a+rX,go-w ${XPI_LIBDIR}/${EM_ID} - @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${LOCALBASE}/lib/${PORTNAME}/extensions 2>/dev/null || true - @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${XPI_LIBDIR}/symlinks/${PORTNAME} 2>/dev/null || true - @(cd ${XPI_LIBDIR}; ${FIND} ${EM_ID} -not -type d) | ${SORT} | \ - ${SED} -ne 's,^,lib/xpi/,p' >> ${TMPPLIST} - @${ECHO_CMD} 'lib/xpi/symlinks/${PORTNAME}/${EM_ID}' >> ${TMPPLIST} + @${MKDIR} ${STAGEDIR}${XPI_LIBDIR}/${EM_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/${PORTNAME} + @(cd ${STAGEDIR}${XPI_LIBDIR}/${EM_ID}; ${TAR} -xf ${EM_XPI_FILE}) + @${REINPLACE_CMD} -i "" "s/${EM_ORIG_ID}/${EM_ID}/" ${EM_ID_RFILES:S/^/${STAGEDIR}/g} + @${CHMOD} -R a+rX,go-w ${STAGEDIR}${XPI_LIBDIR}/${EM_ID} + @${LN} -sf ${XPI_LIBDIR}/${EM_ID} ${STAGEDIR}${XPI_LIBDIR}/symlinks/${PORTNAME} 2>/dev/null || true @${ECHO_CMD} '@exec ${LN} -sf %D/lib/xpi/${EM_ID} ${LOCALBASE}/lib/${PORTNAME}/extensions 2>/dev/null || true' >> ${TMPPLIST} @${ECHO_CMD} '@unexec ${RM} -f ${LOCALBASE}/lib/${PORTNAME}/extensions/${EM_ID}' >> ${TMPPLIST} - @(cd ${XPI_LIBDIR}; ${FIND} ${EM_ID} -type d) | ${SORT} -r | \ - ${SED} -ne 's,^,@dirrm lib/xpi/,p' >> ${TMPPLIST} -.endif -.if ${PORT_OPTIONS:MLIGHTNING} || ${PORT_OPTIONS:MMAILNEWS} && ${PORT_OPTIONS:MENIGMAIL} - @${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks/${PORTNAME} 2>/dev/null || true' >> ${TMPPLIST} - @${ECHO_CMD} '@unexec rmdir %D/lib/xpi/symlinks 2>/dev/null || true' >> ${TMPPLIST} - @${ECHO_CMD} '@unexec rmdir %D/lib/xpi 2>/dev/null || true' >> ${TMPPLIST} .endif .include <bsd.port.post.mk> diff --git a/www/seamonkey/files/patch-bug1013675 b/www/seamonkey/files/patch-bug1013675 new file mode 100644 index 000000000000..c8b0a6bf02d0 --- /dev/null +++ b/www/seamonkey/files/patch-bug1013675 @@ -0,0 +1,88 @@ +diff --git xpcom/base/nsDebugImpl.cpp xpcom/base/nsDebugImpl.cpp +index 13a286f..293bd73 100644 +--- mozilla/xpcom/base/nsDebugImpl.cpp ++++ mozilla/xpcom/base/nsDebugImpl.cpp +@@ -45,12 +45,43 @@ + #endif + #endif + +-#if defined(XP_MACOSX) ++#if defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \ ++ || defined(__NetBSD__) || defined(__OpenBSD__) + #include <stdbool.h> + #include <unistd.h> ++#include <sys/param.h> + #include <sys/sysctl.h> + #endif + ++#if defined(__OpenBSD__) ++#include <sys/proc.h> ++#endif ++ ++#if defined(__DragonFly__) || defined(__FreeBSD__) ++#include <sys/user.h> ++#endif ++ ++#if defined(__NetBSD__) ++#undef KERN_PROC ++#define KERN_PROC KERN_PROC2 ++#define KINFO_PROC struct kinfo_proc2 ++#else ++#define KINFO_PROC struct kinfo_proc ++#endif ++ ++#if defined(XP_MACOSX) ++#define KP_FLAGS kp_proc.p_flag ++#elif defined(__DragonFly__) ++#define KP_FLAGS kp_flags ++#elif defined(__FreeBSD__) ++#define KP_FLAGS ki_flag ++#elif defined(__OpenBSD__) && !defined(_P_TRACED) ++#define KP_FLAGS p_psflags ++#define P_TRACED PS_TRACED ++#else ++#define KP_FLAGS p_flag ++#endif ++ + #include "mozilla/mozalloc_abort.h" + + static void +@@ -144,16 +175,22 @@ nsDebugImpl::GetIsDebuggerAttached(bool* aResult) + + #if defined(XP_WIN) + *aResult = ::IsDebuggerPresent(); +-#elif defined(XP_MACOSX) ++#elif defined(XP_MACOSX) || defined(__DragonFly__) || defined(__FreeBSD__) \ ++ || defined(__NetBSD__) || defined(__OpenBSD__) + // Specify the info we're looking for +- int mib[4]; +- mib[0] = CTL_KERN; +- mib[1] = KERN_PROC; +- mib[2] = KERN_PROC_PID; +- mib[3] = getpid(); ++ int mib[] = { ++ CTL_KERN, ++ KERN_PROC, ++ KERN_PROC_PID, ++ getpid(), ++#if defined(__NetBSD__) || defined(__OpenBSD__) ++ sizeof(KINFO_PROC), ++ 1, ++#endif ++ }; + size_t mibSize = sizeof(mib) / sizeof(int); + +- struct kinfo_proc info; ++ KINFO_PROC info; + size_t infoSize = sizeof(info); + memset(&info, 0, infoSize); + +@@ -163,7 +200,7 @@ nsDebugImpl::GetIsDebuggerAttached(bool* aResult) + return NS_OK; + } + +- if (info.kp_proc.p_flag & P_TRACED) { ++ if (info.KP_FLAGS & P_TRACED) { + *aResult = true; + } + #endif diff --git a/www/seamonkey/files/patch-bug1015547 b/www/seamonkey/files/patch-bug1015547 new file mode 100644 index 000000000000..8e6189444b50 --- /dev/null +++ b/www/seamonkey/files/patch-bug1015547 @@ -0,0 +1,95 @@ +diff --git configure.in configure.in +index 7bed45f..053de17 100644 +--- mozilla/configure.in ++++ mozilla/configure.in +@@ -2950,7 +2950,7 @@ dnl Checks for library functions. + dnl ======================================================== + AC_PROG_GCC_TRADITIONAL + AC_FUNC_MEMCMP +-AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r) ++AC_CHECK_FUNCS(stat64 lstat64 truncate64 statvfs64 statvfs statfs64 statfs getpagesize localtime_r arc4random arc4random_buf) + + dnl check for clock_gettime(), the CLOCK_MONOTONIC clock + AC_CACHE_CHECK(for clock_gettime(CLOCK_MONOTONIC), +diff --git xpcom/base/nsUUIDGenerator.cpp xpcom/base/nsUUIDGenerator.cpp +index 0687344..ca3ff8b 100644 +--- mozilla/xpcom/base/nsUUIDGenerator.cpp ++++ mozilla/xpcom/base/nsUUIDGenerator.cpp +@@ -15,6 +15,10 @@ + + #include "nsUUIDGenerator.h" + ++#ifdef ANDROID ++extern "C" NS_EXPORT void arc4random_buf(void *, size_t); ++#endif ++ + using namespace mozilla; + + NS_IMPL_ISUPPORTS1(nsUUIDGenerator, nsIUUIDGenerator) +@@ -34,7 +38,7 @@ nsUUIDGenerator::Init() + // We're a service, so we're guaranteed that Init() is not going + // to be reentered while we're inside Init(). + +-#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(ANDROID) ++#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(HAVE_ARC4RANDOM) + /* initialize random number generator using NSPR random noise */ + unsigned int seed; + +@@ -67,7 +71,7 @@ nsUUIDGenerator::Init() + return NS_ERROR_FAILURE; + #endif + +-#endif /* non XP_WIN and non XP_MACOSX */ ++#endif /* non XP_WIN and non XP_MACOSX and non ARC4RANDOM */ + + return NS_OK; + } +@@ -114,13 +118,16 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsID* id) + * back to it; instead, we use the value returned when we called + * initstate, since older glibc's have broken setstate() return values + */ +-#ifndef ANDROID ++#ifndef HAVE_ARC4RANDOM + setstate(mState); + #endif + ++#ifdef HAVE_ARC4RANDOM_BUF ++ arc4random_buf(id, sizeof(nsID)); ++#else /* HAVE_ARC4RANDOM_BUF */ + size_t bytesLeft = sizeof(nsID); + while (bytesLeft > 0) { +-#ifdef ANDROID ++#ifdef HAVE_ARC4RANDOM + long rval = arc4random(); + const size_t mRBytes = 4; + #else +@@ -141,6 +148,7 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsID* id) + + bytesLeft -= toWrite; + } ++#endif /* HAVE_ARC4RANDOM_BUF */ + + /* Put in the version */ + id->m2 &= 0x0fff; +@@ -150,7 +158,7 @@ nsUUIDGenerator::GenerateUUIDInPlace(nsID* id) + id->m3[0] &= 0x3f; + id->m3[0] |= 0x80; + +-#ifndef ANDROID ++#ifndef HAVE_ARC4RANDOM + /* Restore the previous RNG state */ + setstate(mSavedState); + #endif +diff --git xpcom/base/nsUUIDGenerator.h xpcom/base/nsUUIDGenerator.h +index 6a24212..68ed6f2 100644 +--- mozilla/xpcom/base/nsUUIDGenerator.h ++++ mozilla/xpcom/base/nsUUIDGenerator.h +@@ -27,7 +27,7 @@ private: + protected: + + mozilla::Mutex mLock; +-#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(ANDROID) ++#if !defined(XP_WIN) && !defined(XP_MACOSX) && !defined(HAVE_ARC4RANDOM) + char mState[128]; + char *mSavedState; + uint8_t mRBytes; diff --git a/www/seamonkey/files/patch-bug916589 b/www/seamonkey/files/patch-bug916589 index c6aef052c4ce..3c24bf7ef332 100644 --- a/www/seamonkey/files/patch-bug916589 +++ b/www/seamonkey/files/patch-bug916589 @@ -2,17 +2,8 @@ diff --git media/mtransport/third_party/nrappkit/src/port/generic/include/sys/qu index 5b50785..7cf47d5 100644 --- mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h +++ mozilla/media/mtransport/third_party/nrappkit/src/port/generic/include/sys/queue.h -@@ -31,11 +31,18 @@ - */ - --#ifndef _SYS_QUEUE_H_ -+#if (defined(BSD) && !defined(__OpenBSD__)) || defined(DARWIN) -+#include_next <sys/queue.h> -+# if defined(__DragonFly__) -+#define STAILQ_FOREACH_SAFE STAILQ_FOREACH_MUTABLE -+#define TAILQ_FOREACH_SAFE TAILQ_FOREACH_MUTABLE -+# endif -+#elif !defined(_SYS_QUEUE_H_) +@@ -33,9 +33,10 @@ + #ifndef _SYS_QUEUE_H_ #define _SYS_QUEUE_H_ -#if !defined(__FreeBSD__) && !defined(DARWIN) @@ -24,7 +15,7 @@ index 5b50785..7cf47d5 100644 #endif #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ -@@ -43,8 +46,6 @@ +@@ -43,8 +44,6 @@ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ (var) = (tvar)) @@ -33,7 +24,7 @@ index 5b50785..7cf47d5 100644 /* * This file defines four types of data structures: singly-linked lists, * singly-linked tail queues, lists and tail queues. -@@ -285,7 +286,7 @@ struct { \ +@@ -285,7 +284,7 @@ struct { \ (STAILQ_EMPTY((head)) ? \ NULL : \ ((struct type *) \ diff --git a/www/seamonkey/files/patch-bug975397 b/www/seamonkey/files/patch-bug975397 new file mode 100644 index 000000000000..69e87cef0dc3 --- /dev/null +++ b/www/seamonkey/files/patch-bug975397 @@ -0,0 +1,73 @@ +commit 2fe45fb +Author: L. David Baron <dbaron@dbaron.org> +Date: Wed Apr 2 22:56:19 2014 -0700 + + Bug 975397 - Call TrackImage when constructing a new nsStyleBorder. r=heycam + + I confirmed that the crashtest crashes in the harness without the patch. + + --HG-- + rename : layout/reftests/backgrounds/blue-32x32.png => layout/style/crashtests/blue-32x32.png +--- + layout/base/nsCSSRendering.cpp | 9 +++++++++ + layout/style/crashtests/blue-32x32.png | Bin 0 -> 110 bytes + layout/style/crashtests/border-image-visited-link.html | 10 ++++++++++ + layout/style/crashtests/crashtests.list | 1 + + 4 files changed, 20 insertions(+) + +diff --git layout/base/nsCSSRendering.cpp layout/base/nsCSSRendering.cpp +index d91309b..2d8bb46 100644 +--- mozilla/layout/base/nsCSSRendering.cpp ++++ mozilla/layout/base/nsCSSRendering.cpp +@@ -419,6 +419,10 @@ nsCSSRendering::PaintBorder(nsPresContext* aPresContext, + } + + nsStyleBorder newStyleBorder(*styleBorder); ++ // We could do something fancy to avoid the TrackImage/UntrackImage ++ // work, but it doesn't seem worth it. (We need to call TrackImage ++ // since we're not going through nsRuleNode::ComputeBorderData.) ++ newStyleBorder.TrackImage(aPresContext); + + NS_FOR_CSS_SIDES(side) { + newStyleBorder.SetBorderColor(side, +@@ -428,6 +432,11 @@ nsCSSRendering::PaintBorder(nsPresContext* aPresContext, + PaintBorderWithStyleBorder(aPresContext, aRenderingContext, aForFrame, + aDirtyRect, aBorderArea, newStyleBorder, + aStyleContext, aSkipSides); ++ ++ // We could do something fancy to avoid the TrackImage/UntrackImage ++ // work, but it doesn't seem worth it. (We need to call UntrackImage ++ // since we're not going through nsStyleBorder::Destroy.) ++ newStyleBorder.UntrackImage(aPresContext); + } + + void +diff --git layout/style/crashtests/blue-32x32.png layout/style/crashtests/blue-32x32.png +new file mode 100644 +index 0000000..deefd19 +Binary files /dev/null and layout/style/crashtests/blue-32x32.png differ +diff --git layout/style/crashtests/border-image-visited-link.html layout/style/crashtests/border-image-visited-link.html +new file mode 100644 +index 0000000..b6e3ae5 +--- /dev/null ++++ mozilla/layout/style/crashtests/border-image-visited-link.html +@@ -0,0 +1,10 @@ ++<!DOCTYPE HTML> ++<title>border-image on link with visited styles</title> ++<style> ++ ++:link { color: blue } ++:visited { color: purple } ++:link, :visited { border: medium solid; border-image: url(blue-32x32.png) 4 4 4 4; } ++ ++</style> ++<a href="http://example.com/">test</a> +diff --git layout/style/crashtests/crashtests.list layout/style/crashtests/crashtests.list +index e414f28..acd709c3 100644 +--- mozilla/layout/style/crashtests/crashtests.list ++++ mozilla/layout/style/crashtests/crashtests.list +@@ -102,3 +102,4 @@ load 930270-1.html + load 930270-2.html + load 945048-1.html + load 989965-1.html ++load border-image-visited-link.html diff --git a/www/seamonkey/files/patch-z-bug517422 b/www/seamonkey/files/patch-z-bug517422 index 82e453baca96..15728f8cb66e 100644 --- a/www/seamonkey/files/patch-z-bug517422 +++ b/www/seamonkey/files/patch-z-bug517422 @@ -180,7 +180,7 @@ index 87db361..7947626 100644 dnl = Disable Opus audio codec support dnl ======================================================== MOZ_ARG_DISABLE_BOOL(opus, -@@ -5219,6 +5274,76 @@ MOZ_ARG_DISABLE_BOOL(opus, +@@ -5219,6 +5274,97 @@ MOZ_ARG_DISABLE_BOOL(opus, MOZ_OPUS=1) dnl ======================================================== @@ -247,6 +247,27 @@ index 87db361..7947626 100644 + +if test -n "$MOZ_NATIVE_SOUNDTOUCH"; then + PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.7.0) ++ ++ AC_LANG_SAVE ++ AC_LANG_CPLUSPLUS ++ _SAVE_CXXFLAGS=$CXXFLAGS ++ CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS" ++ AC_CACHE_CHECK(for soundtouch sample type, ++ ac_cv_soundtouch_sample_type, ++ [AC_TRY_COMPILE([#include <SoundTouch.h> ++ #ifndef SOUNDTOUCH_INTEGER_SAMPLES ++ #error soundtouch expects float samples ++ #endif], ++ [], ++ [ac_cv_soundtouch_sample_type=short], ++ [ac_cv_soundtouch_sample_type=float])]) ++ CXXFLAGS=$_SAVE_CXXFLAGS ++ AC_LANG_RESTORE ++ ++ if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \ ++ -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then ++ AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.]) ++ fi +fi + +AC_SUBST(MOZ_NATIVE_SOUNDTOUCH) |