1From f82d0f1b47ea7ae0d20c00b4f29cfd694ab66a07 Mon Sep 17 00:00:00 2001 2From: David 'Digit' Turner <digit@google.com> 3Date: Tue, 21 Feb 2012 15:07:59 +0100 4Subject: Disable libstdc++ versioning 5 6This patch ensure that the generated library is called libgnustl_shared.so 7instead of libstdc++.so.3 (or some similar number-versioned name). 8 9Change-Id: I63fb5be818115c6d0c7e96b937ba39f225b475cf 10--- 11 gcc-4.4.3/libstdc++-v3/src/Makefile.am | 2 +- 12 gcc-4.4.3/libstdc++-v3/src/Makefile.in | 7 +++++-- 13 gcc-4.6/libstdc++-v3/src/Makefile.am | 2 +- 14 gcc-4.6/libstdc++-v3/src/Makefile.in | 7 +++++-- 15 4 files changed, 12 insertions(+), 6 deletions(-) 16 17diff --git a/gcc-4.4.3/libstdc++-v3/src/Makefile.am b/gcc-4.4.3/libstdc++-v3/src/Makefile.am 18index 187e38e..8fc9ef1 100644 19--- a/gcc-4.4.3/libstdc++-v3/src/Makefile.am 20+++ b/gcc-4.4.3/libstdc++-v3/src/Makefile.am 21@@ -206,7 +206,7 @@ libstdc___la_DEPENDENCIES = \ 22 $(top_builddir)/libsupc++/libsupc++convenience.la 23 24 libstdc___la_LDFLAGS = \ 25- -version-info $(libtool_VERSION) ${version_arg} -lm 26+ -avoid-version ${version_arg} -lm 27 28 # Use special rules for the deprecated source files so that they find 29 # deprecated include files. 30diff --git a/gcc-4.4.3/libstdc++-v3/src/Makefile.in b/gcc-4.4.3/libstdc++-v3/src/Makefile.in 31index 74bbdd4..f08bf34 100644 32--- a/gcc-4.4.3/libstdc++-v3/src/Makefile.in 33+++ b/gcc-4.4.3/libstdc++-v3/src/Makefile.in 34@@ -350,7 +350,7 @@ WARN_CXXFLAGS = \ 35 AM_CPPFLAGS = $(GLIBCXX_INCLUDES) 36 37 # Cross compiler support. 38-toolexeclib_LTLIBRARIES = libstdc++.la 39+toolexeclib_LTLIBRARIES = libgnustl_shared.la 40 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist 41 @ENABLE_SYMVERS_FALSE@version_arg = 42 @ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver 43@@ -454,7 +454,7 @@ libstdc___la_DEPENDENCIES = \ 44 $(top_builddir)/libsupc++/libsupc++convenience.la 45 46 libstdc___la_LDFLAGS = \ 47- -version-info $(libtool_VERSION) ${version_arg} -lm 48+ -avoid-version ${version_arg} -lm 49 50 51 # Use special rules for the deprecated source files so that they find 52@@ -576,6 +576,9 @@ clean-toolexeclibLTLIBRARIES: 53 libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) 54 $(CXXLINK) -rpath $(toolexeclibdir) $(libstdc___la_LDFLAGS) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) 55 56+libgnustl_shared.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) 57+ $(CXXLINK) -rpath $(toolexeclibdir) $(libstdc___la_LDFLAGS) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) 58+ 59 mostlyclean-compile: 60 -rm -f *.$(OBJEXT) 61 62diff --git a/gcc-4.6/libstdc++-v3/src/Makefile.am b/gcc-4.6/libstdc++-v3/src/Makefile.am 63index 43488ce..66007ff 100644 64--- a/gcc-4.6/libstdc++-v3/src/Makefile.am 65+++ b/gcc-4.6/libstdc++-v3/src/Makefile.am 66@@ -251,7 +251,7 @@ libstdc___la_DEPENDENCIES = \ 67 $(top_builddir)/libsupc++/libsupc++convenience.la 68 69 libstdc___la_LDFLAGS = \ 70- -version-info $(libtool_VERSION) ${version_arg} -lm 71+ -avoid-version ${version_arg} -lm 72 73 libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS) 74 75diff --git a/gcc-4.6/libstdc++-v3/src/Makefile.in b/gcc-4.6/libstdc++-v3/src/Makefile.in 76index 146ec3f..99f0f56 100644 77--- a/gcc-4.6/libstdc++-v3/src/Makefile.in 78+++ b/gcc-4.6/libstdc++-v3/src/Makefile.in 79@@ -340,7 +340,7 @@ WARN_CXXFLAGS = \ 80 AM_CPPFLAGS = $(GLIBCXX_INCLUDES) 81 82 # Cross compiler support. 83-toolexeclib_LTLIBRARIES = libstdc++.la 84+toolexeclib_LTLIBRARIES = libgnustl_shared.la 85 @ENABLE_SYMVERS_TRUE@CLEANFILES = libstdc++-symbols.ver $(version_dep) 86 @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist 87 @ENABLE_SYMVERS_FALSE@version_arg = 88@@ -466,7 +466,7 @@ libstdc___la_DEPENDENCIES = \ 89 $(top_builddir)/libsupc++/libsupc++convenience.la 90 91 libstdc___la_LDFLAGS = \ 92- -version-info $(libtool_VERSION) ${version_arg} -lm 93+ -avoid-version ${version_arg} -lm 94 95 libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS) 96 97@@ -596,6 +596,9 @@ clean-toolexeclibLTLIBRARIES: 98 libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) 99 $(libstdc___la_LINK) -rpath $(toolexeclibdir) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) 100 101+libgnustl_shared.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) 102+ $(libstdc___la_LINK) -rpath $(toolexeclibdir) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) 103+ 104 mostlyclean-compile: 105 -rm -f *.$(OBJEXT) 106 107-- 1081.7.6.rc0 109 110