diff options
Diffstat (limited to 'meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch')
-rw-r--r-- | meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch deleted file mode 100644 index a5ded602e5..0000000000 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/0001-scripts-Use-fixed-input-and-output-files-instead-of-.patch +++ /dev/null | |||
@@ -1,67 +0,0 @@ | |||
1 | From 694eba7bb974f6b8bd308804cb24350150108b2b Mon Sep 17 00:00:00 2001 | ||
2 | From: He Zhe <zhe.he@windriver.com> | ||
3 | Date: Wed, 21 Nov 2018 15:12:43 +0800 | ||
4 | Subject: [PATCH] scripts: Use fixed input and output files instead of pipe for here-doc | ||
5 | |||
6 | There was a bug of "as" in binutils that when it checks if the input file and | ||
7 | output file are the same one, it would not check if they are on the same block | ||
8 | device. The check is introduced by the following commit in v2.31. | ||
9 | |||
10 | https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h= | ||
11 | 67f846b59b32f3d704c601669409c2584383fea9 | ||
12 | |||
13 | The here-doc usage in this script creates temporary file in /tmp. When we run in | ||
14 | an environment where /tmp has rarely been used, the newly created temporary file | ||
15 | may have a very low inode number. If the inode number was 6 which is the same as | ||
16 | /dev/null, the as would wrongly think the input file and the output file are the | ||
17 | same and report the following error. | ||
18 | |||
19 | *** Compiler lacks asm-goto support.. Stop. | ||
20 | |||
21 | One observed case happened in docker where the /tmp could be so rarely used that | ||
22 | very low number inode may be allocated and triggers the error. | ||
23 | |||
24 | The fix below for the bug only exists on the master branch of binutils so far | ||
25 | and has not been released from upstream. As the convict is introduced since | ||
26 | v2.31, only v2.31 is affected. | ||
27 | |||
28 | https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h= | ||
29 | 2a50366ded329bfb39d387253450c9d5302c3503 | ||
30 | |||
31 | When building linux-libc-headers we need to use "as" in binutils which does not | ||
32 | contain the fix for the moment. To work around the error, we create a fixed | ||
33 | temporary file to contain the program being tested. | ||
34 | |||
35 | This patch also removes ">/dev/null 2>&1" so we will have more direct error | ||
36 | information in case something else wrong happened. | ||
37 | |||
38 | Upstream-Status: Inappropriate [A work around for binutils v2.31] | ||
39 | |||
40 | Signed-off-by: He Zhe <zhe.he@windriver.com> | ||
41 | --- | ||
42 | scripts/gcc-goto.sh | 5 ++++- | ||
43 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
44 | |||
45 | diff --git a/scripts/gcc-goto.sh b/scripts/gcc-goto.sh | ||
46 | index 8b980fb22..d256a9438 100755 | ||
47 | --- a/scripts/gcc-goto.sh | ||
48 | +++ b/scripts/gcc-goto.sh | ||
49 | @@ -3,7 +3,7 @@ | ||
50 | # Test for gcc 'asm goto' support | ||
51 | # Copyright (C) 2010, Jason Baron <jbaron@redhat.com> | ||
52 | |||
53 | -cat << "END" | $@ -x c - -fno-PIE -c -o /dev/null | ||
54 | +cat << "END" > ./input | ||
55 | int main(void) | ||
56 | { | ||
57 | #if defined(__arm__) || defined(__aarch64__) | ||
58 | @@ -20,3 +20,6 @@ entry: | ||
59 | return 0; | ||
60 | } | ||
61 | END | ||
62 | + | ||
63 | +$@ -x c ./input -fno-PIE -c -o ./output | ||
64 | +rm ./input ./output | ||
65 | -- | ||
66 | 2.19.1 | ||
67 | |||