--- a/config/config.mk
+++ b/config/config.mk
@@ -501,17 +501,17 @@ TREEHYDRA_MODULES = \
DEHYDRA_ARGS = \
--topsrcdir=$(topsrcdir) \
--objdir=$(DEPTH) \
--dehydra-modules=$(subst $(NULL) ,$(COMMA),$(strip $(DEHYDRA_MODULES))) \
--treehydra-modules=$(subst $(NULL) ,$(COMMA),$(strip $(TREEHYDRA_MODULES))) \
$(NULL)
-DEHYDRA_FLAGS = -fplugin=$(DEHYDRA_PATH) -fplugin-arg="$(DEHYDRA_SCRIPT) $(DEHYDRA_ARGS)"
+DEHYDRA_FLAGS = -fplugin=$(DEHYDRA_PATH) -fplugin-arg='$(DEHYDRA_SCRIPT) $(DEHYDRA_ARGS)'
ifdef DEHYDRA_PATH
OS_CXXFLAGS += $(DEHYDRA_FLAGS)
endif
CFLAGS = $(OS_CFLAGS)
CXXFLAGS = $(OS_CXXFLAGS)
LDFLAGS = $(OS_LDFLAGS) $(MOZ_FIX_LINK_PATHS)
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -189,34 +189,29 @@ ifdef FORCE_SHARED_LIB
ifndef FORCE_STATIC_LIB
LIBRARY := $(NULL)
endif
endif
ifeq (,$(filter-out WINNT WINCE,$(OS_ARCH)))
ifndef GNU_CC
-# Previously when possible we wrote to $LIBRARY_NAME.pdb. This broke parallel
-# make builds on Windows. Now we just write to a pdb file per compiled file.
-# See bug 286179 <https://bugzilla.mozilla.org/show_bug.cgi?id=286179> for
-# details. -- chase@mozilla.org
+# All C++ files share a PDB file per directory. For parallel builds, this PDB
+# file is shared and locked by MSPDBSRV.EXE, starting with MSVC8 SP1. If
+# you're using MSVC 7.1 or MSVC8 without SP1, don't do parallel builds.
#
-# Changes to the PDBFILE naming scheme should also be reflected in HOST_PDBFILE
-#
-ifdef LIBRARY_NAME
-PDBFILE=$(LIBRARY_NAME).pdb
-ifdef MOZ_DEBUG
-CODFILE=$(LIBRARY_NAME).cod
-endif
-else
-PDBFILE=$(basename $(@F)).pdb
+# The final PDB for libraries and programs is created by the linker and uses
+# a different name from the single PDB file created by the compiler. See
+# bug 462740.
+#
+COMPILE_PDBFILE = generated.pdb
+LINK_PDBFILE = $(basename $(@F)).pdb
ifdef MOZ_DEBUG
CODFILE=$(basename $(@F)).cod
endif
-endif # LIBRARY_NAME
ifdef MOZ_MAPINFO
ifdef LIBRARY_NAME
MAPFILE=$(LIBRARY_NAME).map
else
MAPFILE=$(basename $(@F)).map
endif # LIBRARY_NAME
endif # MOZ_MAPINFO
@@ -881,17 +876,17 @@ alltags:
# PROGRAM = Foo
# creates OBJS, links with LIBS to create Foo
#
$(PROGRAM): $(PROGOBJS) $(LIBS_DEPS) $(EXTRA_DEPS) $(EXE_DEF_FILE) $(RESFILE) Makefile Makefile.in
ifeq (WINCE,$(OS_ARCH))
$(LD) -NOLOGO -OUT:$@ $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(PROGOBJS) $(RESFILE) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
else
ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
- $(LD) -NOLOGO -OUT:$@ -PDB:$(PDBFILE) $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(PROGOBJS) $(RESFILE) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
+ $(LD) -NOLOGO -OUT:$@ -PDB:$(LINK_PDBFILE) $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(PROGOBJS) $(RESFILE) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
ifdef MSMANIFEST_TOOL
@if test -f $@.manifest; then \
if test -f "$(srcdir)/$@.manifest"; then \
mt.exe -NOLOGO -MANIFEST "$(win_srcdir)/$@.manifest" $@.manifest -OUTPUTRESOURCE:$@\;1; \
else \
mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
fi; \
rm -f $@.manifest; \
@@ -919,17 +914,17 @@ ifdef BEOS_PROGRAM_RESOURCE
endif
endif # BeOS
$(HOST_PROGRAM): $(HOST_PROGOBJS) $(HOST_LIBS_DEPS) $(HOST_EXTRA_DEPS) Makefile Makefile.in
ifeq (WINCE,$(OS_ARCH))
$(HOST_LD) -NOLOGO -OUT:$@ $(HOST_OBJS) $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
else
ifeq (_WINNT,$(GNU_CC)_$(HOST_OS_ARCH))
- $(HOST_LD) -NOLOGO -OUT:$@ -PDB:$(PDBFILE) $(HOST_OBJS) $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
+ $(HOST_LD) -NOLOGO -OUT:$@ -PDB:$(HOST_PDBFILE) $(HOST_OBJS) $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
ifdef MSMANIFEST_TOOL
@if test -f $@.manifest; then \
mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
rm -f $@.manifest; \
fi
endif # MSVC with manifest tool
else
ifeq ($(CPP_PROG_LINK),1)
@@ -948,17 +943,17 @@ endif
# SIMPLE_PROGRAMS = Foo Bar
# creates Foo.o Bar.o, links with LIBS to create Foo, Bar.
#
$(SIMPLE_PROGRAMS): %$(BIN_SUFFIX): %.$(OBJ_SUFFIX) $(LIBS_DEPS) $(EXTRA_DEPS) Makefile Makefile.in
ifeq (WINCE,$(OS_ARCH))
$(LD) -nologo -entry:main -out:$@ $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
else
ifeq (_WINNT,$(GNU_CC)_$(OS_ARCH))
- $(LD) -nologo -out:$@ -pdb:$(PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
+ $(LD) -nologo -out:$@ -pdb:$(LINK_PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS) $(OS_LIBS)
ifdef MSMANIFEST_TOOL
@if test -f $@.manifest; then \
mt.exe -NOLOGO -MANIFEST $@.manifest -OUTPUTRESOURCE:$@\;1; \
rm -f $@.manifest; \
fi
endif # MSVC with manifest tool
else
ifeq ($(CPP_PROG_LINK),1)
@@ -976,17 +971,17 @@ ifdef MOZ_POST_PROGRAM_COMMAND
$(MOZ_POST_PROGRAM_COMMAND) $@
endif
$(HOST_SIMPLE_PROGRAMS): host_%$(HOST_BIN_SUFFIX): host_%.$(OBJ_SUFFIX) $(HOST_LIBS_DEPS) $(HOST_EXTRA_DEPS) Makefile Makefile.in
ifeq (WINCE,$(OS_ARCH))
$(HOST_LD) -NOLOGO -OUT:$@ $(WIN32_EXE_LDFLAGS) $< $(HOST_LIBS) $(HOST_EXTRA_LIBS)
else
ifeq (WINNT_,$(HOST_OS_ARCH)_$(GNU_CC))
- $(HOST_LD) -NOLOGO -OUT:$@ -PDB:$(PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
+ $(HOST_LD) -NOLOGO -OUT:$@ -PDB:$(HOST_PDBFILE) $< $(WIN32_EXE_LDFLAGS) $(HOST_LIBS) $(HOST_EXTRA_LIBS)
else
ifneq (,$(HOST_CPPSRCS)$(USE_HOST_CXX))
$(HOST_CXX) $(HOST_OUTOPTION)$@ $(HOST_CXXFLAGS) $(INCLUDES) $< $(HOST_LIBS) $(HOST_EXTRA_LIBS)
else
$(HOST_CC) $(HOST_OUTOPTION)$@ $(HOST_CFLAGS) $(INCLUDES) $< $(HOST_LIBS) $(HOST_EXTRA_LIBS)
endif
endif
endif
--- a/configure.in
+++ b/configure.in
@@ -126,29 +126,29 @@ NSS_VERSION=3
dnl Set the minimum version of toolkit libs used by mozilla
dnl ========================================================
GLIB_VERSION=1.2.0
LIBIDL_VERSION=0.6.3
PERL_VERSION=5.006
LIBART_VERSION=2.3.4
CAIRO_VERSION=1.6.0
-PANGO_VERSION=1.10.0
+PANGO_VERSION=1.14.0
GTK2_VERSION=2.10.0
MAKE_VERSION=3.78
WINDRES_VERSION=2.14.90
W32API_VERSION=3.8
GNOMEVFS_VERSION=2.0
GNOMEUI_VERSION=2.2.0
GCONF_VERSION=1.2.1
LIBGNOME_VERSION=2.0
STARTUP_NOTIFICATION_VERSION=0.8
DBUS_VERSION=0.60
LCMS_VERSION=1.17
-SQLITE_VERSION=3.5.4
+SQLITE_VERSION=3.6.4
MSMANIFEST_TOOL=
dnl Set various checks
dnl ========================================================
MISSING_X=
AC_PROG_AWK
@@ -1154,17 +1154,17 @@ CYGWIN32_NT|CYGWIN_NT*|MINGW*_NT*)
# the uname.exe in the MSYS tools.
#
OS_RELEASE=`expr $OS_ARCH : '.*NT-\(.*\)'`
OS_ARCH=WINNT
OS_TARGET=WINNT
;;
AIX)
OS_RELEASE=`uname -v`.`uname -r`
- OS_TEST=`uname -p`
+ OS_TEST=${target_cpu}
;;
BSD_386)
OS_ARCH=BSD
;;
dgux)
OS_ARCH=DGUX
;;
IRIX64)
@@ -1256,17 +1256,17 @@ fi
# Only set CPU_ARCH if we recognize the value of OS_TEST
case "$OS_TEST" in
*86 | i86pc)
CPU_ARCH=x86
;;
-powerpc* | ppc)
+powerpc* | ppc | rs6000)
CPU_ARCH=ppc
;;
Alpha | alpha | ALPHA)
CPU_ARCH=Alpha
;;
hppa* | parisc)
@@ -1301,16 +1301,17 @@ if test "$GNU_CC"; then
DSO_LDOPTS='-shared'
if test "$GCC_USE_GNU_LD"; then
# Don't allow undefined symbols in libraries
DSO_LDOPTS="$DSO_LDOPTS -Wl,-z,defs"
fi
WARNINGS_AS_ERRORS='-Werror'
DSO_CFLAGS=''
DSO_PIC_CFLAGS='-fPIC'
+ ASFLAGS="$ASFLAGS -fPIC"
_MOZ_RTTI_FLAGS_ON=${_COMPILER_PREFIX}-frtti
_MOZ_RTTI_FLAGS_OFF=${_COMPILER_PREFIX}-fno-rtti
_MOZ_EXCEPTIONS_FLAGS_ON='-fhandle-exceptions'
_MOZ_EXCEPTIONS_FLAGS_OFF='-fno-handle-exceptions'
# Turn on GNU specific features
# -Wall - turn on all warnings
# -pedantic - make compiler warn about non-ANSI stuff, and
@@ -1628,25 +1629,25 @@ case "$target" in
LDFLAGS="$LDFLAGS -Wl,-brtl -blibpath:/usr/lib:/lib"
AC_MSG_WARN([Clearing MOZ_FIX_LINK_PATHS till we can fix bug 332075.])
MOZ_FIX_LINK_PATHS=
MKSHLIB='$(CXX) $(DSO_LDOPTS) -o $@'
MKCSHLIB='$(CC) $(DSO_LDOPTS) -o $@'
if test "$COMPILE_ENVIRONMENT"; then
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
- AC_MSG_CHECKING([for VisualAge C++ compiler version >= 5.0.2.0])
+ AC_MSG_CHECKING([for VisualAge C++ compiler version >= 6.0.0.3])
AC_TRY_COMPILE([],
- [#if (__IBMCPP__ < 502)
+ [#if (__IBMCPP__ < 600)
#error "Bad compiler"
#endif],
_BAD_COMPILER=,_BAD_COMPILER=1)
if test -n "$_BAD_COMPILER"; then
AC_MSG_RESULT([no])
- AC_MSG_ERROR([VisualAge C++ version 5.0.2.0 or higher is required to build.])
+ AC_MSG_ERROR([VisualAge C++ version 6.0.0.3 or higher is required to build.])
else
AC_MSG_RESULT([yes])
fi
AC_LANG_RESTORE
TARGET_COMPILER_ABI="ibmc"
CC_VERSION=`lslpp -Lcq vac.C 2>/dev/null | awk -F: '{ print $3 }'`
CXX_VERSION=`lslpp -Lcq vacpp.cmp.core 2>/dev/null | awk -F: '{ print $3 }'`
fi
@@ -1861,18 +1862,17 @@ case "$target" in
CFLAGS="$CFLAGS -mieee"
CXXFLAGS="$CXXFLAGS -mieee"
;;
i*86)
USE_ELF_DYNSTR_GC=1
MOZ_ENABLE_OLD_ABI_COMPAT_WRAPPERS=1
;;
mips*)
- CFLAGS="$CFLAGS -Wa,-xgot"
- CXXFLAGS="$CXXFLAGS -Wa,-xgot"
+ MOZ_DEBUG_FLAGS="-g" # We want inlining
;;
esac
;;
*-wince*)
MOZ_TOOLS_DIR=`echo $MOZ_TOOLS`
AR_LIST="$AR -list"
@@ -1901,18 +1901,18 @@ case "$target" in
HOST_RANLIB='echo ranlib'
HOST_CFLAGS="$HOST_CFLAGS -D_X86_"
WARNINGS_AS_ERRORS='-WX'
MOZ_OPTIMIZE_FLAGS='-O1'
AR_FLAGS='-NOLOGO -OUT:"$@"'
ASM_SUFFIX=asm
- CFLAGS="$CFLAGS -W3 -Gy -Fd\$(PDBFILE)"
- CXXFLAGS="$CXXFLAGS -W3 -Gy -Fd\$(PDBFILE)"
+ CFLAGS="$CFLAGS -W3 -Gy -Fd\$(COMPILE_PDBFILE)"
+ CXXFLAGS="$CXXFLAGS -W3 -Gy -Fd\$(COMPILE_PDBFILE)"
DLL_PREFIX=
DOXYGEN=:
DSO_LDOPTS=-SUBSYSTEM:WINDOWSCE
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib'
GARBAGE=
IMPORT_LIB_SUFFIX=lib
LIBS="$LIBS"
LIBXUL_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xul.lib'
@@ -2003,23 +2003,23 @@ case "$target" in
UNZIP=unzip
DOXYGEN=:
GARBAGE='$(OBJDIR)/vc20.pdb $(OBJDIR)/vc40.pdb'
OBJ_SUFFIX=obj
LIB_SUFFIX=lib
DLL_PREFIX=
LIB_PREFIX=
IMPORT_LIB_SUFFIX=lib
- MKSHLIB='$(LD) -NOLOGO -DLL -OUT:$@ -PDB:$(PDBFILE) $(DSO_LDOPTS)'
- MKCSHLIB='$(LD) -NOLOGO -DLL -OUT:$@ -PDB:$(PDBFILE) $(DSO_LDOPTS)'
+ MKSHLIB='$(LD) -NOLOGO -DLL -OUT:$@ -PDB:$(LINK_PDBFILE) $(DSO_LDOPTS)'
+ MKCSHLIB='$(LD) -NOLOGO -DLL -OUT:$@ -PDB:$(LINK_PDBFILE) $(DSO_LDOPTS)'
MKSHLIB_FORCE_ALL=
MKSHLIB_UNFORCE_ALL=
DSO_LDOPTS=-SUBSYSTEM:WINDOWS
- CFLAGS="$CFLAGS -W3 -Gy -Fd\$(PDBFILE)"
- CXXFLAGS="$CXXFLAGS -W3 -Gy -Fd\$(PDBFILE)"
+ CFLAGS="$CFLAGS -W3 -Gy -Fd\$(COMPILE_PDBFILE)"
+ CXXFLAGS="$CXXFLAGS -W3 -Gy -Fd\$(COMPILE_PDBFILE)"
LIBS="$LIBS kernel32.lib user32.lib gdi32.lib winmm.lib wsock32.lib advapi32.lib"
MOZ_DEBUG_FLAGS='-Zi'
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
WARNINGS_AS_ERRORS='-WX'
MOZ_OPTIMIZE_FLAGS='-O1'
MOZ_JS_LIBS='$(LIBXUL_DIST)/lib/js$(MOZ_BITS)$(VERSION_NUMBER).lib'
MOZ_FIX_LINK_PATHS=
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib'
@@ -7385,18 +7385,16 @@ elif test "$OS_ARCH" = "OpenVMS"; then
AC_DEFINE(XP_UNIX)
elif test "$OS_ARCH" != "WINNT" -a "$OS_ARCH" != "OS2" -a "$OS_ARCH" != "WINCE"; then
AC_DEFINE(XP_UNIX)
AC_DEFINE(UNIX_ASYNC_DNS)
MOZ_MOVEMAIL=1
fi
AC_SUBST(MOZ_MOVEMAIL)
-AC_DEFINE(JS_THREADSAFE)
-
if test "$MOZ_DEBUG"; then
AC_DEFINE(MOZ_REFLOW_PERF)
AC_DEFINE(MOZ_REFLOW_PERF_DSP)
fi
if test "$ACCESSIBILITY" -a "$MOZ_ENABLE_GTK2" ; then
AC_DEFINE(MOZ_ACCESSIBILITY_ATK)
ATK_FULL_VERSION=`$PKG_CONFIG --modversion atk`