diff --git a/configure b/configure
index b209bc9..186f52f 100755
--- a/configure
+++ b/configure
@@ -785,6 +785,7 @@
 with_build_config
 enable_vtable_verify
 enable_bionic_libs
+enable_libatomic_ifuncs
 enable_serial_configure
 with_build_time_tools
 enable_maintainer_mode
@@ -1485,6 +1486,7 @@
                           Objective-C runtime
   --enable-vtable-verify    Enable vtable verification feature
   --enable-bionic-libs    Use bionic libstdc++ libraries
+  --enable-bionic-libs    Enable/disable IFUNCs in libatomic library
   --enable-serial-[{host,target,build}-]configure
                           force sequential configuration of sub-packages for
                           the host, target or build machine, or all
@@ -7240,6 +7242,23 @@
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_bionic_libs" >&5
 $as_echo "$enable_bionic_libs" >&6; }
 
+# Use same top-level configure hooks in libatomic.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --enable-libatomic-ifuncs" >&5
+$as_echo_n "checking for --enable-libatomic-ifuncs... " >&6; }
+# Check whether --enable-libatomic-ifuncs was given.
+if test "${enable_libatomic_ifuncs+set}" = set; then :
+  enableval=$enable_libatomic_ifuncs; case "$enableval" in
+ yes) enable_libatomic_ifuncs=yes ;;
+ no)  enable_libatomic_ifuncs=no ;;
+ *)   enable_libatomic_ifuncs=yes;;
+ esac
+else
+  enable_libatomic_ifuncs=yes
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_libatomic_ifuncs" >&5
+$as_echo "$enable_libatomic_ifuncs" >&6; }
+
 # Record target_configdirs and the configure arguments for target and
 # build configuration in Makefile.
 target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
diff --git a/configure.ac b/configure.ac
index e04fdfe..b78629a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2556,6 +2556,18 @@
 [enable_bionic_libs=no])
 AC_MSG_RESULT($enable_bionic_libs)
 
+# Use same top-level configure hooks in libatomic.
+AC_MSG_CHECKING([for --enable-libatomic-ifuncs])
+AC_ARG_ENABLE(libatomic-ifuncs,
+[  --enable-bionic-libs    Enable/disable IFUNCs in libatomic library ],
+[case "$enableval" in
+ yes) enable_libatomic_ifuncs=yes ;;
+ no)  enable_libatomic_ifuncs=no ;;
+ *)   enable_libatomic_ifuncs=yes;;
+ esac],
+[enable_libatomic_ifuncs=yes])
+AC_MSG_RESULT($enable_libatomic_ifuncs)
+
 # Record target_configdirs and the configure arguments for target and
 # build configuration in Makefile.
 target_configdirs=`echo "${target_configdirs}" | sed -e 's/target-//g'`
diff --git a/libatomic/acinclude.m4 b/libatomic/acinclude.m4
index a86e52b..34db650 100644
--- a/libatomic/acinclude.m4
+++ b/libatomic/acinclude.m4
@@ -197,6 +197,11 @@
     void *foo_sel(void) { return foo_alt; }
     int foo(void) __attribute__((ifunc("foo_sel")));],
     [return foo();], libat_cv_have_ifunc=yes, libat_cv_have_ifunc=no)])
+
+  if test $enable_libatomic_ifuncs = no; then
+    libat_cv_have_ifunc=no
+  fi
+
   LIBAT_DEFINE_YESNO([HAVE_IFUNC], [$libat_cv_have_ifunc],
       [Define to 1 if the target supports __attribute__((ifunc(...))).])
 ])
diff --git a/libatomic/aclocal.m4 b/libatomic/aclocal.m4
index 48f5ef5..aa82d0a 100644
--- a/libatomic/aclocal.m4
+++ b/libatomic/aclocal.m4
@@ -277,7 +277,7 @@
 	break
       fi
       ;;
-    msvisualcpp | msvcmsys)
+    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
       # This compiler won't grok `-c -o', but also, the minuso test has
       # not run yet.  These depmodes are late enough in the game, and
       # so weak that their functioning should not be impacted.
@@ -342,10 +342,13 @@
 if test "x$enable_dependency_tracking" != xno; then
   am_depcomp="$ac_aux_dir/depcomp"
   AMDEPBACKSLASH='\'
