Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Nov 2010 21:13:01 GMT
From:      svn-freebsd-gecko@chruetertee.ch
To:        freebsd-gecko@freebsd.org
Subject:   [SVN-Commit] r430 - in branches/experimental/www/firefox-devel: . files
Message-ID:  <201011022113.oA2LD12f028438@trillian.chruetertee.ch>

next in thread | raw e-mail | index | archive | help
Author: beat
Date: Tue Nov  2 21:13:01 2010
New Revision: 430

Log:
- Remove libsydney_oss patch as it does not build and nobody is working 
  on a fix.
- Remove extrapatch-ipc-chromium patch and OOPP_IPC option as it does not
  work and nobody is working on get this running.
- Add patches from Firefox 3.6 to fix build with recent gcc versions. It
  still does not build with gcc44+.
- Add PGO option to enable Profile-Guided Optimization [1]. Thanks to jsa@
  for bring this pr to my attention. Building this port with PGO speed up
  Firefox noticeable in my environment.


PR:		ports/132231 [1] (based on)
Submitted by:	lioux@ [1]

Added:
   branches/experimental/www/firefox-devel/files/mozconfig-profile_guided_optimization.in
   branches/experimental/www/firefox-devel/files/patch-toolkit_library_Makefile.in
   branches/experimental/www/firefox-devel/files/patch-xpcom_base_nsStackWalk.cpp
Deleted:
   branches/experimental/www/firefox-devel/files/extrapatch-ipc-chromium
   branches/experimental/www/firefox-devel/files/libsydney_oss
Modified:
   branches/experimental/www/firefox-devel/Makefile
   branches/experimental/www/firefox-devel/files/patch-js_src_jsnum.cpp

Modified: branches/experimental/www/firefox-devel/Makefile
==============================================================================
--- branches/experimental/www/firefox-devel/Makefile	Mon Nov  1 17:44:52 2010	(r429)
+++ branches/experimental/www/firefox-devel/Makefile	Tue Nov  2 21:13:01 2010	(r430)
@@ -46,24 +46,17 @@
 		--enable-svg --enable-svg-renderer=cairo \
 		--enable-application=browser \
 		--enable-official-branding --disable-updater \
-		--enable-canvas --enable-libxul --disable-necko-wifi
+		--enable-canvas --enable-libxul --disable-necko-wifi \
+		--disable-ipc
 
 OPTIONS=	DBUS "Enable D-BUS support" on \
+		PGO "Enable Profile-Guided Optimization" off \
 		SMB "Enable smb:// URI support using gnomevfs" off
 
 .include <bsd.port.pre.mk>
 
 .if ${OSVERSION} < 700000
 BROKEN=		Does not build
-#.else
-#EXTRA_PATCHES=	${FILESDIR}/libsydney_oss
-.endif
-
-.if defined(WITH_OOPP_IPC)
-LIB_DEPENDS+=	execinfo.1:${PORTSDIR}/devel/libexecinfo
-EXTRA_PATCHES+=	${FILESDIR}/extrapatch-ipc-chromium
-.else
-MOZ_OPTIONS+=	--disable-ipc
 .endif
 
 WRKSRC:=	${WRKSRC}-central
@@ -84,9 +77,28 @@
 		notify.1:${PORTSDIR}/devel/libnotify
 .endif
 
-pre-patch:
-.if defined(WITH_OOPP_IPC)
-	@${MKDIR} ${WRKSRC}/ipc/chromium/src/third_party/libevent/freebsd
+.if defined(WITH_PGO)
+BUILD_DEPENDS+=	${PYTHON_SITELIBDIR}/_sqlite3.so:${PORTSDIR}/databases/py-sqlite3
+USE_PYTHON_BUILD=	yes
+IS_INTERACTIVE=		yes
+.include "${PORTSDIR}/Mk/bsd.python.mk"
+
+MAKEFILE=	client.mk
+ALL_TARGET=	profiledbuild
+.endif
+
+pre-extract:
+.if defined(WITH_PGO)
+	@${ECHO} "*****************************************************************"
+	@${ECHO} "**************************** attention **************************"
+	@${ECHO} "*****************************************************************"
+	@${ECHO} "To build Firefox with PGO support you need a running X server and"
+	@${ECHO} "   build this port with a user who could access the X server!    "
+	@${ECHO} ""
+	@${ECHO} "During the build a Firefox instance will start and run some test."
+	@${ECHO} "      Do not interrupt of close Firefox during this tests!       "
+	@${ECHO} "*****************************************************************"
+	@sleep 10
 .endif
 
 post-extract::
@@ -112,8 +124,15 @@
 	(cd ${WRKSRC} && ${AUTOCONF})
 	(cd ${WRKSRC}/js/src/ && ${AUTOCONF})
 
+post-configure:
+.if defined(WITH_PGO)
+	@${SED} -e 's|@PYTHON@|${PYTHON_CMD}|' \
+		<${FILESDIR}/mozconfig-profile_guided_optimization.in \
+		>> ${BUILD_WRKSRC}/.mozconfig
+	(cd ${WRKSRC} && ${GMAKE} distclean)
+.endif
+
 port-pre-install:
-#	${SED} -e 's|1.9a7|0|' ${WRKSRC}/dist/bin/application.ini ${FAKEDIR}/lib
 	${ECHO_CMD} 'share/applications/${MOZILLA}.desktop' >> ${PLISTF}
 	${ECHO_CMD} "@dirrmtry share/applications" >> ${PLISTD}
 	${ECHO_CMD} 'share/pixmaps/${FIREFOX_ICON}' >> ${PLISTF}

