22513774 gcc 4.9.3 libstdc++ causes Firefox to dump core
authorNorm Jacobs <Norm.Jacobs@Oracle.COM>
Fri, 08 Jan 2016 11:08:09 -0800
changeset 5248 6f0a9396a317
parent 5247 caadbfa6ec4c
child 5250 3b05aeef75e3
22513774 gcc 4.9.3 libstdc++ causes Firefox to dump core
components/gcc49/Makefile
components/gcc49/patches/017-libstdc++-src-Makefile.in.patch
--- a/components/gcc49/Makefile	Fri Jan 08 08:25:03 2016 -0800
+++ b/components/gcc49/Makefile	Fri Jan 08 11:08:09 2016 -0800
@@ -18,7 +18,7 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
 #
 export PARFAIT_BUILD=no
 
@@ -149,10 +149,6 @@
 CONFIGURE_OPTIONS +=    --enable-vtable-verify=no
 CONFIGURE_OPTIONS +=    --enable-comdat=yes
 CONFIGURE_OPTIONS +=    --enable-__cxa_atexit=$(ENABLE_CXA_ATEXIT)
-
-# Although this is required by the C++11/C++14 standards,
-# it appears broken in 4.9.3.
-CONFIGURE_OPTIONS +=    --enable-fully-dynamic-string=yes
 CONFIGURE_OPTIONS +=    --enable-libstdcxx-debug=yes
 CONFIGURE_OPTIONS +=    --enable-libstdcxx-threads=yes
 CONFIGURE_OPTIONS +=    --enable-c99=yes
--- a/components/gcc49/patches/017-libstdc++-src-Makefile.in.patch	Fri Jan 08 08:25:03 2016 -0800
+++ b/components/gcc49/patches/017-libstdc++-src-Makefile.in.patch	Fri Jan 08 11:08:09 2016 -0800
@@ -1,8 +1,7 @@
 # Stefan Teleman <[email protected]>
 # Messy patch for libstdc++'s ./configure:
-# 1. We want -D_GLIBCXX_FULLY_DYNAMIC_STRING=1 (no COW strings in C++11)
-# 2. libtool linking on Solaris is quirky
-# 3. We want LARGEFILE enabled in the libstdc++ binary.
+# 1. libtool linking on Solaris is quirky
+# 2. We want LARGEFILE enabled in the libstdc++ binary.
 # Internal patch. Not submitted upstream yet.
 --- libstdc++-v3/src/Makefile.in	2013-08-06 20:38:59.000000000 -0700
 +++ libstdc++-v3/src/Makefile.in	2015-09-12 13:12:28.970889245 -0700
@@ -11,7 +10,7 @@
  CPP = @CPP@
  CPPFLAGS = @CPPFLAGS@
 +CPPFLAGS += -D_REENTRANT=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64
-+CPPFLAGS += -D__EXTENSIONS__=1 -D_GLIBCXX_FULLY_DYNAMIC_STRING=1
++CPPFLAGS += -D__EXTENSIONS__=1
  CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@
  CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@
  CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@
@@ -43,7 +42,7 @@
  CPP = @CPP@
  CPPFLAGS = @CPPFLAGS@
 +CPPFLAGS += -D_REENTRANT=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64
-+CPPFLAGS += -D__EXTENSIONS__=1 -D_GLIBCXX_FULLY_DYNAMIC_STRING=1
++CPPFLAGS += -D__EXTENSIONS__=1
  CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@
  CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@
  CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@