# note: freebsd is the same, but leave out -fno-stack-protector # build and install libs: gtk 1, IDL, jpeg, png, mng, tiff MOZ_PHOENIX=1 export MOZ_PHOENIX # see also browser/config/mozconfig ../firefox-1.5rc1/configure \ --disable-auto-deps \ --disable-bidi \ --disable-composer \ --disable-cpp-exceptions \ --disable-cpp-rtti \ --disable-debug \ --disable-dtd-debug \ --disable-freetypetest \ --disable-glibtest \ --disable-gtktest \ --disable-installer \ --disable-jsd \ --disable-ldap \ --disable-mailnews \ --disable-md \ --disable-oji \ --disable-pedantic \ --disable-plaintext-editor-only \ --disable-profilesharing \ --disable-shared \ --disable-svg \ --disable-tests \ --disable-xinerama \ --disable-xprint \ --disable-xft \ --disable-xterm-updates \ --enable-application=browser \ --enable-crypto \ --enable-default-toolkit=gtk \ --enable-mathml \ --enable-optimize="-Os -march=pentium -fno-stack-protector" \ --enable-static \ --enable-strip \ --prefix=/usr/X11R6 \ --with-pthreads \ --with-system-jpeg=/usr/local \ --with-system-mng=/usr/local \ --with-system-png=/usr/local \ --with-system-zlib=/usr/lib \ --x-includes=/usr/X11R6/include \ --x-libraries=/usr/X11R6/lib # unlimit # gmake MOZ_PHOENIX=1 Index: extensions/transformiix/source/base/Double.cpp =================================================================== RCS file: /cvsroot/mozilla/extensions/transformiix/source/base/Attic/Double.cpp,v retrieving revision 1.26 diff -u -r1.26 Double.cpp --- extensions/transformiix/source/base/Double.cpp 17 Jun 2004 00:12:42 -0000 1.26 +++ extensions/transformiix/source/base/Double.cpp 3 Nov 2005 02:38:31 -0000 @@ -115,17 +115,19 @@ #define TX_DOUBLE_HI32_EXPMASK 0x7ff00000 #define TX_DOUBLE_HI32_MANTMASK 0x000fffff +#define STRICT_ALIGN __attribute__ ((aligned (8))) + //-- Initialize Double related constants #ifdef IS_BIG_ENDIAN -const PRUint32 nanMask[2] = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK, +const PRUint32 nanMask[2] STRICT_ALIGN = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK, 0xffffffff}; -const PRUint32 infMask[2] = {TX_DOUBLE_HI32_EXPMASK, 0}; -const PRUint32 negInfMask[2] = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT, 0}; +const PRUint32 infMask[2] STRICT_ALIGN = {TX_DOUBLE_HI32_EXPMASK, 0}; +const PRUint32 negInfMask[2] STRICT_ALIGN = {TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT, 0}; #else -const PRUint32 nanMask[2] = {0xffffffff, +const PRUint32 nanMask[2] STRICT_ALIGN = {0xffffffff, TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_MANTMASK}; -const PRUint32 infMask[2] = {0, TX_DOUBLE_HI32_EXPMASK}; -const PRUint32 negInfMask[2] = {0, TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT}; +const PRUint32 infMask[2] STRICT_ALIGN = {0, TX_DOUBLE_HI32_EXPMASK}; +const PRUint32 negInfMask[2] STRICT_ALIGN = {0, TX_DOUBLE_HI32_EXPMASK | TX_DOUBLE_HI32_SIGNBIT}; #endif const double Double::NaN = *((double*)nanMask); Index: nsprpub/pr/include/md/_openbsd.cfg =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/include/md/_openbsd.cfg,v retrieving revision 3.6.4.3 diff -u -r3.6.4.3 _openbsd.cfg --- nsprpub/pr/include/md/_openbsd.cfg 28 Apr 2004 00:33:44 -0000 3.6.4.3 +++ nsprpub/pr/include/md/_openbsd.cfg 3 Nov 2005 02:39:00 -0000 @@ -285,6 +285,53 @@ #define PR_BYTES_PER_WORD_LOG2 3 #define PR_BYTES_PER_DWORD_LOG2 3 +#elif defined(__sparc_v9__) +#undef IS_LITTLE_ENDIAN +#define IS_BIG_ENDIAN 1 +#define HAVE_LONG_LONG +#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_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_BYTES_PER_WORD_LOG2 3 +#define PR_BYTES_PER_DWORD_LOG2 3 + #elif defined(__powerpc__) || defined(__m68k__) #undef IS_LITTLE_ENDIAN Index: nsprpub/pr/src/md/unix/unix.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/src/md/unix/unix.c,v retrieving revision 3.43.2.7.12.1 diff -u -r3.43.2.7.12.1 unix.c --- nsprpub/pr/src/md/unix/unix.c 18 Aug 2005 17:24:37 -0000 3.43.2.7.12.1 +++ nsprpub/pr/src/md/unix/unix.c 3 Nov 2005 02:39:01 -0000 @@ -65,7 +65,8 @@ * PRInt32* pointer to a _PRSockLen_t* pointer. */ #if defined(HAVE_SOCKLEN_T) \ - || (defined(LINUX) && defined(__GLIBC__) && __GLIBC__ >= 2) + || (defined(LINUX) && defined(__GLIBC__) && __GLIBC__ >= 2) \ + || defined(FREEBSD) #define _PRSockLen_t socklen_t #elif defined(IRIX) || defined(HPUX) || defined(OSF1) || defined(SOLARIS) \ || defined(AIX4_1) || defined(LINUX) || defined(SONY) \ @@ -73,7 +74,7 @@ || defined(SUNOS4) || defined(NCR) || defined(DARWIN) \ || defined(NEXTSTEP) || defined(QNX) #define _PRSockLen_t int -#elif (defined(AIX) && !defined(AIX4_1)) || defined(FREEBSD) \ +#elif (defined(AIX) && !defined(AIX4_1)) \ || defined(NETBSD) || defined(OPENBSD) || defined(UNIXWARE) \ || defined(DGUX) || defined(VMS) || defined(NTO) || defined(RISCOS) #define _PRSockLen_t size_t Index: nsprpub/pr/src/misc/prinit.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/src/misc/prinit.c,v retrieving revision 3.25.4.5 diff -u -r3.25.4.5 prinit.c --- nsprpub/pr/src/misc/prinit.c 28 Apr 2004 00:34:07 -0000 3.25.4.5 +++ nsprpub/pr/src/misc/prinit.c 3 Nov 2005 02:39:01 -0000 @@ -433,6 +433,12 @@ _PR_LogCleanup(); /* + * accesses the current thread + */ + _PR_CleanupNet(); + _PR_CleanupIO(); + + /* * This part should look like the end of _PR_NativeRunThread * and _PR_UserRunThread. */ @@ -444,6 +450,7 @@ PR_DELETE(me->stack); PR_DELETE(me); } + _PR_MD_SET_CURRENT_THREAD(NULL); /* * XXX: We are freeing the heap memory here so that Purify won't @@ -452,8 +459,6 @@ * Ideally, for each _PR_InitXXX(), there should be a corresponding * _PR_XXXCleanup() that we can call here. */ - _PR_CleanupNet(); - _PR_CleanupIO(); #ifdef WINNT _PR_CleanupCPUs(); #endif Index: nsprpub/pr/src/misc/prnetdb.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/src/misc/prnetdb.c,v retrieving revision 3.21.2.25.12.1 diff -u -r3.21.2.25.12.1 prnetdb.c --- nsprpub/pr/src/misc/prnetdb.c 18 Aug 2005 17:24:38 -0000 3.21.2.25.12.1 +++ nsprpub/pr/src/misc/prnetdb.c 3 Nov 2005 02:39:01 -0000 @@ -2110,7 +2110,12 @@ */ hints.ai_socktype = SOCK_STREAM; + LOCK_DNS(); + rv = GETADDRINFO(hostname, NULL, &hints, &res); + + UNLOCK_DNS(); + if (rv == 0) return (PRAddrInfo *) res; Index: security/coreconf/OpenBSD.mk =================================================================== RCS file: /cvsroot/mozilla/security/coreconf/OpenBSD.mk,v retrieving revision 1.4 diff -u -r1.4 OpenBSD.mk --- security/coreconf/OpenBSD.mk 25 Apr 2004 15:02:17 -0000 1.4 +++ security/coreconf/OpenBSD.mk 3 Nov 2005 02:39:13 -0000 @@ -37,12 +37,12 @@ include $(CORE_DEPTH)/coreconf/UNIX.mk -DEFAULT_COMPILER = gcc -CC = gcc -CCC = g++ +DEFAULT_COMPILER = ${CC} +#CC = ${CC} +CCC = ${CXX} RANLIB = ranlib -CPU_ARCH := $(shell uname -p) +CPU_ARCH := $(shell arch -s) ifeq ($(CPU_ARCH),i386) OS_REL_CFLAGS = -Di386 CPU_ARCH = x86 Index: widget/src/gtk/nsSound.cpp =================================================================== RCS file: /cvsroot/mozilla/widget/src/gtk/nsSound.cpp,v retrieving revision 1.41 diff -u -r1.41 nsSound.cpp --- widget/src/gtk/nsSound.cpp 3 Nov 2004 09:13:04 -0000 1.41 +++ widget/src/gtk/nsSound.cpp 3 Nov 2005 02:39:30 -0000 @@ -106,7 +106,7 @@ EsdOpenSoundType EsdOpenSound; - elib = PR_LoadLibrary("libesd.so.0"); + elib = PR_LoadLibrary("libesd.so"); if (!elib) return NS_ERROR_FAILURE; EsdOpenSound = (EsdOpenSoundType) PR_FindSymbol(elib, "esd_open_sound"); Index: widget/src/gtk2/nsSound.cpp =================================================================== RCS file: /cvsroot/mozilla/widget/src/gtk2/nsSound.cpp,v retrieving revision 1.12 diff -u -r1.12 nsSound.cpp --- widget/src/gtk2/nsSound.cpp 3 Nov 2004 09:13:04 -0000 1.12 +++ widget/src/gtk2/nsSound.cpp 3 Nov 2005 02:39:30 -0000 @@ -110,7 +110,7 @@ EsdOpenSoundType EsdOpenSound; - elib = PR_LoadLibrary("libesd.so.0"); + elib = PR_LoadLibrary("libesd.so"); if (!elib) return NS_ERROR_FAILURE; EsdOpenSound = (EsdOpenSoundType) PR_FindSymbol(elib, "esd_open_sound"); Index: xpcom/io/nsNativeCharsetUtils.cpp =================================================================== RCS file: /cvsroot/mozilla/xpcom/io/nsNativeCharsetUtils.cpp,v retrieving revision 1.28 diff -u -r1.28 nsNativeCharsetUtils.cpp --- xpcom/io/nsNativeCharsetUtils.cpp 8 Nov 2004 05:20:05 -0000 1.28 +++ xpcom/io/nsNativeCharsetUtils.cpp 3 Nov 2005 02:39:31 -0000 @@ -330,7 +330,11 @@ { const char *blank_list[] = { "", NULL }; const char **native_charset_list = blank_list; +#ifdef CODESET const char *native_charset = nl_langinfo(CODESET); +#else + const char *native_charset = nsnull; +#endif if (native_charset == nsnull) { NS_ERROR("native charset is unknown"); // fallback to ISO-8859-1 Index: xpcom/reflect/xptcall/src/md/unix/Makefile.in =================================================================== RCS file: /cvsroot/mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in,v retrieving revision 1.80 diff -u -r1.80 Makefile.in --- xpcom/reflect/xptcall/src/md/unix/Makefile.in 15 Jun 2005 08:32:21 -0000 1.80 +++ xpcom/reflect/xptcall/src/md/unix/Makefile.in 3 Nov 2005 02:39:32 -0000 @@ -128,6 +128,12 @@ ASFILES := xptcinvoke_asm_osf1_alpha.s xptcstubs_asm_osf1_alpha.s endif # +# OpenBSD/Alpha +# +ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDalpha) +CPPSRCS := xptcinvoke_openbsd_alpha.cpp xptcstubs_openbsd_alpha.cpp +endif +# # Linux/Alpha # ifneq (,$(filter Linuxalpha FreeBSDalpha NetBSDalpha,$(OS_ARCH)$(OS_TEST))) @@ -277,6 +283,14 @@ endif # +# OpenBSD/PPC +# +ifneq (,$(filter OpenBSDmacppc,$(OS_ARCH)$(OS_TEST))) +CPPSRCS := xptcinvoke_ppc_openbsd.cpp xptcstubs_ppc_openbsd.cpp +ASFILES := xptcinvoke_asm_ppc_openbsd.s xptcstubs_asm_ppc_openbsd.s +endif + +# # Darwin/PPC # ifeq ($(OS_ARCH),Darwin) @@ -349,6 +363,20 @@ endif endif +# +# OpenBSD/SPARC +# +ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc) +CPPSRCS := xptcinvoke_sparc_netbsd.cpp xptcstubs_sparc_netbsd.cpp +ASFILES := xptcinvoke_asm_sparc_netbsd.s xptcstubs_asm_sparc_netbsd.s +endif +# +# OpenBSD/SPARC64 +# +ifeq ($(OS_ARCH)$(OS_TEST),OpenBSDsparc64) +CPPSRCS := xptcinvoke_sparc64_openbsd.cpp xptcstubs_sparc64_openbsd.cpp +ASFILES := xptcinvoke_asm_sparc64_openbsd.s xptcstubs_asm_sparcv9_solaris.s +endif ###################################################################### # S/390