Deleted: branches/experimental/www/firefox-devel/files/extrapatch-ipc-chromium
==============================================================================
--- branches/experimental/www/firefox-devel/files/extrapatch-ipc-chromium	Tue Nov  2 21:13:01 2010	(r429)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,1031 +0,0 @@
---- ipc/chromium/Makefile.in.orig	2010-03-15 14:55:38.000000000 +0100
-+++ ipc/chromium/Makefile.in	2010-03-21 21:21:32.000000000 +0100
-@@ -269,6 +269,20 @@
- 
- endif # } OS_LINUX
- 
-+ifdef OS_FREEBSD # {
-+
-+CPPSRCS += \
-+  atomicops_internals_x86_gcc.cc \
-+  base_paths_linux.cc \
-+  data_pack.cc \
-+  file_util_linux.cc \
-+  idle_timer_none.cc \
-+  process_util_linux.cc \
-+  time_posix.cc \
-+  $(NULL)
-+
-+endif # } OS_FREEBSD
-+
- # libevent
- 
- ifdef OS_POSIX # {
-@@ -305,6 +319,11 @@
-   $(NULL)
- endif # }
- 
-+ifdef OS_FREEBSD # {
-+LOCAL_INCLUDES += -I$(srcdir)/src/third_party/libevent/freebsd
-+CSRCS += kqueue.c
-+endif # }
-+
- endif # }
- 
- include $(topsrcdir)/config/rules.mk
---- ipc/chromium/chromium-config.mk.orig	2010-03-01 00:29:43.000000000 +0100
-+++ ipc/chromium/chromium-config.mk	2010-03-12 13:54:37.000000000 +0100
-@@ -70,6 +70,17 @@
-   $(NULL)
- 
- else # } {
-+ifeq ($(OS_ARCH),FreeBSD) # {
-+
-+OS_FREEBSD = 1
-+OS_POSIX = 1
-+
-+DEFINES += \
-+  -DOS_FREEBSD=1 \
-+  -DOS_POSIX=1 \
-+  $(NULL)
-+
-+else # } {
- ifeq ($(OS_ARCH),WINNT) # {
- OS_LIBS += $(call EXPAND_LIBNAME,psapi shell32 dbghelp)
- 
-@@ -111,5 +122,6 @@
- 
- endif # }
- endif # }
-+endif # }
- 
--endif # }
-\ No newline at end of file
-+endif # }
---- ipc/chromium/src/base/base_paths.h.orig	2010-03-16 17:59:50.000000000 +0100
-+++ ipc/chromium/src/base/base_paths.h	2010-03-16 18:00:10.000000000 +0100
-@@ -13,7 +13,7 @@
- #include "base/base_paths_win.h"
- #elif defined(OS_MACOSX)
- #include "base/base_paths_mac.h"
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
- #include "base/base_paths_linux.h"
- #endif
- #include "base/path_service.h"
---- ipc/chromium/src/base/debug_util_posix.cc.orig	2010-03-15 13:55:39.000000000 +0000
-+++ ipc/chromium/src/base/debug_util_posix.cc	2010-03-22 07:50:19.000000000 +0000
-@@ -69,7 +69,7 @@
-   return being_debugged;
- }
- 
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
- 
- // We can look in /proc/self/status for TracerPid.  We are likely used in crash
- // handling, so we are careful not to use the heap or have side effects.
-@@ -77,7 +77,11 @@
- // can't detach without forking(), and that's not so great.
- // static
- bool DebugUtil::BeingDebugged() {
-+#ifdef OS_FREEBSD
-+  int status_fd = open("/usr/compat/linux/proc/self/status", O_RDONLY);
-+#else
-   int status_fd = open("/proc/self/status", O_RDONLY);
-+#endif
-   if (status_fd == -1)
-     return false;
- 
---- ipc/chromium/src/base/file_util.h.orig	2010-03-16 18:43:57.000000000 +0100
-+++ ipc/chromium/src/base/file_util.h	2010-03-16 18:50:58.000000000 +0100
-@@ -13,6 +13,9 @@
- #if defined(OS_WIN)
- #include <windows.h>
- #elif defined(OS_POSIX)
-+#if defined(OS_FREEBSD)
-+#include <sys/types.h>
-+#endif
- #include <fts.h>
- #include <sys/stat.h>
- #endif
---- ipc/chromium/src/base/file_util_posix.cc.orig	2010-03-16 19:12:55.000000000 +0100
-+++ ipc/chromium/src/base/file_util_posix.cc	2010-03-16 19:19:24.000000000 +0100
-@@ -69,10 +69,10 @@
-           (strcmp(ent->d_name, "..") == 0))
-         continue;
- 
--      struct stat64 st;
--      int test = stat64(path.Append(ent->d_name).value().c_str(), &st);
-+      struct stat st;
-+      int test = stat(path.Append(ent->d_name).value().c_str(), &st);
-       if (test != 0) {
--        LOG(ERROR) << "stat64 failed: " << strerror(errno);
-+        LOG(ERROR) << "stat failed: " << strerror(errno);
-         continue;
-       }
-       // Here, we use Time::TimeT(), which discards microseconds. This
-@@ -104,8 +104,8 @@
- // here.
- bool Delete(const FilePath& path, bool recursive) {
-   const char* path_str = path.value().c_str();
--  struct stat64 file_info;
--  int test = stat64(path_str, &file_info);
-+  struct stat file_info;
-+  int test = stat(path_str, &file_info);
-   if (test != 0) {
-     // The Windows version defines this condition as success.
-     bool ret = (errno == ENOENT || errno == ENOTDIR);
-@@ -274,19 +274,19 @@
- }
- 
- bool PathExists(const FilePath& path) {
--  struct stat64 file_info;
--  return (stat64(path.value().c_str(), &file_info) == 0);
-+  struct stat file_info;
-+  return (stat(path.value().c_str(), &file_info) == 0);
- }
- 
- bool PathIsWritable(const FilePath& path) {
-   FilePath test_path(path);
--  struct stat64 file_info;
--  if (stat64(test_path.value().c_str(), &file_info) != 0) {
-+  struct stat file_info;
-+  if (stat(test_path.value().c_str(), &file_info) != 0) {
-     // If the path doesn't exist, test the parent dir.
-     test_path = test_path.DirName();
-     // If the parent dir doesn't exist, then return false (the path is not
-     // directly writable).
--    if (stat64(test_path.value().c_str(), &file_info) != 0)
-+    if (stat(test_path.value().c_str(), &file_info) != 0)
-       return false;
-   }
-   if (S_IWOTH & file_info.st_mode)
-@@ -299,8 +299,8 @@
- }
- 
- bool DirectoryExists(const FilePath& path) {
--  struct stat64 file_info;
--  if (stat64(path.value().c_str(), &file_info) == 0)
-+  struct stat file_info;
-+  if (stat(path.value().c_str(), &file_info) == 0)
-     return S_ISDIR(file_info.st_mode);
-   return false;
- }
-@@ -433,8 +433,8 @@
- }
- 
- bool GetFileInfo(const FilePath& file_path, FileInfo* results) {
--  struct stat64 file_info;
--  if (stat64(file_path.value().c_str(), &file_info) != 0)
-+  struct stat file_info;
-+  if (stat(file_path.value().c_str(), &file_info) != 0)
-     return false;
-   results->is_directory = S_ISDIR(file_info.st_mode);
-   results->size = file_info.st_size;
---- ipc/chromium/src/base/platform_file_posix.cc.orig	2010-03-16 19:01:11.000000000 +0100
-+++ ipc/chromium/src/base/platform_file_posix.cc	2010-03-16 19:01:58.000000000 +0100
-@@ -7,6 +7,8 @@
- #include <fcntl.h>
- #include <errno.h>
- 
-+#include <sys/stat.h>
-+
- #include "base/logging.h"
- #include "base/string_util.h"
- 
---- ipc/chromium/src/base/platform_thread.h.orig	2010-03-16 17:30:10.000000000 +0100
-+++ ipc/chromium/src/base/platform_thread.h	2010-03-16 17:33:59.000000000 +0100
-@@ -22,7 +22,7 @@
- #elif defined(OS_POSIX)
- #include <pthread.h>
- typedef pthread_t PlatformThreadHandle;
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
- #include <unistd.h>
- typedef pid_t PlatformThreadId;
- #elif defined(OS_MACOSX)
---- ipc/chromium/src/base/process_util.h.orig	2010-03-21 21:46:28.000000000 +0100
-+++ ipc/chromium/src/base/process_util.h	2010-03-21 21:53:45.000000000 +0100
-@@ -13,7 +13,7 @@
- #if defined(OS_WIN)
- #include <windows.h>
- #include <tlhelp32.h>
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
- #include <dirent.h>
- #include <limits.h>
- #include <sys/types.h>
-@@ -263,7 +263,7 @@
- #if defined(OS_WIN)
-   HANDLE snapshot_;
-   bool started_iteration_;
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
-   DIR *procfs_dir_;
- #elif defined(OS_MACOSX)
-   std::vector<kinfo_proc> kinfo_procs_;
---- ipc/chromium/src/base/process_util_posix.cc.orig	2010-03-16 19:04:36.000000000 +0100
-+++ ipc/chromium/src/base/process_util_posix.cc	2010-03-16 19:08:26.000000000 +0100
-@@ -101,6 +101,9 @@
- #if defined(OS_LINUX)
-   static const rlim_t kSystemDefaultMaxFds = 8192;
-   static const char fd_dir[] = "/proc/self/fd";
-+#elif defined(OS_FREEBSD)
-+  static const rlim_t kSystemDefaultMaxFds = 8192;
-+  static const char fd_dir[] = "/dev/fd";
- #elif defined(OS_MACOSX)
-   static const rlim_t kSystemDefaultMaxFds = 256;
-   static const char fd_dir[] = "/dev/fd";
-@@ -177,7 +180,7 @@
- void SetAllFDsToCloseOnExec() {
- #if defined(OS_LINUX)
-   const char fd_dir[] = "/proc/self/fd";
--#elif defined(OS_MACOSX)
-+#elif defined(OS_MACOSX) || defined(OS_FREEBSD)
-   const char fd_dir[] = "/dev/fd";
- #endif
-   ScopedDIR dir_closer(opendir(fd_dir));
---- ipc/chromium/src/base/third_party/nspr/prcpucfg.h.orig	2010-03-16 17:44:58.000000000 +0100
-+++ ipc/chromium/src/base/third_party/nspr/prcpucfg.h	2010-03-16 17:46:06.000000000 +0100
-@@ -36,6 +36,8 @@
- #include "base/third_party/nspr/prcpucfg_mac.h"
- #elif defined(__linux__)
- #include "base/third_party/nspr/prcpucfg_linux.h"
-+#elif defined(__FreeBSD__)
-+#include "base/third_party/nspr/prcpucfg_freebsd.h"
- #else
- #error Provide a prcpucfg.h appropriate for your platform
- #endif
---- /dev/null	2010-03-16 17:44:00.000000000 +0100
-+++ ipc/chromium/src/base/third_party/nspr/prcpucfg_freebsd.h	2010-03-16 17:43:05.000000000 +0100
-@@ -0,0 +1,382 @@
-+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-+/* ***** BEGIN LICENSE BLOCK *****
-+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
-+ *
-+ * The contents of this file are subject to the Mozilla Public License Version
-+ * 1.1 (the "License"); you may not use this file except in compliance with
-+ * the License. You may obtain a copy of the License at
-+ * http://www.mozilla.org/MPL/
-+ *
-+ * Software distributed under the License is distributed on an "AS IS" basis,
-+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-+ * for the specific language governing rights and limitations under the
-+ * License.
-+ *
-+ * The Original Code is the Netscape Portable Runtime (NSPR).
-+ *
-+ * The Initial Developer of the Original Code is
-+ * Netscape Communications Corporation.
-+ * Portions created by the Initial Developer are Copyright (C) 1998-2000
-+ * the Initial Developer. All Rights Reserved.
-+ *
-+ * Contributor(s):
-+ *
-+ * Alternatively, the contents of this file may be used under the terms of
-+ * either the GNU General Public License Version 2 or later (the "GPL"), or
-+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
-+ * in which case the provisions of the GPL or the LGPL are applicable instead
-+ * of those above. If you wish to allow use of your version of this file only
-+ * under the terms of either the GPL or the LGPL, and not to allow others to
-+ * use your version of this file under the terms of the MPL, indicate your
-+ * decision by deleting the provisions above and replace them with the notice
-+ * and other provisions required by the GPL or the LGPL. If you do not delete
-+ * the provisions above, a recipient may use your version of this file under
-+ * the terms of any one of the MPL, the GPL or the LGPL.
-+ *
-+ * ***** END LICENSE BLOCK ***** */
-+
-+#ifndef nspr_cpucfg___
-+#define nspr_cpucfg___
-+
-+#ifndef XP_UNIX
-+#define XP_UNIX
-+#endif
-+
-+#ifndef FREEBSD
-+#define FREEBSD
-+#endif
-+
-+#define PR_AF_INET6 28  /* same as AF_INET6 */
-+
-+#ifndef HAVE_LONG_LONG
-+#define HAVE_LONG_LONG
-+#endif
-+
-+#if defined(__i386__)
-+
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+#undef	HAVE_ALIGNED_DOUBLES
-+#undef	HAVE_ALIGNED_LONGLONGS
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   4
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   4
-+#define PR_BYTES_PER_DWORD  8
-+#define PR_BYTES_PER_WORD_LOG2   2
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    32
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    32
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   5
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   5
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    4
-+#define PR_ALIGN_OF_INT64   4
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  4
-+#define PR_ALIGN_OF_POINTER 4
-+
-+#elif defined(__alpha__)
-+
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+#define	HAVE_ALIGNED_DOUBLES
-+#define	HAVE_ALIGNED_LONGLONGS
-+#define IS_64
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   8
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   8
-+#define PR_BYTES_PER_DWORD  8
-+#define PR_BYTES_PER_WORD_LOG2   3
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    64
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    64
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   6
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   6
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    8
-+#define PR_ALIGN_OF_INT64   8
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  8
-+#define PR_ALIGN_OF_POINTER 8
-+
-+#elif defined(__sparc__)
-+
-+#undef  IS_LITTLE_ENDIAN
-+#define IS_BIG_ENDIAN 1
-+#define	HAVE_ALIGNED_DOUBLES
-+#define	HAVE_ALIGNED_LONGLONGS
-+#define IS_64
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   8
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   8
-+#define PR_BYTES_PER_DWORD  8
-+#define PR_BYTES_PER_WORD_LOG2   3
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    64
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    64
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   6
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   6
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    8
-+#define PR_ALIGN_OF_INT64   8
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  8
-+#define PR_ALIGN_OF_POINTER 8
-+
-+#elif defined(__ia64__)
-+
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+#define	HAVE_ALIGNED_DOUBLES
-+#define	HAVE_ALIGNED_LONGLONGS
-+#define IS_64
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   8
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   8
-+#define PR_BYTES_PER_DWORD  8
-+#define PR_BYTES_PER_WORD_LOG2   3
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    64
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    64
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   6
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   6
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    8
-+#define PR_ALIGN_OF_INT64   8
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  8
-+#define PR_ALIGN_OF_POINTER 8
-+#define PR_ALIGN_OF_WORD    8
-+
-+#elif defined(__amd64__)
-+
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+#define	HAVE_ALIGNED_DOUBLES
-+#define	HAVE_ALIGNED_LONGLONGS
-+#define IS_64
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   8
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   8
-+#define PR_BYTES_PER_DWORD  8
-+#define PR_BYTES_PER_WORD_LOG2   3
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    64
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    64
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   6
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   6
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    8
-+#define PR_ALIGN_OF_INT64   8
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  8
-+#define PR_ALIGN_OF_POINTER 8
-+#define PR_ALIGN_OF_WORD    8
-+
-+#elif defined(__powerpc__)
-+
-+#undef  IS_LITTLE_ENDIAN
-+#define IS_BIG_ENDIAN    1
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   4
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   4
-+#define PR_BYTES_PER_DWORD  8
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    32
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    32
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   5
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   5
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    4
-+#define PR_ALIGN_OF_INT64   8
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  8
-+#define PR_ALIGN_OF_POINTER 4
-+#define PR_ALIGN_OF_WORD    4
-+
-+#define PR_BYTES_PER_WORD_LOG2   2
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
-+#else
-+
-+#error "Unknown CPU architecture"
-+
-+#endif
-+
-+#ifndef NO_NSPR_10_SUPPORT
-+
-+#define BYTES_PER_BYTE		PR_BYTES_PER_BYTE
-+#define BYTES_PER_SHORT 	PR_BYTES_PER_SHORT
-+#define BYTES_PER_INT 		PR_BYTES_PER_INT
-+#define BYTES_PER_INT64		PR_BYTES_PER_INT64
-+#define BYTES_PER_LONG		PR_BYTES_PER_LONG
-+#define BYTES_PER_FLOAT		PR_BYTES_PER_FLOAT
-+#define BYTES_PER_DOUBLE	PR_BYTES_PER_DOUBLE
-+#define BYTES_PER_WORD		PR_BYTES_PER_WORD
-+#define BYTES_PER_DWORD		PR_BYTES_PER_DWORD
-+
-+#define BITS_PER_BYTE		PR_BITS_PER_BYTE
-+#define BITS_PER_SHORT		PR_BITS_PER_SHORT
-+#define BITS_PER_INT		PR_BITS_PER_INT
-+#define BITS_PER_INT64		PR_BITS_PER_INT64
-+#define BITS_PER_LONG		PR_BITS_PER_LONG
-+#define BITS_PER_FLOAT		PR_BITS_PER_FLOAT
-+#define BITS_PER_DOUBLE		PR_BITS_PER_DOUBLE
-+#define BITS_PER_WORD		PR_BITS_PER_WORD
-+
-+#define BITS_PER_BYTE_LOG2	PR_BITS_PER_BYTE_LOG2
-+#define BITS_PER_SHORT_LOG2	PR_BITS_PER_SHORT_LOG2
-+#define BITS_PER_INT_LOG2	PR_BITS_PER_INT_LOG2
-+#define BITS_PER_INT64_LOG2	PR_BITS_PER_INT64_LOG2
-+#define BITS_PER_LONG_LOG2	PR_BITS_PER_LONG_LOG2
-+#define BITS_PER_FLOAT_LOG2	PR_BITS_PER_FLOAT_LOG2
-+#define BITS_PER_DOUBLE_LOG2 	PR_BITS_PER_DOUBLE_LOG2
-+#define BITS_PER_WORD_LOG2	PR_BITS_PER_WORD_LOG2
-+
-+#define ALIGN_OF_SHORT		PR_ALIGN_OF_SHORT
-+#define ALIGN_OF_INT		PR_ALIGN_OF_INT
-+#define ALIGN_OF_LONG		PR_ALIGN_OF_LONG
-+#define ALIGN_OF_INT64		PR_ALIGN_OF_INT64
-+#define ALIGN_OF_FLOAT		PR_ALIGN_OF_FLOAT
-+#define ALIGN_OF_DOUBLE		PR_ALIGN_OF_DOUBLE
-+#define ALIGN_OF_POINTER	PR_ALIGN_OF_POINTER
-+#define ALIGN_OF_WORD		PR_ALIGN_OF_WORD
-+
-+#define BYTES_PER_WORD_LOG2	PR_BYTES_PER_WORD_LOG2
-+#define BYTES_PER_DWORD_LOG2	PR_BYTES_PER_DWORD_LOG2
-+#define WORDS_PER_DWORD_LOG2	PR_WORDS_PER_DWORD_LOG2
-+
-+#endif /* NO_NSPR_10_SUPPORT */
-+
-+#endif /* nspr_cpucfg___ */
---- ipc/chromium/src/base/third_party/nspr/prtime.cc.orig	2010-03-16 17:49:59.000000000 +0100
-+++ ipc/chromium/src/base/third_party/nspr/prtime.cc	2010-03-16 17:50:20.000000000 +0100
-@@ -149,7 +149,7 @@
-     result *= kSecondsToMicroseconds;
-     result += exploded->tm_usec;
-     return result;
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
-     struct tm exp_tm = {0};
-     exp_tm.tm_sec  = exploded->tm_sec;
-     exp_tm.tm_min  = exploded->tm_min;
---- ipc/chromium/src/build/build_config.h.orig	2010-03-15 14:55:39.000000000 +0100
-+++ ipc/chromium/src/build/build_config.h	2010-03-21 14:54:06.000000000 +0100
-@@ -4,7 +4,7 @@
- 
- // This file adds defines about the platform we're currently building on.
- //  Operating System:
--//    OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX)
-+//    OS_WIN / OS_MACOSX / OS_LINUX / OS_FREEBSD / OS_POSIX (MACOSX, FREEBSD or LINUX)
- //  Compiler:
- //    COMPILER_MSVC / COMPILER_GCC
- //  Processor:
-@@ -19,6 +19,8 @@
- #define OS_MACOSX 1
- #elif defined(__linux__)
- #define OS_LINUX 1
-+#elif defined(__FreeBSD__)
-+#define OS_FREEBSD 1
- #elif defined(_WIN32)
- #define OS_WIN 1
- #else
-@@ -27,7 +29,7 @@
- 
- // For access to standard POSIX features, use OS_POSIX instead of a more
- // specific macro.
--#if defined(OS_MACOSX) || defined(OS_LINUX)
-+#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_FREEBSD)
- #define OS_POSIX 1
- #endif
- 
---- ipc/chromium/src/chrome/common/ipc_message_utils.h.orig	2010-03-22 08:58:26.000000000 +0000
-+++ ipc/chromium/src/chrome/common/ipc_message_utils.h	2010-03-22 09:04:57.000000000 +0000
-@@ -219,7 +219,7 @@
-   }
- };
- 
--#if !(defined(OS_MACOSX) || (defined(CHROMIUM_MOZILLA_BUILD) && (defined(OS_LINUX) || defined(OS_WIN)) && defined(ARCH_CPU_64_BITS)))
-+#if !(defined(OS_MACOSX) || (defined(CHROMIUM_MOZILLA_BUILD) && (defined(OS_LINUX) || defined(OS_WIN) || defined(OS_FREEBSD)) && defined(ARCH_CPU_64_BITS)))
- // There size_t is a synonym for |unsigned long| ...
- template <>
- struct ParamTraits<size_t> {
-@@ -235,7 +235,7 @@
-   }
- };
- 
--#elif !defined(OS_MACOSX)
-+#elif !defined(OS_MACOSX) || !defined(OS_FREEBSD)
- // ... so we need to define traits for |unsigned int|.
- // XXX duplicating OS_MACOSX version below so as not to conflict
- template <>
-@@ -272,7 +272,7 @@
- };
- #endif  // defined(OS_MACOSX)
- 
--#if !(defined(CHROMIUM_MOZILLA_BUILD) && defined(OS_LINUX) && defined(ARCH_CPU_64_BITS))
-+#if !(defined(CHROMIUM_MOZILLA_BUILD) && (defined(OS_LINUX) || defined(OS_FREEBSD)) && defined(ARCH_CPU_64_BITS))
- // int64 is |long int| on 64-bit systems, uint64 is |unsigned long|
- template <>
- struct ParamTraits<int64> {
---- ipc/chromium/src/chrome/common/transport_dib.h.orig	2010-03-16 18:53:00.000000000 +0100
-+++ ipc/chromium/src/chrome/common/transport_dib.h	2010-03-16 18:53:49.000000000 +0100
-@@ -13,7 +13,7 @@
- 
- #if defined(OS_WIN)
- #include <windows.h>
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
- #include "chrome/common/x11_util.h"
- #endif
- 
-@@ -70,7 +70,7 @@
-   typedef base::SharedMemoryHandle Handle;
-   // On Mac, the inode number of the backing file is used as an id.
-   typedef base::SharedMemoryId Id;
--#elif defined(OS_LINUX)
-+#elif defined(OS_LINUX) || defined(OS_FREEBSD)
-   typedef int Handle;  // These two ints are SysV IPC shared memory keys
-   typedef int Id;
- #endif
---- /dev/null	2010-03-12 13:07:40.000000000 +0100
-+++ ipc/chromium/src/third_party/libevent/freebsd/config.h	2010-03-12 13:07:40.000000000 +0100
-@@ -0,0 +1,254 @@
-+/* config.h.  Generated from config.h.in by configure.  */
-+/* config.h.in.  Generated from configure.in by autoheader.  */
-+
-+/* Define if clock_gettime is available in libc */
-+#define DNS_USE_CPU_CLOCK_FOR_ID 1
-+
-+/* Define is no secure id variant is available */
-+/* #undef DNS_USE_GETTIMEOFDAY_FOR_ID */
-+
-+/* Define to 1 if you have the `clock_gettime' function. */
-+#define HAVE_CLOCK_GETTIME 1
-+
-+/* Define if /dev/poll is available */
-+/* #undef HAVE_DEVPOLL */
-+
-+/* Define to 1 if you have the <dlfcn.h> header file. */
-+#define HAVE_DLFCN_H 1
-+
-+/* Define if your system supports the epoll system calls */
-+/* #undef HAVE_EPOLL */
-+
-+/* Define to 1 if you have the `epoll_ctl' function. */
-+/* #undef HAVE_EPOLL_CTL */
-+
-+/* Define if your system supports event ports */
-+/* #undef HAVE_EVENT_PORTS */
-+
-+/* Define to 1 if you have the `fcntl' function. */
-+#define HAVE_FCNTL 1
-+
-+/* Define to 1 if you have the <fcntl.h> header file. */
-+#define HAVE_FCNTL_H 1
-+
-+/* Define to 1 if you have the `getaddrinfo' function. */
-+#define HAVE_GETADDRINFO 1
-+
-+/* Define to 1 if you have the `getnameinfo' function. */
-+#define HAVE_GETNAMEINFO 1
-+
-+/* Define to 1 if you have the `gettimeofday' function. */
-+#define HAVE_GETTIMEOFDAY 1
-+
-+/* Define to 1 if you have the `inet_ntop' function. */
-+#define HAVE_INET_NTOP 1
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+#define HAVE_INTTYPES_H 1
-+
-+/* Define to 1 if you have the `kqueue' function. */
-+#define HAVE_KQUEUE 1
-+
-+/* Define to 1 if you have the `nsl' library (-lnsl). */
-+/* #undef HAVE_LIBNSL */
-+
-+/* Define to 1 if you have the `resolv' library (-lresolv). */
-+/* #undef HAVE_LIBRESOLV */
-+
-+/* Define to 1 if you have the `rt' library (-lrt). */
-+#define HAVE_LIBRT 1
-+
-+/* Define to 1 if you have the `socket' library (-lsocket). */
-+/* #undef HAVE_LIBSOCKET */
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#define HAVE_MEMORY_H 1
-+
-+/* Define to 1 if you have the <netinet/in6.h> header file. */
-+/* #undef HAVE_NETINET_IN6_H */
-+
-+/* Define to 1 if you have the `poll' function. */
-+#define HAVE_POLL 1
-+
-+/* Define to 1 if you have the <poll.h> header file. */
-+#define HAVE_POLL_H 1
-+
-+/* Define to 1 if you have the `port_create' function. */
-+/* #undef HAVE_PORT_CREATE */
-+
-+/* Define to 1 if you have the <port.h> header file. */
-+/* #undef HAVE_PORT_H */
-+
-+/* Define to 1 if you have the `select' function. */
-+#define HAVE_SELECT 1
-+
-+/* Define if F_SETFD is defined in <fcntl.h> */
-+#define HAVE_SETFD 1
-+
-+/* Define to 1 if you have the `sigaction' function. */
-+#define HAVE_SIGACTION 1
-+
-+/* Define to 1 if you have the `signal' function. */
-+#define HAVE_SIGNAL 1
-+
-+/* Define to 1 if you have the <signal.h> header file. */
-+#define HAVE_SIGNAL_H 1
-+
-+/* Define to 1 if you have the <stdarg.h> header file. */
-+#define HAVE_STDARG_H 1
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+#define HAVE_STDINT_H 1
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#define HAVE_STDLIB_H 1
-+
-+/* Define to 1 if you have the <strings.h> header file. */
-+#define HAVE_STRINGS_H 1
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#define HAVE_STRING_H 1
-+
-+/* Define to 1 if you have the `strlcpy' function. */
-+#define HAVE_STRLCPY 1
-+
-+/* Define to 1 if you have the `strsep' function. */
-+#define HAVE_STRSEP 1
-+
-+/* Define to 1 if you have the `strtok_r' function. */
-+#define HAVE_STRTOK_R 1
-+
-+/* Define to 1 if you have the `strtoll' function. */
-+#define HAVE_STRTOLL 1
-+
-+/* Define to 1 if the system has the type `struct in6_addr'. */
-+#define HAVE_STRUCT_IN6_ADDR 1
-+
-+/* Define to 1 if you have the <sys/devpoll.h> header file. */
-+/* #undef HAVE_SYS_DEVPOLL_H */
-+
-+/* Define to 1 if you have the <sys/epoll.h> header file. */
-+/* #undef HAVE_SYS_EPOLL_H */
-+
-+/* Define to 1 if you have the <sys/event.h> header file. */
-+#define HAVE_SYS_EVENT_H 1
-+
-+/* Define to 1 if you have the <sys/ioctl.h> header file. */
-+#define HAVE_SYS_IOCTL_H 1
-+
-+/* Define to 1 if you have the <sys/param.h> header file. */
-+#define HAVE_SYS_PARAM_H 1
-+
-+/* Define to 1 if you have the <sys/queue.h> header file. */
-+#define HAVE_SYS_QUEUE_H 1
-+
-+/* Define to 1 if you have the <sys/select.h> header file. */
-+#define HAVE_SYS_SELECT_H 1
-+
-+/* Define to 1 if you have the <sys/socket.h> header file. */
-+#define HAVE_SYS_SOCKET_H 1
-+
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#define HAVE_SYS_STAT_H 1
-+
-+/* Define to 1 if you have the <sys/time.h> header file. */
-+#define HAVE_SYS_TIME_H 1
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#define HAVE_SYS_TYPES_H 1
-+
-+/* Define if TAILQ_FOREACH is defined in <sys/queue.h> */
-+#define HAVE_TAILQFOREACH 1
-+
-+/* Define if timeradd is defined in <sys/time.h> */
-+#define HAVE_TIMERADD 1
-+
-+/* Define if timerclear is defined in <sys/time.h> */
-+#define HAVE_TIMERCLEAR 1
-+
-+/* Define if timercmp is defined in <sys/time.h> */
-+#define HAVE_TIMERCMP 1
-+
-+/* Define if timerisset is defined in <sys/time.h> */
-+#define HAVE_TIMERISSET 1
-+
-+/* Define to 1 if the system has the type `uint16_t'. */
-+#define HAVE_UINT16_T 1
-+
-+/* Define to 1 if the system has the type `uint32_t'. */
-+#define HAVE_UINT32_T 1
-+
-+/* Define to 1 if the system has the type `uint64_t'. */
-+#define HAVE_UINT64_T 1
-+
-+/* Define to 1 if the system has the type `uint8_t'. */
-+#define HAVE_UINT8_T 1
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
-+#define HAVE_UNISTD_H 1
-+
-+/* Define to 1 if you have the `vasprintf' function. */
-+#define HAVE_VASPRINTF 1
-+
-+/* Define if kqueue works correctly with pipes */
-+#define HAVE_WORKING_KQUEUE 1
-+
-+/* Name of package */
-+#define PACKAGE "libevent"
-+
-+/* Define to the address where bug reports for this package should be sent. */
-+#define PACKAGE_BUGREPORT ""
-+
-+/* Define to the full name of this package. */
-+#define PACKAGE_NAME ""
-+
-+/* Define to the full name and version of this package. */
-+#define PACKAGE_STRING ""
-+
-+/* Define to the one symbol short name of this package. */
-+#define PACKAGE_TARNAME ""
-+
-+/* Define to the version of this package. */
-+#define PACKAGE_VERSION ""
-+
-+/* The size of `int', as computed by sizeof. */
-+#define SIZEOF_INT 4
-+
-+/* The size of `long', as computed by sizeof. */
-+#define SIZEOF_LONG 4
-+
-+/* The size of `long long', as computed by sizeof. */
-+#define SIZEOF_LONG_LONG 8
-+
-+/* The size of `short', as computed by sizeof. */
-+#define SIZEOF_SHORT 2
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#define STDC_HEADERS 1
-+
-+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-+#define TIME_WITH_SYS_TIME 1
-+
-+/* Version number of package */
-+#define VERSION "1.4.7-stable"
-+
-+/* Define to appropriate substitue if compiler doesnt have __func__ */
-+/* #undef __func__ */
-+
-+/* Define to empty if `const' does not conform to ANSI C. */
-+/* #undef const */
-+
-+/* Define to `__inline__' or `__inline' if that's what the C compiler
-+   calls it, or to nothing if 'inline' is not supported under any name.  */
-+#ifndef __cplusplus
-+/* #undef inline */
-+#endif
-+
-+/* Define to `int' if <sys/types.h> does not define. */
-+/* #undef pid_t */
-+
-+/* Define to `unsigned int' if <sys/types.h> does not define. */
-+/* #undef size_t */
-+
-+/* Define to unsigned int if you dont have it */
-+/* #undef socklen_t */
---- ipc/glue/Makefile.in.orig	2010-03-17 00:49:47.000000000 +0100
-+++ ipc/glue/Makefile.in	2010-03-17 00:50:15.000000000 +0100
-@@ -45,7 +45,7 @@
- 
- MODULE = ipc
- LIBRARY_NAME = mozipc_s
--FORCE_STATIC_LIB = 1
-+#FORCE_STATIC_LIB = 1
- LIBXUL_LIBRARY = 1
- EXPORT_LIBRARY = 1
- 
---- toolkit/library/Makefile.in.orig	2010-03-21 22:12:05.000000000 +0100
-+++ toolkit/library/Makefile.in	2010-03-21 22:12:38.000000000 +0100
-@@ -162,7 +162,7 @@
- SDK_LIBRARY = $(SHARED_LIBRARY)
- endif
- 
--EXTRA_DSO_LDOPTS += $(LIBS_DIR) $(EXTRA_DSO_LIBS)
-+EXTRA_DSO_LDOPTS += $(LIBS_DIR) $(EXTRA_DSO_LIBS) -lexecinfo
- 
- ifndef MOZ_ENABLE_LIBXUL
- EXTRA_DSO_LDOPTS += \
---- dom/plugins/PluginModuleChild.cpp.orig	2010-03-16 19:55:39.000000000 +0100
-+++ dom/plugins/PluginModuleChild.cpp	2010-03-16 19:56:45.000000000 +0100
-@@ -159,7 +159,7 @@
- 
-     // TODO: use PluginPRLibrary here
- 
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
-     mShutdownFunc =
-         (NP_PLUGINSHUTDOWN) PR_FindFunctionSymbol(mLibrary, "NP_Shutdown");
- 
-@@ -1497,7 +1497,7 @@
-     PLUGIN_LOG_DEBUG_METHOD;
-     AssertPluginThread();
- 
--#if defined(OS_LINUX)
-+#if defined(OS_LINUX) || defined(OS_FREEBSD)
-     *_retval = mInitializeFunc(&sBrowserFuncs, &mFunctions);
-     return true;
- 

Deleted: branches/experimental/www/firefox-devel/files/libsydney_oss
==============================================================================
--- branches/experimental/www/firefox-devel/files/libsydney_oss	Tue Nov  2 21:13:01 2010	(r429)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,11 +0,0 @@
---- media/libsydneyaudio/src/Makefile.in.orig	2010-06-10 14:24:56.000000000 +0200
-+++ media/libsydneyaudio/src/Makefile.in	2010-07-05 22:06:07.000000000 +0200
-@@ -45,7 +45,7 @@
- LIBRARY_NAME	= sydneyaudio
- FORCE_STATIC_LIB= 1
- 
--ifneq (,$(filter DragonFly FreeBSD GNU GNU_% NetBSD OpenBSD,$(OS_ARCH)))
-+ifneq (,$(filter DragonFly GNU GNU_% NetBSD OpenBSD,$(OS_ARCH)))
- CSRCS		= \
- 		sydney_audio_oss.c \
- 		$(NULL)

Added: branches/experimental/www/firefox-devel/files/mozconfig-profile_guided_optimization.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox-devel/files/mozconfig-profile_guided_optimization.in	Tue Nov  2 21:13:01 2010	(r430)
@@ -0,0 +1 @@
+mk_add_options PROFILE_GEN_SCRIPT='@PYTHON@ $(OBJDIR)/_profile/pgo/profileserver.py'

Modified: branches/experimental/www/firefox-devel/files/patch-js_src_jsnum.cpp
==============================================================================
--- branches/experimental/www/firefox-devel/files/patch-js_src_jsnum.cpp	Mon Nov  1 17:44:52 2010	(r429)
+++ branches/experimental/www/firefox-devel/files/patch-js_src_jsnum.cpp	Tue Nov  2 21:13:01 2010	(r430)
@@ -1,5 +1,5 @@
---- js/src/jsnum.cpp.orig	2009-10-14 18:03:30.000000000 +0200
-+++ js/src/jsnum.cpp	2009-10-15 21:49:44.000000000 +0200
+--- js/src/jsnum.cpp.orig	2010-01-05 22:35:17.000000000 -0500
++++ js/src/jsnum.cpp	2010-01-11 05:10:19.000000000 -0500
 @@ -43,6 +43,9 @@
  /*
   * JS number type and wrapper class.
@@ -10,14 +10,16 @@
  #ifdef XP_OS2
  #define _PC_53  PC_53
  #define _MCW_EM MCW_EM
-@@ -691,8 +694,16 @@
+@@ -691,8 +694,18 @@
  
  #else
  
 +#if defined(__FreeBSD__) && __FreeBSD_version >= 601000
++#if __BSD_VISIBLE == 0
++#error __BSD_VISIBLE is zero, so fedisableexcept is not defined
++#endif
 +#include <fenv.h>
-+#define FIX_FPU() (fedisableexcept(FE_ALL_EXCEPT))
-+
++#define FIX_FPU() ((void)fedisableexcept(FE_ALL_EXCEPT))
 +#else
 +
  #define FIX_FPU() ((void)0)

Added: branches/experimental/www/firefox-devel/files/patch-toolkit_library_Makefile.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox-devel/files/patch-toolkit_library_Makefile.in	Tue Nov  2 21:13:01 2010	(r430)
@@ -0,0 +1,11 @@
+--- toolkit/library/Makefile.in.orig	2010-01-11 12:13:08.000000000 -0500
++++ toolkit/library/Makefile.in	2010-01-11 12:15:05.000000000 -0500
+@@ -181,7 +181,7 @@
+ export:: $(RDF_UTIL_SRC_CPPSRCS) $(INTL_UNICHARUTIL_UTIL_CPPSRCS)
+ 	$(INSTALL) $^ .
+ 
+-EXTRA_DSO_LDOPTS += $(LIBS_DIR) $(EXTRA_DSO_LIBS)
++EXTRA_DSO_LDOPTS += -Wl,--warn-unresolved-symbols -Wl,--as-needed $(LIBS_DIR) $(EXTRA_DSO_LIBS)
+ 
+ ifdef MOZ_ENABLE_LIBXUL
+ include $(srcdir)/libxul-rules.mk

Added: branches/experimental/www/firefox-devel/files/patch-xpcom_base_nsStackWalk.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/experimental/www/firefox-devel/files/patch-xpcom_base_nsStackWalk.cpp	Tue Nov  2 21:13:01 2010	(r430)
@@ -0,0 +1,11 @@
+--- xpcom/base/nsStackWalk.cpp.orig	2010-01-11 02:11:49.000000000 -0500
++++ xpcom/base/nsStackWalk.cpp	2010-01-11 02:13:26.000000000 -0500
+@@ -1132,7 +1132,7 @@
+ #define __USE_GNU
+ #endif
+ 
+-#if defined(HAVE_LIBDL) || defined(XP_MACOSX)
++#if defined(HAVE_LIBDL) || defined(XP_MACOSX) || defined(__FreeBSD__)
+ #include <dlfcn.h>
+ #endif
+ 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201011022113.oA2LD12f028438>