patches/gcc/4.3.2/190-libstdc++-pic.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:26:53 2011 +0200 (2011-08-02)
changeset 2592 4908eb2b6f17
parent 747 d3e603e7c17c
permissions -rw-r--r--
scripts/functions: cvs retrieval first tries the mirror for tarballs

The cvs 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 cvs.

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 cvs retrieval will kick in.

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