+  am__nodep='_no'
 fi
 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
 AC_SUBST([AMDEPBACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
+AC_SUBST([am__nodep])dnl
+_AM_SUBST_NOTMAKE([am__nodep])dnl
 ])
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
@@ -918,10 +921,11 @@
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
 AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
+[# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AC_SUBST([AMTAR], ['$${TAR-tar}'])
 m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+     [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
      [m4_case([$1], [ustar],, [pax],,
               [m4_fatal([Unknown tar format])])
 AC_MSG_CHECKING([how to create a $1 tar archive])
diff --git a/libatomic/configure b/libatomic/configure
index 5ca62ab..bbcdd50 100755
--- a/libatomic/configure
+++ b/libatomic/configure
@@ -4059,7 +4059,6 @@
   # instance it was reported that on HP-UX the gcc test will end up
   # making a dummy file named `D' -- because `-MD' means `put the output
   # in D'.
-  rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
   # using a relative directory.
@@ -4194,7 +4193,6 @@
   # instance it was reported that on HP-UX the gcc test will end up
   # making a dummy file named `D' -- because `-MD' means `put the output
   # in D'.
-  rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
   # using a relative directory.
@@ -11125,7 +11123,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11109 "configure"
+#line 11126 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11231,7 +11229,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11215 "configure"
+#line 11232 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -14695,6 +14693,11 @@
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libat_cv_have_ifunc" >&5
 $as_echo "$libat_cv_have_ifunc" >&6; }
 
+  if test $enable_libatomic_ifuncs = no; then
+    libat_cv_have_ifunc=no
+  fi
+
+
   yesno=`echo $libat_cv_have_ifunc | tr 'yesno' '1  0 '`
 
 cat >>confdefs.h <<_ACEOF
@@ -14703,6 +14706,9 @@
 
 
 
+  if test $enable_libatomic_ifuncs = no; then
+    libat_cv_have_ifunc=no
+  fi
 fi
 
 # Check linker support.
diff --git a/libatomic/configure.ac b/libatomic/configure.ac
index ff241c2..b8c02c3 100644
--- a/libatomic/configure.ac
+++ b/libatomic/configure.ac
@@ -218,6 +218,9 @@
 LIBAT_CHECK_ATTRIBUTE_ALIAS
 if test x$try_ifunc = xyes; then
   LIBAT_CHECK_IFUNC
+  if test $enable_libatomic_ifuncs = no; then
+    libat_cv_have_ifunc=no
+  fi
 fi
 
 # Check linker support.
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index c9c059d..4e7a441 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -3550,13 +3550,7 @@
 
   AC_MSG_CHECKING([for gthreads library])
 
-  if test $enable_bionic_libs = yes; then
-    ac_include_file="$glibcxx_thread_h"
-  else
-    ac_include_file="gthr-$target_thread_file.h"
-  fi
-
-  AC_TRY_COMPILE([#include "$ac_include_file"],
+  AC_TRY_COMPILE([#include "gthr-$target_thread_file.h"],
     [
       #ifndef __GTHREADS_CXX0X
       #error
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index 2032c72..836beca 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -78726,15 +78726,9 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gthreads library" >&5
 $as_echo_n "checking for gthreads library... " >&6; }
 
-  if test $enable_bionic_libs = yes; then
-    ac_include_file="$glibcxx_thread_h"
-  else
-    ac_include_file="gthr-$target_thread_file.h"
-  fi
-
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include "$ac_include_file"
+#include "gthr-$target_thread_file.h"
 int
 main ()
 {
diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
index e1f6956..3209ae0 100644
--- a/libstdc++-v3/src/Makefile.am
+++ b/libstdc++-v3/src/Makefile.am
@@ -58,45 +58,43 @@
 	compatibility-chrono.cc \
 	compatibility-condvar.cc
 
-if ENABLE_BIONIC_LIBS
-  libgnustl_shared_la_SOURCES = $(cxx98_sources) $(cxx11_sources)
+libgnustl_shared_la_SOURCES = $(cxx98_sources) $(cxx11_sources)
 
-  libgnustl_shared_la_LIBADD = \
+libgnustl_shared_la_LIBADD = \
 	$(GLIBCXX_LIBS) \
 	$(top_builddir)/libsupc++/libsupc++convenience.la \
 	$(top_builddir)/src/c++98/libc++98convenience.la \
 	$(top_builddir)/src/c++11/libc++11convenience.la
 
-  libgnustl_shared_la_DEPENDENCIES = \
+libgnustl_shared_la_DEPENDENCIES = \
 	${version_dep} \
 	$(top_builddir)/libsupc++/libsupc++convenience.la \
 	$(top_builddir)/src/c++98/libc++98convenience.la \
 	$(top_builddir)/src/c++11/libc++11convenience.la
 
-  libgnustl_shared_la_LDFLAGS = \
+libgnustl_shared_la_LDFLAGS = \
 	${libtool_version_info_string} ${version_arg} -lm
 
-  libgnustl_shared_la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
-else
-  libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources)
+libgnustl_shared_la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
 
-  libstdc___la_LIBADD = \
+libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources)
+
+libstdc___la_LIBADD = \
 	$(GLIBCXX_LIBS) \
 	$(top_builddir)/libsupc++/libsupc++convenience.la \
 	$(top_builddir)/src/c++98/libc++98convenience.la \
 	$(top_builddir)/src/c++11/libc++11convenience.la
 
-  libstdc___la_DEPENDENCIES = \
+libstdc___la_DEPENDENCIES = \
 	${version_dep} \
 	$(top_builddir)/libsupc++/libsupc++convenience.la \
 	$(top_builddir)/src/c++98/libc++98convenience.la \
 	$(top_builddir)/src/c++11/libc++11convenience.la
 
-  libstdc___la_LDFLAGS = \
+libstdc___la_LDFLAGS = \
 	${libtool_version_info_string} ${version_arg} -lm
 
-  libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
-endif
+libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
 
 # Use special rules for compatibility-ldbl.cc compilation, as we need to
 # pass -mlong-double-64.
@@ -247,8 +245,7 @@
 if ENABLE_SYMVERS_SUN
 version_arg = -Wl,-M,libstdc++-symbols.ver-sun
 version_dep = libstdc++-symbols.ver-sun
-  if ENABLE_BIONIC_LIBS
-    libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
+libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
 		$(toplevel_srcdir)/contrib/make_sunver.pl \
 		$(libgnustl_shared_la_OBJECTS) $(libgnustl_shared_la_LIBADD)
 	CXXFILT="$(CXXFILT)"; export CXXFILT; \
@@ -258,34 +255,11 @@
 	 `echo $(libgnustl_shared_la_LIBADD) | \
 	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
 	 > $@ || (rm -f $@ ; exit 1)
-  else
-    libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
-		$(toplevel_srcdir)/contrib/make_sunver.pl \
-		$(libstdc___la_OBJECTS) $(libstdc___la_LIBADD)
-	CXXFILT="$(CXXFILT)"; export CXXFILT; \
-	perl $(toplevel_srcdir)/contrib/make_sunver.pl \
-	  libstdc++-symbols.ver \
-	  $(libstdc___la_OBJECTS:%.lo=.libs/%.o) \
-	 `echo $(libstdc___la_LIBADD) | \
-	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
-	 > $@ || (rm -f $@ ; exit 1)
-  endif
 endif
 if ENABLE_SYMVERS_DARWIN
 version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist
 version_dep = libstdc++-symbols.explist
-  if ENABLE_BIONIC_LIBS
-    libstdc++-symbols.explist : libstdc++-symbols.ver \
-		${glibcxx_srcdir}/scripts/make_exports.pl \
-		$(libgnustl_shared_la_OBJECTS) $(libgnustl_shared_la_LIBADD)
-	perl ${glibcxx_srcdir}/scripts/make_exports.pl \
-	  libstdc++-symbols.ver \
-	  $(libgnustl_shared_la_OBJECTS:%.lo=.libs/%.o) \
-	 `echo $(libgnustl_shared_la_LIBADD) | \
-	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
-	 > $@ || (rm -f $@ ; exit 1)
-  else
-    libstdc++-symbols.explist : libstdc++-symbols.ver \
+libstdc++-symbols.explist : libstdc++-symbols.ver \
 		${glibcxx_srcdir}/scripts/make_exports.pl \
 		$(libstdc___la_OBJECTS) $(libstdc___la_LIBADD)
 	perl ${glibcxx_srcdir}/scripts/make_exports.pl \
@@ -294,7 +268,6 @@
 	 `echo $(libstdc___la_LIBADD) | \
 	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
 	 > $@ || (rm -f $@ ; exit 1)
-  endif
 endif
 
 CLEANFILES += $(version_dep)
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
index d9637d8..3fa09e0 100644
--- a/libstdc++-v3/src/Makefile.in
+++ b/libstdc++-v3/src/Makefile.in
@@ -95,13 +95,11 @@
 am__objects_3 = compatibility-c++0x.lo compatibility-atomic-c++0x.lo \
 	compatibility-thread-c++0x.lo compatibility-chrono.lo \
 	compatibility-condvar.lo
-@ENABLE_BIONIC_LIBS_TRUE@am_libgnustl_shared_la_OBJECTS =  \
-@ENABLE_BIONIC_LIBS_TRUE@	$(am__objects_2) $(am__objects_3)
+am_libgnustl_shared_la_OBJECTS = $(am__objects_2) $(am__objects_3)
 libgnustl_shared_la_OBJECTS = $(am_libgnustl_shared_la_OBJECTS)
 @ENABLE_BIONIC_LIBS_TRUE@am_libgnustl_shared_la_rpath = -rpath \
 @ENABLE_BIONIC_LIBS_TRUE@	$(toolexeclibdir)
-@ENABLE_BIONIC_LIBS_FALSE@am_libstdc___la_OBJECTS = $(am__objects_2) \
-@ENABLE_BIONIC_LIBS_FALSE@	$(am__objects_3)
+am_libstdc___la_OBJECTS = $(am__objects_2) $(am__objects_3)
 libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS)
 @ENABLE_BIONIC_LIBS_FALSE@am_libstdc___la_rpath = -rpath \
 @ENABLE_BIONIC_LIBS_FALSE@	$(toolexeclibdir)
@@ -372,40 +370,40 @@
 	compatibility-chrono.cc \
 	compatibility-condvar.cc
 
-@ENABLE_BIONIC_LIBS_TRUE@libgnustl_shared_la_SOURCES = $(cxx98_sources) $(cxx11_sources)
-@ENABLE_BIONIC_LIBS_TRUE@libgnustl_shared_la_LIBADD = \
-@ENABLE_BIONIC_LIBS_TRUE@	$(GLIBCXX_LIBS) \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/libsupc++/libsupc++convenience.la \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/src/c++98/libc++98convenience.la \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/src/c++11/libc++11convenience.la
+libgnustl_shared_la_SOURCES = $(cxx98_sources) $(cxx11_sources)
+libgnustl_shared_la_LIBADD = \
+	$(GLIBCXX_LIBS) \
+	$(top_builddir)/libsupc++/libsupc++convenience.la \
+	$(top_builddir)/src/c++98/libc++98convenience.la \
+	$(top_builddir)/src/c++11/libc++11convenience.la
 
-@ENABLE_BIONIC_LIBS_TRUE@libgnustl_shared_la_DEPENDENCIES = \
-@ENABLE_BIONIC_LIBS_TRUE@	${version_dep} \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/libsupc++/libsupc++convenience.la \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/src/c++98/libc++98convenience.la \
-@ENABLE_BIONIC_LIBS_TRUE@	$(top_builddir)/src/c++11/libc++11convenience.la
+libgnustl_shared_la_DEPENDENCIES = \
+	${version_dep} \
+	$(top_builddir)/libsupc++/libsupc++convenience.la \
+	$(top_builddir)/src/c++98/libc++98convenience.la \
+	$(top_builddir)/src/c++11/libc++11convenience.la
 
-@ENABLE_BIONIC_LIBS_TRUE@libgnustl_shared_la_LDFLAGS = \
-@ENABLE_BIONIC_LIBS_TRUE@	${libtool_version_info_string} ${version_arg} -lm
+libgnustl_shared_la_LDFLAGS = \
+	${libtool_version_info_string} ${version_arg} -lm
 
-@ENABLE_BIONIC_LIBS_TRUE@libgnustl_shared_la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
-@ENABLE_BIONIC_LIBS_FALSE@libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources)
-@ENABLE_BIONIC_LIBS_FALSE@libstdc___la_LIBADD = \
-@ENABLE_BIONIC_LIBS_FALSE@	$(GLIBCXX_LIBS) \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/libsupc++/libsupc++convenience.la \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/src/c++98/libc++98convenience.la \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/src/c++11/libc++11convenience.la
+libgnustl_shared_la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
+libstdc___la_SOURCES = $(cxx98_sources) $(cxx11_sources)
+libstdc___la_LIBADD = \
+	$(GLIBCXX_LIBS) \
+	$(top_builddir)/libsupc++/libsupc++convenience.la \
+	$(top_builddir)/src/c++98/libc++98convenience.la \
+	$(top_builddir)/src/c++11/libc++11convenience.la
 
-@ENABLE_BIONIC_LIBS_FALSE@libstdc___la_DEPENDENCIES = \
-@ENABLE_BIONIC_LIBS_FALSE@	${version_dep} \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/libsupc++/libsupc++convenience.la \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/src/c++98/libc++98convenience.la \
-@ENABLE_BIONIC_LIBS_FALSE@	$(top_builddir)/src/c++11/libc++11convenience.la
+libstdc___la_DEPENDENCIES = \
+	${version_dep} \
+	$(top_builddir)/libsupc++/libsupc++convenience.la \
+	$(top_builddir)/src/c++98/libc++98convenience.la \
+	$(top_builddir)/src/c++11/libc++11convenience.la
 
-@ENABLE_BIONIC_LIBS_FALSE@libstdc___la_LDFLAGS = \
-@ENABLE_BIONIC_LIBS_FALSE@	${libtool_version_info_string} ${version_arg} -lm
+libstdc___la_LDFLAGS = \
+	${libtool_version_info_string} ${version_arg} -lm
 
-@ENABLE_BIONIC_LIBS_FALSE@libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
+libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
 
 # A note on compatibility and static libraries.
 # 
@@ -917,8 +915,7 @@
 @ENABLE_SYMVERS_TRUE@	$(EGREP) -v '^[ 	]*#(#| |$$)' $@.tmp | \
 @ENABLE_SYMVERS_TRUE@	  $(CC) -E -P -include $(CONFIG_HEADER) - > $@ || (rm -f $@ ; exit 1)
 @ENABLE_SYMVERS_TRUE@	rm -f $@.tmp
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@  if ENABLE_BIONIC_LIBS
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@    libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
+@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@		$(toplevel_srcdir)/contrib/make_sunver.pl \
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@		$(libgnustl_shared_la_OBJECTS) $(libgnustl_shared_la_LIBADD)
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	CXXFILT="$(CXXFILT)"; export CXXFILT; \
@@ -928,30 +925,7 @@
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	 `echo $(libgnustl_shared_la_LIBADD) | \
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
 @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	 > $@ || (rm -f $@ ; exit 1)
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@  else
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@    libstdc++-symbols.ver-sun : libstdc++-symbols.ver \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@		$(toplevel_srcdir)/contrib/make_sunver.pl \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@		$(libstdc___la_OBJECTS) $(libstdc___la_LIBADD)
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	CXXFILT="$(CXXFILT)"; export CXXFILT; \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	perl $(toplevel_srcdir)/contrib/make_sunver.pl \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	  libstdc++-symbols.ver \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	  $(libstdc___la_OBJECTS:%.lo=.libs/%.o) \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	 `echo $(libstdc___la_LIBADD) | \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@	 > $@ || (rm -f $@ ; exit 1)
-@ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@  endif
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@  if ENABLE_BIONIC_LIBS
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@    libstdc++-symbols.explist : libstdc++-symbols.ver \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@		${glibcxx_srcdir}/scripts/make_exports.pl \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@		$(libgnustl_shared_la_OBJECTS) $(libgnustl_shared_la_LIBADD)
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	perl ${glibcxx_srcdir}/scripts/make_exports.pl \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	  libstdc++-symbols.ver \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	  $(libgnustl_shared_la_OBJECTS:%.lo=.libs/%.o) \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	 `echo $(libgnustl_shared_la_LIBADD) | \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	 > $@ || (rm -f $@ ; exit 1)
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@  else
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@    libstdc++-symbols.explist : libstdc++-symbols.ver \
+@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@libstdc++-symbols.explist : libstdc++-symbols.ver \
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@		${glibcxx_srcdir}/scripts/make_exports.pl \
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@		$(libstdc___la_OBJECTS) $(libstdc___la_LIBADD)
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	perl ${glibcxx_srcdir}/scripts/make_exports.pl \
@@ -960,7 +934,6 @@
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	 `echo $(libstdc___la_LIBADD) | \
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	    sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@	 > $@ || (rm -f $@ ; exit 1)
-@ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@  endif
 
 # Control additional build primary rules.
 all-once: libstdc++convenience.la $(STAMP_DEBUG)
