patches/glibc/2.3.6/250-weakalias.patch
author Johannes Stezenbach <js@sig21.net>
Thu Jul 29 19:47:16 2010 +0200 (2010-07-29)
changeset 2045 fdaa6c7f6dea
parent 402 197e1b49586e
permissions -rw-r--r--
cc/gcc: add option to compile against static libstdc++, for gcc-4.4 and newer

Idea and know-how taken from CodeSourcery build script.

Normal build:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb77f3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb76e8000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb75a1000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb757a000)
/lib/ld-linux.so.2 (0xb77f4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb755c000)

CC_STATIC_LIBSTDCXX=y:
$ ldd arm-unknown-linux-uclibcgnueabi-gcc
linux-gate.so.1 => (0xb7843000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb76e6000)
/lib/ld-linux.so.2 (0xb7844000)

I made CC_STATIC_LIBSTDCXX default=y since I think
it is always desirable.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
yann@402
     1
This one was taken from debian.
yann@402
     2
yann@402
     3
# DP: Description: Fix __bind redefinition problem
yann@402
     4
# DP: Related bugs: 
yann@402
     5
# DP: Dpatch author: Phil Blundell
yann@402
     6
# DP: Patch author: Daniel Jacobowitz
yann@402
     7
# DP: Upstream status: In CVS
yann@402
     8
# DP: Status Details:
yann@402
     9
# DP: Date: 2005-12-25
yann@402
    10
yann@402
    11
Index: sysdeps/unix/sysv/linux/arm/socket.S
yann@402
    12
===================================================================
yann@402
    13
RCS file: /cvs/glibc/ports/sysdeps/unix/sysv/linux/arm/socket.S,v
yann@402
    14
retrieving revision 1.12
yann@402
    15
retrieving revision 1.13
yann@402
    16
diff -u -r1.12 -r1.13
yann@402
    17
--- glibc-2.3.6.ds1.orig/sysdeps/unix/sysv/linux/arm/socket.S	4 Dec 2004 21:20:16 -0000	1.12
yann@402
    18
+++ glibc-2.3.6.ds1/sysdeps/unix/sysv/linux/arm/socket.S	27 Oct 2005 18:50:12 -0000	1.13
yann@402
    19
@@ -1,4 +1,6 @@
yann@402
    20
-/* Copyright (C) 1995, 1996, 1997, 1998, 2003 Free Software Foundation, Inc.
yann@402
    21
+/* Copyright (C) 1995, 1996, 1997, 1998, 2003, 2004, 2005
yann@402
    22
+   Free Software Foundation, Inc.
yann@402
    23
+
yann@402
    24
    This file is part of the GNU C Library.
yann@402
    25
 
yann@402
    26
    The GNU C Library is free software; you can redistribute it and/or
yann@402
    27
@@ -32,7 +34,11 @@
yann@402
    28
    The .S files for the other calls just #define socket and #include this.  */
yann@402
    29
 
yann@402
    30
 #ifndef __socket
yann@402
    31
+#ifndef NO_WEAK_ALIAS
yann@402
    32
 #define __socket P(__,socket)
yann@402
    33
+#else
yann@402
    34
+#define __socket socket
yann@402
    35
+#endif
yann@402
    36
 #endif
yann@402
    37
 
yann@402
    38
 #define PUSHARGS_1	str a1, [sp, $-4]!
yann@402
    39
@@ -120,4 +126,6 @@
yann@402
    40
 
yann@402
    41
 PSEUDO_END (__socket)
yann@402
    42
 
yann@402
    43
+#ifndef NO_WEAK_ALIAS
yann@402
    44
 weak_alias (__socket, socket)
yann@402
    45
+#endif