patches/glibc/ports-2.9/110-arm-fix-sjlj-for-fpu.patch
author Daniel Price <daniel.price@gmail.com>
Tue Nov 20 16:59:17 2012 -0800 (2012-11-20)
changeset 3126 333d3e40cbd1
permissions -rw-r--r--
scripts: refine static linking check to better guide the user

The current mechanism to check if static linking is possible, and the mesage
displayed on failure, can be puzzling to the unsuspecting user.

Also, the current implementation is not using the existing infrastructure,
and is thus difficult to enhance with new tests.

So, switch to using the standard CT_DoExecLog infra, and use four tests to
check for the host compiler:
- check we can run it
- check it can build a trivial program
- check it can statically link that program
- check if it statically link with libstdc++

That should cover most of the problems. Hopefully.

(At the same time, fix a typo in a comment)

Signed-off-by: Daniel Price <daniel.price@gmail.com>
[yann.morin.1998@free.fr: split original patch for self-contained changes]
[yann.morin.1998@free.fr: use steps to better see gcc's output]
[yann.morin.1998@free.fr: commit log]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <163f86b5216fc08c672a.1353459722@nipigon.dssd.com>
Patchwork-Id: 200536
yann@1871
     1
From: Mike Frysinger <vapier at gentoo dot org>
yann@1871
     2
To: libc-ports at sourceware dot org
yann@1871
     3
Subject: [PATCH] arm/fpu/setjmp.S: add missing hidden def
yann@1871
     4
Date: Thu, 25 Dec 2008 23:08:56 -0500
yann@1871
     5
yann@1871
     6
All the other arm setjmp.S files provide a hidden alias for __sigsetjmp.
yann@1871
     7
Without this, we get a nice build failure like so:
yann@1871
     8
yann@1871
     9
/var/tmp/cross/armv4l-unknown-linux-gnu/portage/cross-armv4l-unknown-linux-gnu/glibc-2.9_p20081201/work/build-default-armv4l-unknown-linux-gnu-nptl/libc_pic.os: In function `setjmp':
yann@1871
    10
unwind-pe.c:(.text+0x15a54): undefined reference to `__GI___sigsetjmp'
yann@1871
    11
/var/tmp/cross/armv4l-unknown-linux-gnu/portage/cross-armv4l-unknown-linux-gnu/glibc-2.9_p20081201/work/build-default-armv4l-unknown-linux-gnu-nptl/libc_pic.os: In function `__GI__setjmp':
yann@1871
    12
unwind-pe.c:(.text+0x15a64): undefined reference to `__GI___sigsetjmp'
yann@1871
    13
collect2: ld returned 1 exit status
yann@1871
    14
make[1]: *** [/var/tmp/cross/armv4l-unknown-linux-gnu/portage/cross-armv4l-unknown-linux-gnu/glibc-2.9_p20081201/work/build-default-armv4l-unknown-linux-gnu-nptl/libc.so] Error 1
yann@1871
    15
yann@1871
    16
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
yann@1871
    17
---
yann@1871
    18
 sysdeps/arm/fpu/setjmp.S |    2 ++
yann@1871
    19
 1 files changed, 2 insertions(+), 0 deletions(-)
yann@1871
    20
yann@1871
    21
diff --git a/sysdeps/arm/fpu/setjmp.S b/sysdeps/arm/fpu/setjmp.S
yann@1871
    22
index 8432836..82a7e19 100644
yann@1871
    23
--- a/ports/sysdeps/arm/fpu/setjmp.S
yann@1871
    24
+++ b/ports/sysdeps/arm/fpu/setjmp.S
yann@1871
    25
@@ -33,3 +33,5 @@ ENTRY (__sigsetjmp)
yann@1871
    26
 	/* Make a tail call to __sigjmp_save; it takes the same args.  */
yann@1871
    27
 	B	PLTJMP(C_SYMBOL_NAME(__sigjmp_save))
yann@1871
    28
 END (__sigsetjmp)
yann@1871
    29
+
yann@1871
    30
+hidden_def (__sigsetjmp)