patches/gcc/4.3.3/190-libstdc++-pic.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:28:10 2011 +0200 (2011-08-02)
changeset 2590 b64cfb67944e
permissions -rw-r--r--
scripts/functions: svn retrieval first tries the mirror for tarballs

The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1162
     1
Original patch from: ../4.3.2/190-libstdc++-pic.patch
yann@1162
     2
yann@1162
     3
-= BEGIN original header =-
yann@1162
     4
Original patch from gentoo: gentoo/src/patchsets/gcc/4.3.1/gentoo/54_all_300-libstdc++-pic.patch
yann@1162
     5
install libstdc++_pic.a if we have pic objs
yann@1162
     6
yann@1162
     7
-= END original header =-
yann@1162
     8
yann@1162
     9
diff -durN gcc-4.3.3.orig/libstdc++-v3/src/Makefile.am gcc-4.3.3/libstdc++-v3/src/Makefile.am
yann@1162
    10
--- gcc-4.3.3.orig/libstdc++-v3/src/Makefile.am	2008-02-29 19:26:50.000000000 +0100
yann@1162
    11
+++ gcc-4.3.3/libstdc++-v3/src/Makefile.am	2009-01-27 22:19:34.000000000 +0100
yann@1162
    12
@@ -289,6 +289,13 @@
yann@1162
    13
 	  $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
yann@1162
    14
 
yann@1162
    15
 
yann@1162
    16
+install-exec-local:
yann@1162
    17
+	pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
yann@1162
    18
+	if [ x"$$pic_objs" != x ]; then \
yann@1162
    19
+		$(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
yann@1162
    20
+		$(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
yann@1162
    21
+	fi
yann@1162
    22
+
yann@1162
    23
 # Added bits to build debug library.
yann@1162
    24
 if GLIBCXX_BUILD_DEBUG
yann@1162
    25
 all-local: build_debug
yann@1162
    26
diff -durN gcc-4.3.3.orig/libstdc++-v3/src/Makefile.in gcc-4.3.3/libstdc++-v3/src/Makefile.in
yann@1162
    27
--- gcc-4.3.3.orig/libstdc++-v3/src/Makefile.in	2008-02-29 19:26:50.000000000 +0100
yann@1162
    28
+++ gcc-4.3.3/libstdc++-v3/src/Makefile.in	2009-01-27 22:19:34.000000000 +0100
yann@1162
    29
@@ -693,7 +693,7 @@
yann@1162
    30
 
yann@1162
    31
 install-data-am: install-data-local
yann@1162
    32
 
yann@1162
    33
-install-exec-am: install-toolexeclibLTLIBRARIES
yann@1162
    34
+install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
yann@1162
    35
 
yann@1162
    36
 install-info: install-info-am
yann@1162
    37
 
yann@1162
    38
@@ -732,7 +732,7 @@
yann@1162
    39
 	maintainer-clean-generic mostlyclean mostlyclean-compile \
yann@1162
    40
 	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
yann@1162
    41
 	tags uninstall uninstall-am uninstall-info-am \
yann@1162
    42
-	uninstall-toolexeclibLTLIBRARIES
yann@1162
    43
+	uninstall-toolexeclibLTLIBRARIES install-exec-local
yann@1162
    44
 
yann@1162
    45
 
yann@1162
    46
 # Symbol versioning for shared libraries.
yann@1162
    47
@@ -858,6 +858,14 @@
yann@1162
    48
 install_debug:
yann@1162
    49
 	(cd ${debugdir} && $(MAKE) \
yann@1162
    50
 	toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
yann@1162
    51
+
yann@1162
    52
+install-exec-local:
yann@1162
    53
+	pic_objs=`sed -n "s:'::g;s:^pic_object=::p" *.lo | grep -v '^none$$'`; \
yann@1162
    54
+	if [ x"$$pic_objs" != x ]; then \
yann@1162
    55
+		$(AR) cru libstdc++_pic.a $$pic_objs $(top_builddir)/libsupc++/*.o || exit 1; \
yann@1162
    56
+		$(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir) || exit 1; \
yann@1162
    57
+	fi
yann@1162
    58
+
yann@1162
    59
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
yann@1162
    60
 # Otherwise a system limit (for SysV at least) may be exceeded.
yann@1162
    61
 .NOEXPORT: