aboutsummaryrefslogtreecommitdiff
path: root/www/libxul
diff options
context:
space:
mode:
authorJoe Marcus Clarke <marcus@FreeBSD.org>2009-04-12 03:30:29 +0000
committerJoe Marcus Clarke <marcus@FreeBSD.org>2009-04-12 03:30:29 +0000
commit69fe7c5867226a5f8b5c056ec0c5336363cbb7e4 (patch)
tree534f7f8acbf471417bd27e8c0cbe4cc3b560df01 /www/libxul
parentab89a0bdbe5d83e6de42f6b778a34f670ad3b172 (diff)
downloadports-69fe7c5867226a5f8b5c056ec0c5336363cbb7e4.tar.gz
ports-69fe7c5867226a5f8b5c056ec0c5336363cbb7e4.zip
Notes
Diffstat (limited to 'www/libxul')
-rw-r--r--www/libxul/Makefile8
-rw-r--r--www/libxul/files/patch-content_xslt_public_txDouble.h20
-rw-r--r--www/libxul/files/patch-db_sqlite3_src_Makefile.in11
-rw-r--r--www/libxul/files/patch-js_src_jsnum.c28
-rw-r--r--www/libxul/files/patch-layout-style-nsCSSValue.h215
-rw-r--r--www/libxul/files/patch-layout_generic_Makefile.in14
-rw-r--r--www/libxul/files/patch-security_manager_ssl_src_nsNSSComponent.cpp10
-rw-r--r--www/libxul/files/patch-storage_build_Makefile.in10
-rw-r--r--www/libxul/files/patch-toolkit-components-history-src-nsGlobalHistory.cpp24
-rw-r--r--www/libxul/files/patch-toolkit-components-places-src-nsMorkHistoryImporter.cpp17
-rw-r--r--www/libxul/files/patch-toolkit-components-url-classifier-src-nsUrlClassifierDBService.cpp28
-rw-r--r--www/libxul/files/patch-xpfe-components-history-src-nsGlobalHistory.cpp24
12 files changed, 408 insertions, 1 deletions
diff --git a/www/libxul/Makefile b/www/libxul/Makefile
index e58782500d39..6788522ebb98 100644
--- a/www/libxul/Makefile
+++ b/www/libxul/Makefile
@@ -8,7 +8,7 @@
PORTNAME= libxul
PORTVERSION= 1.9.0.7
-PORTREVISION?= 2
+PORTREVISION?= 3
CATEGORIES?= www devel
MASTER_SITES= ${MASTER_SITE_MOZILLA}
MASTER_SITE_SUBDIR= xulrunner/releases/${PORTVERSION}/source/
@@ -30,6 +30,7 @@ ALL_TARGET= default
HAS_CONFIGURE= yes
USE_BZIP2= yes
USE_GMAKE= yes
+MAKE_ENV= SKIP_GRE_REGISTRATION=1
LDFLAGS+= -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}
PORT_MOZCONFIG= ${WRKSRC}/xulrunner/config/mozconfig
@@ -47,6 +48,11 @@ MOZ_PKGCONFIG_FILES= libxul-embedding-unstable libxul-embedding \
libxul-unstable libxul mozilla-gtkmozembed-embedding \
mozilla-gtkmozembed mozilla-js mozilla-nss mozilla-plugin
+post-patch:
+ ${REINPLACE_CMD} -e 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS:C/-pthread/${GECKO_PTHREAD_LIBS}/}|' \
+ ${WRKSRC}/storage/build/Makefile.in \
+ ${WRKSRC}/db/sqlite3/src/Makefile.in
+
post-build:
@${REINPLACE_CMD} -e "s|\(Libs:.*\)\($$\)|\1 -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}\2| ; \
s|%sdkdir%|%sdkdir%/sdk|g ; \
diff --git a/www/libxul/files/patch-content_xslt_public_txDouble.h b/www/libxul/files/patch-content_xslt_public_txDouble.h
new file mode 100644
index 000000000000..534bccba48be
--- /dev/null
+++ b/www/libxul/files/patch-content_xslt_public_txDouble.h
@@ -0,0 +1,20 @@
+--- content/xslt/public/txDouble.h.orig Fri Oct 13 00:00:29 2006
++++ content/xslt/public/txDouble.h Fri Oct 13 00:00:53 2006
+@@ -41,7 +41,7 @@
+ #define __txdouble_h__
+
+ //A trick to handle IEEE floating point exceptions on FreeBSD - E.D.
+-#ifdef __FreeBSD__
++/* #ifdef __FreeBSD__
+ #include <ieeefp.h>
+ #ifdef __alpha__
+ fp_except_t allmask = FP_X_INV|FP_X_OFL|FP_X_UFL|FP_X_DZ|FP_X_IMP;
+@@ -50,7 +50,7 @@
+ #endif
+ fp_except_t oldmask = fpsetmask(~allmask);
+ #endif
+-
++*/
+ /**
+ * Macros to workaround math-bugs bugs in various platforms
+ */
diff --git a/www/libxul/files/patch-db_sqlite3_src_Makefile.in b/www/libxul/files/patch-db_sqlite3_src_Makefile.in
new file mode 100644
index 000000000000..71b84da6d4c2
--- /dev/null
+++ b/www/libxul/files/patch-db_sqlite3_src_Makefile.in
@@ -0,0 +1,11 @@
+--- db/sqlite3/src/Makefile.in.orig 2008-06-19 11:03:17.000000000 -0500
++++ db/sqlite3/src/Makefile.in 2008-06-19 11:04:15.000000000 -0500
+@@ -45,6 +45,8 @@
+
+ include $(DEPTH)/config/autoconf.mk
+
++OS_CFLAGS = -I../../../dist/include/sqlite3
++OS_LIBS = %%PTHREAD_LIBS%%
+ MODULE = sqlite3
+ LIBRARY_NAME = sqlite3
+ FORCE_SHARED_LIB = 1
diff --git a/www/libxul/files/patch-js_src_jsnum.c b/www/libxul/files/patch-js_src_jsnum.c
new file mode 100644
index 000000000000..a3ef2769ab9c
--- /dev/null
+++ b/www/libxul/files/patch-js_src_jsnum.c
@@ -0,0 +1,28 @@
+--- js/src/jsnum.c.orig Sun Nov 5 18:37:07 2006
++++ js/src/jsnum.c Sun Nov 5 18:42:31 2006
+@@ -45,6 +45,9 @@
+ #if defined(XP_WIN) || defined(XP_OS2)
+ #include <float.h>
+ #endif
++#if defined(__FreeBSD__)
++#include <sys/param.h>
++#endif
+ #include <locale.h>
+ #include <limits.h>
+ #include <math.h>
+@@ -532,7 +535,15 @@ static jsdouble NaN;
+
+ #else
+
++#if defined(__FreeBSD__) && __FreeBSD_version >= 601000
++#include <fenv.h>
++#define FIX_FPU() (fedisableexcept(FE_ALL_EXCEPT))
++
++#else
++
+ #define FIX_FPU() ((void)0)
++
++#endif /* defined(__FreeBSD__) && __FreeBSD_version >= 503000 */
+
+ #endif
+
diff --git a/www/libxul/files/patch-layout-style-nsCSSValue.h b/www/libxul/files/patch-layout-style-nsCSSValue.h
new file mode 100644
index 000000000000..eb6793f08a77
--- /dev/null
+++ b/www/libxul/files/patch-layout-style-nsCSSValue.h
@@ -0,0 +1,215 @@
+# Ensure correct alignment for nsCSSValue objects inside nsCSSValue::Array.
+# (Bug 476345)
+
+--- layout/style/nsCSSValue.h.orig 2008-07-02 00:51:43.000000000 +0200
++++ layout/style/nsCSSValue.h 2009-02-01 21:43:29.000000000 +0100
+@@ -286,104 +286,7 @@
+ // failure.
+ static nsStringBuffer* BufferFromString(const nsString& aValue);
+
+- struct Array {
+-
+- // return |Array| with reference count of zero
+- static Array* Create(PRUint16 aItemCount) {
+- return new (aItemCount) Array(aItemCount);
+- }
+-
+- nsCSSValue& operator[](PRUint16 aIndex) {
+- NS_ASSERTION(aIndex < mCount, "out of range");
+- return *(First() + aIndex);
+- }
+-
+- const nsCSSValue& operator[](PRUint16 aIndex) const {
+- NS_ASSERTION(aIndex < mCount, "out of range");
+- return *(First() + aIndex);
+- }
+-
+- nsCSSValue& Item(PRUint16 aIndex) { return (*this)[aIndex]; }
+- const nsCSSValue& Item(PRUint16 aIndex) const { return (*this)[aIndex]; }
+-
+- PRUint16 Count() const { return mCount; }
+-
+- PRBool operator==(const Array& aOther) const
+- {
+- if (mCount != aOther.mCount)
+- return PR_FALSE;
+- for (PRUint16 i = 0; i < mCount; ++i)
+- if ((*this)[i] != aOther[i])
+- return PR_FALSE;
+- return PR_TRUE;
+- }
+-
+- void AddRef() {
+- if (mRefCnt == PR_UINT16_MAX) {
+- NS_WARNING("refcount overflow, leaking nsCSSValue::Array");
+- return;
+- }
+- ++mRefCnt;
+- NS_LOG_ADDREF(this, mRefCnt, "nsCSSValue::Array", sizeof(*this));
+- }
+- void Release() {
+- if (mRefCnt == PR_UINT16_MAX) {
+- NS_WARNING("refcount overflow, leaking nsCSSValue::Array");
+- return;
+- }
+- --mRefCnt;
+- NS_LOG_RELEASE(this, mRefCnt, "nsCSSValue::Array");
+- if (mRefCnt == 0)
+- delete this;
+- }
+-
+- private:
+-
+- PRUint16 mRefCnt;
+- PRUint16 mCount;
+-
+- void* operator new(size_t aSelfSize, PRUint16 aItemCount) CPP_THROW_NEW {
+- return ::operator new(aSelfSize + sizeof(nsCSSValue)*aItemCount);
+- }
+-
+- void operator delete(void* aPtr) { ::operator delete(aPtr); }
+-
+- nsCSSValue* First() {
+- return (nsCSSValue*) (((char*)this) + sizeof(*this));
+- }
+-
+- const nsCSSValue* First() const {
+- return (const nsCSSValue*) (((const char*)this) + sizeof(*this));
+- }
+-
+-#define CSSVALUE_LIST_FOR_VALUES(var) \
+- for (nsCSSValue *var = First(), *var##_end = var + mCount; \
+- var != var##_end; ++var)
+-
+- Array(PRUint16 aItemCount)
+- : mRefCnt(0)
+- , mCount(aItemCount)
+- {
+- MOZ_COUNT_CTOR(nsCSSValue::Array);
+- CSSVALUE_LIST_FOR_VALUES(val) {
+- new (val) nsCSSValue();
+- }
+- }
+-
+- ~Array()
+- {
+- MOZ_COUNT_DTOR(nsCSSValue::Array);
+- CSSVALUE_LIST_FOR_VALUES(val) {
+- val->~nsCSSValue();
+- }
+- }
+-
+-#undef CSSVALUE_LIST_FOR_VALUES
+-
+- private:
+- Array(const Array& aOther); // not to be implemented
+- };
+-
++ struct Array;
+ struct URL {
+ // Methods are not inline because using an nsIPrincipal means requiring
+ // caps, which leads to REQUIRES hell, since this header is included all
+@@ -454,5 +357,102 @@
+ } mValue;
+ };
+
+-#endif /* nsCSSValue_h___ */
++struct nsCSSValue::Array {
++
++ // return |Array| with reference count of zero
++ static Array* Create(PRUint16 aItemCount) {
++ return new (aItemCount) Array(aItemCount);
++ }
++
++ nsCSSValue& operator[](PRUint16 aIndex) {
++ NS_ASSERTION(aIndex < mCount, "out of range");
++ return mArray[aIndex];
++ }
++
++ const nsCSSValue& operator[](PRUint16 aIndex) const {
++ NS_ASSERTION(aIndex < mCount, "out of range");
++ return mArray[aIndex];
++ }
++
++ nsCSSValue& Item(PRUint16 aIndex) { return (*this)[aIndex]; }
++ const nsCSSValue& Item(PRUint16 aIndex) const { return (*this)[aIndex]; }
++
++ PRUint16 Count() const { return mCount; }
++
++ PRBool operator==(const Array& aOther) const
++ {
++ if (mCount != aOther.mCount)
++ return PR_FALSE;
++ for (PRUint16 i = 0; i < mCount; ++i)
++ if ((*this)[i] != aOther[i])
++ return PR_FALSE;
++ return PR_TRUE;
++ }
++
++ void AddRef() {
++ if (mRefCnt == PR_UINT16_MAX) {
++ NS_WARNING("refcount overflow, leaking nsCSSValue::Array");
++ return;
++ }
++ ++mRefCnt;
++ NS_LOG_ADDREF(this, mRefCnt, "nsCSSValue::Array", sizeof(*this));
++ }
++ void Release() {
++ if (mRefCnt == PR_UINT16_MAX) {
++ NS_WARNING("refcount overflow, leaking nsCSSValue::Array");
++ return;
++ }
++ --mRefCnt;
++ NS_LOG_RELEASE(this, mRefCnt, "nsCSSValue::Array");
++ if (mRefCnt == 0)
++ delete this;
++ }
++
++private:
++
++ PRUint16 mRefCnt;
++ const PRUint16 mCount;
++ // This must be the last sub-object, since we extend this array to
++ // be of size mCount; it needs to be a sub-object so it gets proper
++ // alignment.
++ nsCSSValue mArray[1];
+
++ void* operator new(size_t aSelfSize, PRUint16 aItemCount) CPP_THROW_NEW {
++ return ::operator new(aSelfSize + sizeof(nsCSSValue) * (aItemCount - 1));
++ }
++
++ void operator delete(void* aPtr) { ::operator delete(aPtr); }
++
++ nsCSSValue* First() { return mArray; }
++
++ const nsCSSValue* First() const { return mArray; }
++
++#define CSSVALUE_LIST_FOR_EXTRA_VALUES(var) \
++for (nsCSSValue *var = First() + 1, *var##_end = First() + mCount; \
++ var != var##_end; ++var)
++
++ Array(PRUint16 aItemCount)
++ : mRefCnt(0)
++ , mCount(aItemCount)
++ {
++ MOZ_COUNT_CTOR(nsCSSValue::Array);
++ CSSVALUE_LIST_FOR_EXTRA_VALUES(val) {
++ new (val) nsCSSValue();
++ }
++ }
++
++ ~Array()
++ {
++ MOZ_COUNT_DTOR(nsCSSValue::Array);
++ CSSVALUE_LIST_FOR_EXTRA_VALUES(val) {
++ val->~nsCSSValue();
++ }
++ }
++
++#undef CSSVALUE_LIST_FOR_VALUES
++
++private:
++ Array(const Array& aOther); // not to be implemented
++};
++
++#endif /* nsCSSValue_h___ */
diff --git a/www/libxul/files/patch-layout_generic_Makefile.in b/www/libxul/files/patch-layout_generic_Makefile.in
new file mode 100644
index 000000000000..038b5df63eed
--- /dev/null
+++ b/www/libxul/files/patch-layout_generic_Makefile.in
@@ -0,0 +1,14 @@
+--- layout/generic/Makefile.in.orig 2008-06-19 12:29:06.000000000 -0500
++++ layout/generic/Makefile.in 2008-06-19 12:30:04.000000000 -0500
+@@ -188,9 +188,10 @@
+ -I$(srcdir)/../../content/base/src \
+ -I$(srcdir)/../../content/html/content/src \
+ -I$(srcdir)/../../dom/src/base \
+- $(MOZ_CAIRO_CFLAGS) \
+ $(NULL)
+
++CXXFLAGS += $(MOZ_CAIRO_CFLAGS)
++
+ ifdef MOZ_ENABLE_GTK2
+ CXXFLAGS += $(MOZ_GTK2_CFLAGS)
+ endif
diff --git a/www/libxul/files/patch-security_manager_ssl_src_nsNSSComponent.cpp b/www/libxul/files/patch-security_manager_ssl_src_nsNSSComponent.cpp
new file mode 100644
index 000000000000..f30d12229ccd
--- /dev/null
+++ b/www/libxul/files/patch-security_manager_ssl_src_nsNSSComponent.cpp
@@ -0,0 +1,10 @@
+--- security/manager/ssl/src/nsNSSComponent.cpp.orig Mon May 29 23:10:54 2006
++++ security/manager/ssl/src/nsNSSComponent.cpp Mon May 29 23:12:22 2006
+@@ -110,6 +110,7 @@
+ #include "nss.h"
+ #include "pk11func.h"
+ #include "ssl.h"
++#define NSS_ENABLE_ECC 1
+ #include "sslproto.h"
+ #include "secmod.h"
+ #include "sechash.h"
diff --git a/www/libxul/files/patch-storage_build_Makefile.in b/www/libxul/files/patch-storage_build_Makefile.in
new file mode 100644
index 000000000000..18202a5a61d8
--- /dev/null
+++ b/www/libxul/files/patch-storage_build_Makefile.in
@@ -0,0 +1,10 @@
+--- storage/build/Makefile.in.orig Tue Feb 21 11:18:56 2006
++++ storage/build/Makefile.in Sun Nov 5 16:16:06 2006
+@@ -77,6 +77,7 @@
+ $(EXTRA_DSO_LIBS) \
+ $(MOZ_COMPONENT_LIBS) \
+ $(MOZ_JS_LIBS) \
++ %%PTHREAD_LIBS%% \
+ $(NULL)
+
+ include $(topsrcdir)/config/rules.mk
diff --git a/www/libxul/files/patch-toolkit-components-history-src-nsGlobalHistory.cpp b/www/libxul/files/patch-toolkit-components-history-src-nsGlobalHistory.cpp
new file mode 100644
index 000000000000..1cefba669bf1
--- /dev/null
+++ b/www/libxul/files/patch-toolkit-components-history-src-nsGlobalHistory.cpp
@@ -0,0 +1,24 @@
+--- toolkit/components/history/src/nsGlobalHistory.cpp.orig 2006-02-02 20:55:17.000000000 +0100
++++ toolkit/components/history/src/nsGlobalHistory.cpp
+@@ -322,7 +322,9 @@ matchAgeInDaysCallback(nsIMdbRow *row, v
+ if (err != 0) return PR_FALSE;
+
+ PRTime rowDate;
+- PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &rowDate);
++ long long ld;
++ PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &ld);
++ rowDate = ld;
+
+ PRInt32 days = GetAgeInDays(matchSearchTerm->now, rowDate);
+
+@@ -1067,7 +1069,9 @@ nsGlobalHistory::GetRowValue(nsIMdbRow *
+ if (!yarn.mYarn_Fill || !yarn.mYarn_Buf)
+ return NS_OK;
+
+- PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", aResult);
++ long long ld;
++ PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &ld);
++ *aResult = ld;
+
+ return NS_OK;
+ }
diff --git a/www/libxul/files/patch-toolkit-components-places-src-nsMorkHistoryImporter.cpp b/www/libxul/files/patch-toolkit-components-places-src-nsMorkHistoryImporter.cpp
new file mode 100644
index 000000000000..8d6955be7f59
--- /dev/null
+++ b/www/libxul/files/patch-toolkit-components-places-src-nsMorkHistoryImporter.cpp
@@ -0,0 +1,17 @@
+--- toolkit/components/places/src/nsMorkHistoryImporter.cpp.orig 2008-03-19 20:30:49.000000000 +0100
++++ toolkit/components/places/src/nsMorkHistoryImporter.cpp 2008-12-17 09:38:05.000000000 +0100
+@@ -148,9 +148,12 @@ AddToHistoryCB(const nsCSubstring &aRowI
+ }
+
+ PRTime date;
+- if (PR_sscanf(values[kLastVisitColumn].get(), "%lld", &date) != 1) {
++ long long ld;
++ if (PR_sscanf(values[kLastVisitColumn].get(), "%lld", &ld) != 1) {
+ date = -1;
+- }
++ } else {
++ date = ld;
++ }
+
+ PRBool isTyped = values[kTypedColumn].EqualsLiteral("1");
+ PRInt32 transition = isTyped ?
diff --git a/www/libxul/files/patch-toolkit-components-url-classifier-src-nsUrlClassifierDBService.cpp b/www/libxul/files/patch-toolkit-components-url-classifier-src-nsUrlClassifierDBService.cpp
new file mode 100644
index 000000000000..09a9e6035e60
--- /dev/null
+++ b/www/libxul/files/patch-toolkit-components-url-classifier-src-nsUrlClassifierDBService.cpp
@@ -0,0 +1,28 @@
+# reported upstream as: https://bugzilla.mozilla.org/show_bug.cgi?id=469276
+
+--- toolkit/components/url-classifier/src/nsUrlClassifierDBService.cpp.orig 2008-08-25 22:59:14.000000000 +0200
++++ toolkit/components/url-classifier/src/nsUrlClassifierDBService.cpp 2008-12-12 16:31:11.000000000 +0100
+@@ -2023,8 +2023,9 @@
+ return NS_ERROR_FAILURE;
+ }
+ const nsCSubstring& str = Substring(chunk, start, 4);
+- const PRUint32 *p = reinterpret_cast<const PRUint32*>(str.BeginReading());
+- entry->mAddChunkId = PR_ntohl(*p);
++ PRUint32 p;
++ memcpy(&p, str.BeginReading(), 4);
++ entry->mAddChunkId = PR_ntohl(p);
+ if (entry->mAddChunkId == 0) {
+ NS_WARNING("Received invalid chunk number.");
+ return NS_ERROR_FAILURE;
+@@ -2052,8 +2053,9 @@
+
+ if (chunkType == CHUNK_SUB) {
+ const nsCSubstring& str = Substring(chunk, start, 4);
+- const PRUint32 *p = reinterpret_cast<const PRUint32*>(str.BeginReading());
+- entry->mAddChunkId = PR_ntohl(*p);
++ PRUint32 p;
++ memcpy(&p, str.BeginReading(), 4);
++ entry->mAddChunkId = PR_ntohl(p);
+ if (entry->mAddChunkId == 0) {
+ NS_WARNING("Received invalid chunk number.");
+ return NS_ERROR_FAILURE;
diff --git a/www/libxul/files/patch-xpfe-components-history-src-nsGlobalHistory.cpp b/www/libxul/files/patch-xpfe-components-history-src-nsGlobalHistory.cpp
new file mode 100644
index 000000000000..ee3eede144f1
--- /dev/null
+++ b/www/libxul/files/patch-xpfe-components-history-src-nsGlobalHistory.cpp
@@ -0,0 +1,24 @@
+--- xpfe/components/history/src/nsGlobalHistory.cpp.orig 2007-12-03 05:25:14.000000000 +0100
++++ xpfe/components/history/src/nsGlobalHistory.cpp
+@@ -304,7 +304,9 @@ matchAgeInDaysCallback(nsIMdbRow *row, v
+ if (err != 0) return PR_FALSE;
+
+ PRTime rowDate;
+- PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &rowDate);
++ long long ld;
++ PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &ld);
++ rowDate = ld;
+
+ PRInt32 days = matchSearchTerm->globalHist->GetAgeInDays(rowDate);
+
+@@ -1000,7 +1002,9 @@ nsGlobalHistory::GetRowValue(nsIMdbRow *
+ if (!yarn.mYarn_Fill || !yarn.mYarn_Buf)
+ return NS_OK;
+
+- PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", aResult);
++ long long ld;
++ PR_sscanf((const char*)yarn.mYarn_Buf, "%lld", &ld);
++ *aResult = ld;
+
+ return NS_OK;
+ }