summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-02-04 23:43:00 -0800
committerKhem Raj <raj.khem@gmail.com>2021-02-04 23:46:45 -0800
commit16dd9dfe3ff1220642f91e19f8cc0f4815d035a1 (patch)
treef1afd589bbfc7e1717fa9cd5a0f235a296a8b161
parentac8a6e43b949086018179cce2d91ea637faf0869 (diff)
downloadmeta-openembedded-16dd9dfe3ff1220642f91e19f8cc0f4815d035a1.tar.gz
klibc: Upgrade to 2.0.8 release
Adjust klcc to work with clang Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Andrea Adami <andrea.adami@gmail.com>
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch49
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch28
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch28
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch2
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch6
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch7
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch7
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/cross-clang.patch24
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch14
-rw-r--r--meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch2
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.8.bb (renamed from meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.7.bb)0
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.8.bb (renamed from meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.7.bb)0
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.8.bb (renamed from meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.7.bb)0
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc.inc8
-rw-r--r--meta-initramfs/recipes-devtools/klibc/klibc_2.0.8.bb (renamed from meta-initramfs/recipes-devtools/klibc/klibc_2.0.7.bb)0
-rw-r--r--meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch10
-rw-r--r--meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/include_next.patch22
-rw-r--r--meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb4
18 files changed, 72 insertions, 139 deletions
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch
deleted file mode 100644
index eee144dc4..000000000
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From 241f423a015279cb29b7ad1a34386ef1c32007fc Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 9 Dec 2018 16:47:16 -0800
4Subject: [PATCH] Define ulocked_{fgets|fread|fwrite} aliases
5
6latest clang converts the normal calls to the unlocked variant
7equivalents
8
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10Cc: Andrea Adami <andrea.adami@gmail.com>
11---
12 usr/klibc/fgets.c | 2 ++
13 usr/klibc/fread2.c | 2 ++
14 usr/klibc/fwrite2.c | 2 ++
15 3 files changed, 6 insertions(+)
16
17diff --git a/usr/klibc/fgets.c b/usr/klibc/fgets.c
18index dbf742c6..2e9fcb65 100644
19--- a/usr/klibc/fgets.c
20+++ b/usr/klibc/fgets.c
21@@ -25,3 +25,5 @@ char *fgets(char *s, int n, FILE *f)
22
23 return s;
24 }
25+char *fgets_unlocked(char *s, int n, FILE *f)
26+ __alias("fgets");
27diff --git a/usr/klibc/fread2.c b/usr/klibc/fread2.c
28index 7dca56b1..5c234766 100644
29--- a/usr/klibc/fread2.c
30+++ b/usr/klibc/fread2.c
31@@ -11,3 +11,5 @@ size_t fread(void *ptr, size_t size, size_t nmemb, FILE * f)
32 {
33 return _fread(ptr, size * nmemb, f) / size;
34 }
35+size_t fread_unlocked(void *ptr, size_t size, size_t nmemb, FILE *f)
36+ __alias("fread");
37diff --git a/usr/klibc/fwrite2.c b/usr/klibc/fwrite2.c
38index cebc017c..3e0bb57d 100644
39--- a/usr/klibc/fwrite2.c
40+++ b/usr/klibc/fwrite2.c
41@@ -11,3 +11,5 @@ size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE * f)
42 {
43 return _fwrite(ptr, size * nmemb, f) / size;
44 }
45+size_t fwrite_unlocked(void *ptr, size_t size, size_t nmemb, FILE *f)
46+ __alias("fwrite");
47--
482.19.2
49
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch
deleted file mode 100644
index 181dcfb6d..000000000
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From 4b4147b76518d31a88fb2c58cdbf2236e159a25c Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Fri, 8 Sep 2017 23:10:54 -0700
4Subject: [PATCH] Kbuild.klibc: Add path to compiler headers via -isystem
5
6We need to include this path so it can find compiler headers e.g.
7stdarg.h which is called from wrapper stdarg.h using include_next
8
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10
11---
12 scripts/Kbuild.klibc | 3 ++-
13 1 file changed, 2 insertions(+), 1 deletion(-)
14
15diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc
16index 101f86f..1d5cdc4 100644
17--- a/scripts/Kbuild.klibc
18+++ b/scripts/Kbuild.klibc
19@@ -105,7 +105,8 @@ KLIBCOBJCOPY := $(OBJCOPY)
20 KLIBCOBJDUMP := $(OBJDUMP)
21
22 # klibc include paths
23-KLIBCCPPFLAGS := -nostdinc -iwithprefix include \
24+KLIBCCPPFLAGS := -nostdinc -iwithprefix include \
25+ -isystem $(shell $(CC) -print-file-name=include) \
26 -I$(KLIBCINC)/arch/$(KLIBCARCHDIR) \
27 -I$(KLIBCINC)/bits$(KLIBCBITSIZE) \
28 -I$(KLIBCOBJ)/../include \
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch
deleted file mode 100644
index 1ba05a811..000000000
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From b6185401fc3daa7fa8ba2b84db3e4da3b94a9867 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 26 Jul 2017 16:13:16 -0700
4Subject: [PATCH] Kbuild.klibc: Use -print-libgcc-file-name instead of
5 --print-libgcc
6
7-print-libgcc-file-name works with clang and gcc unlike --print-libgcc
8which is gcc specific
9
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11
12---
13 scripts/Kbuild.klibc | 2 +-
14 1 file changed, 1 insertion(+), 1 deletion(-)
15
16diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc
17index f500d53..101f86f 100644
18--- a/scripts/Kbuild.klibc
19+++ b/scripts/Kbuild.klibc
20@@ -128,7 +128,7 @@ KLIBCCFLAGS += $(KLIBCCPPFLAGS) $(KLIBCREQFLAGS) $(KLIBCARCHREQFLAGS) \
21 KLIBCAFLAGS += -D__ASSEMBLY__ $(KLIBCCFLAGS)
22 KLIBCSTRIPFLAGS += --strip-all -R .comment -R .note
23
24-KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) --print-libgcc)
25+KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) -print-libgcc-file-name)
26 KLIBCLIBGCC ?= $(KLIBCLIBGCC_DEF)
27 KLIBCCRT0 := $(KLIBCOBJ)/arch/$(KLIBCARCHDIR)/crt0.o
28 KLIBCLIBC := $(KLIBCOBJ)/libc.a
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch
index fcf4f891a..ea14c49f0 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch
@@ -14,8 +14,6 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
14 usr/klibc/arch/arm/MCONFIG | 2 +- 14 usr/klibc/arch/arm/MCONFIG | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-) 15 1 file changed, 1 insertion(+), 1 deletion(-)
16 16
17diff --git a/usr/klibc/arch/arm/MCONFIG b/usr/klibc/arch/arm/MCONFIG
18index 303c6ac..48d2685 100644
19--- a/usr/klibc/arch/arm/MCONFIG 17--- a/usr/klibc/arch/arm/MCONFIG
20+++ b/usr/klibc/arch/arm/MCONFIG 18+++ b/usr/klibc/arch/arm/MCONFIG
21@@ -10,7 +10,7 @@ 19@@ -10,7 +10,7 @@
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch
index 94818e366..15b5144e4 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch
@@ -12,11 +12,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
12 usr/klibc/Kbuild | 3 ++- 12 usr/klibc/Kbuild | 3 ++-
13 1 file changed, 2 insertions(+), 1 deletion(-) 13 1 file changed, 2 insertions(+), 1 deletion(-)
14 14
15diff --git a/usr/klibc/Kbuild b/usr/klibc/Kbuild
16index 98caf2e9..b34521e0 100644
17--- a/usr/klibc/Kbuild 15--- a/usr/klibc/Kbuild
18+++ b/usr/klibc/Kbuild 16+++ b/usr/klibc/Kbuild
19@@ -168,7 +168,8 @@ $(SOHASH): $(SOLIB) $(SOLIB).hash 17@@ -183,7 +183,8 @@ $(SOHASH): $(SOLIB) $(SOLIB).hash
20 targets += interp.o 18 targets += interp.o
21 19
22 quiet_cmd_interp = BUILD $@ 20 quiet_cmd_interp = BUILD $@
@@ -25,4 +23,4 @@ index 98caf2e9..b34521e0 100644
25+ -D__ASSEMBLY__ \ 23+ -D__ASSEMBLY__ \
26 -DLIBDIR=\"$(SHLIBDIR)\" \ 24 -DLIBDIR=\"$(SHLIBDIR)\" \
27 -DSOHASH=\"$(SOLIBHASH)\" \ 25 -DSOHASH=\"$(SOLIBHASH)\" \
28 -c -o $@ $< 26 $(KLIBCSTACKFLAGS) \
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch
index 0768f6d51..f096486d0 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch
@@ -10,11 +10,9 @@ Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
10 usr/klibc/SYSCALLS.def | 1 + 10 usr/klibc/SYSCALLS.def | 1 +
11 1 file changed, 1 insertion(+) 11 1 file changed, 1 insertion(+)
12 12
13diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def
14index 6b3bf4c..d4184ba 100644
15--- a/usr/klibc/SYSCALLS.def 13--- a/usr/klibc/SYSCALLS.def
16+++ b/usr/klibc/SYSCALLS.def 14+++ b/usr/klibc/SYSCALLS.def
17@@ -274,6 +274,7 @@ int syslog::klogctl(int, char *, int); 15@@ -275,6 +275,7 @@ int syslog::klogctl(int, char *, int);
18 int sysinfo(struct sysinfo *); 16 int sysinfo(struct sysinfo *);
19 long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long); 17 long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long);
20 <x86_64,ppc64,s390x> long kexec_file_load(int, int, unsigned long, const char *, unsigned long); 18 <x86_64,ppc64,s390x> long kexec_file_load(int, int, unsigned long, const char *, unsigned long);
@@ -22,6 +20,3 @@ index 6b3bf4c..d4184ba 100644
22 20
23 /* 21 /*
24 * Low-level I/O (generally architecture-specific); 22 * Low-level I/O (generally architecture-specific);
25--
262.7.4
27
diff --git a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch
index 3d8d987c4..b03fb9126 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch
@@ -10,11 +10,9 @@ Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
10 usr/klibc/SYSCALLS.def | 1 + 10 usr/klibc/SYSCALLS.def | 1 +
11 1 file changed, 1 insertion(+) 11 1 file changed, 1 insertion(+)
12 12
13diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def
14index c56e8f9..6b3bf4c 100644
15--- a/usr/klibc/SYSCALLS.def 13--- a/usr/klibc/SYSCALLS.def
16+++ b/usr/klibc/SYSCALLS.def 14+++ b/usr/klibc/SYSCALLS.def
17@@ -273,6 +273,7 @@ int reboot::__reboot(int, int, int, void *); 15@@ -274,6 +274,7 @@ int reboot::__reboot(int, int, int, void
18 int syslog::klogctl(int, char *, int); 16 int syslog::klogctl(int, char *, int);
19 int sysinfo(struct sysinfo *); 17 int sysinfo(struct sysinfo *);
20 long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long); 18 long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long);
@@ -22,6 +20,3 @@ index c56e8f9..6b3bf4c 100644
22 20
23 /* 21 /*
24 * Low-level I/O (generally architecture-specific); 22 * Low-level I/O (generally architecture-specific);
25--
262.7.4
27
diff --git a/meta-initramfs/recipes-devtools/klibc/files/cross-clang.patch b/meta-initramfs/recipes-devtools/klibc/files/cross-clang.patch
new file mode 100644
index 000000000..69799c5c7
--- /dev/null
+++ b/meta-initramfs/recipes-devtools/klibc/files/cross-clang.patch
@@ -0,0 +1,24 @@
1--- a/scripts/Kbuild.klibc
2+++ b/scripts/Kbuild.klibc
3@@ -113,10 +113,8 @@ KLIBCCPPFLAGS := -nostdinc -iwithpref
4 -I$(KLIBCINC)/arch/$(KLIBCARCHDIR) \
5 -I$(KLIBCINC)/bits$(KLIBCBITSIZE) \
6 -I$(KLIBCOBJ)/../include \
7- -I$(KLIBCINC)
8-ifeq ($(cc-name),clang)
9-KLIBCCPPFLAGS += -I$(shell $(KLIBCCC) $(KLIBCCFLAGS) --print-file-name=include)
10-endif
11+ -I$(KLIBCINC) \
12+ -I$(shell $(KLIBCCC) $(KLIBCCFLAGS) --print-file-name=include)
13
14 # kernel include paths
15 KLIBCKERNELSRC ?= $(srctree)
16@@ -137,7 +135,7 @@ KLIBCCFLAGS += $(KLIBCCPPFLAGS) $(K
17 KLIBCAFLAGS += -D__ASSEMBLY__ $(KLIBCCFLAGS)
18 KLIBCSTRIPFLAGS += --strip-all -R .comment -R .note
19
20-KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) $(if $(filter gcc,$(cc-name)),--print-libgcc,--print-libgcc-file-name))
21+KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) --print-libgcc-file-name)
22 KLIBCLIBGCC ?= $(KLIBCLIBGCC_DEF)
23 KLIBCCRT0 := $(KLIBCOBJ)/arch/$(KLIBCARCHDIR)/crt0.o
24 KLIBCLIBC := $(KLIBCOBJ)/libc.a
diff --git a/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch b/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
index 3b7031e98..56905a515 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch
@@ -5,10 +5,22 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
5 5
6--- a/klcc/klcc.in 6--- a/klcc/klcc.in
7+++ b/klcc/klcc.in 7+++ b/klcc/klcc.in
8@@ -207,6 +207,12 @@ while ( defined($a = shift(@ARGV)) ) { 8@@ -207,6 +207,24 @@ while ( defined($a = shift(@ARGV)) ) {
9 } elsif ( $a =~ /^--([sysroot=])(.*)$/ ) { 9 } elsif ( $a =~ /^--([sysroot=])(.*)$/ ) {
10 # Override gcc encoded sysroot 10 # Override gcc encoded sysroot
11 push(@ccopt, $a); 11 push(@ccopt, $a);
12+ } elsif ( $a eq '-nostartfiles' ) {
13+ # Allow clang options
14+ push(@ccopt, $a);
15+ } elsif ( $a eq '-nostdlib' ) {
16+ # Allow clang options
17+ push(@ccopt, $a);
18+ } elsif ( $a eq '-nodefaultlibs' ) {
19+ # Allow clang options
20+ push(@ccopt, $a);
21+ } elsif ( $a eq '-no-pie' ) {
22+ # Allow clang options
23+ push(@ccopt, $a);
12+ } elsif ( $a eq '-no-integrated-as' ) { 24+ } elsif ( $a eq '-no-integrated-as' ) {
13+ # Allow clang options 25+ # Allow clang options
14+ push(@ccopt, $a); 26+ push(@ccopt, $a);
diff --git a/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch b/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch
index eac128cc0..597382488 100644
--- a/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch
+++ b/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch
@@ -10,8 +10,6 @@ that /usr/bin/env perl will always return ours (if it has been built).
10 10
11Signed-off-by: Tom Rini <tom_rini@mentor.com> 11Signed-off-by: Tom Rini <tom_rini@mentor.com>
12 12
13Index: klibc-1.5.20/klcc/makeklcc.pl
14===================================================================
15--- a/klcc/makeklcc.pl 13--- a/klcc/makeklcc.pl
16+++ b/klcc/makeklcc.pl 14+++ b/klcc/makeklcc.pl
17@@ -26,7 +26,7 @@ sub pathsearch($) { 15@@ -26,7 +26,7 @@ sub pathsearch($) {
diff --git a/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.7.bb b/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.8.bb
index 4011aa231..4011aa231 100644
--- a/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.7.bb
+++ b/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.8.bb
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.7.bb b/meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.8.bb
index c835fd647..c835fd647 100644
--- a/meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.7.bb
+++ b/meta-initramfs/recipes-devtools/klibc/klibc-static-utils_2.0.8.bb
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.7.bb b/meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.8.bb
index 06e71cb7b..06e71cb7b 100644
--- a/meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.7.bb
+++ b/meta-initramfs/recipes-devtools/klibc/klibc-utils_2.0.8.bb
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc.inc b/meta-initramfs/recipes-devtools/klibc/klibc.inc
index 243107e9a..6e8ec0fd5 100644
--- a/meta-initramfs/recipes-devtools/klibc/klibc.inc
+++ b/meta-initramfs/recipes-devtools/klibc/klibc.inc
@@ -15,13 +15,11 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/libs/klibc/2.0/klibc-${PV}.tar.xz \
15 file://0001-include-linux-sysinfo.h-directly.patch \ 15 file://0001-include-linux-sysinfo.h-directly.patch \
16 file://0001-mkfifo-Implement-mkfifo.patch \ 16 file://0001-mkfifo-Implement-mkfifo.patch \
17 file://0001-always-use-bfd-linker.patch \ 17 file://0001-always-use-bfd-linker.patch \
18 file://0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch \
19 file://0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch \
20 file://0001-arm-Do-not-set-a-fallback-march-and-mtune.patch \ 18 file://0001-arm-Do-not-set-a-fallback-march-and-mtune.patch \
21 file://0001-klibc_2.0.4-add-kexec_file_load-syscall.patch \ 19 file://0001-klibc_2.0.4-add-kexec_file_load-syscall.patch \
22 file://0001-klibc-add-getrandom-syscall.patch \ 20 file://0001-klibc-add-getrandom-syscall.patch \
23 file://0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch \ 21 file://0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch \
24 file://0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch \ 22 file://cross-clang.patch \
25 " 23 "
26 24
27ARMPATCHES ?= "" 25ARMPATCHES ?= ""
@@ -29,9 +27,7 @@ ARMPATCHES ?= ""
29ARMPATCHES_arm = " \ 27ARMPATCHES_arm = " \
30 file://armv4-fix-v4bx.patch \ 28 file://armv4-fix-v4bx.patch \
31 " 29 "
32 30SRC_URI[sha256sum] = "4e48f1398cfe3ce0b6df55ce6e70acf54fc8488e3aea3fb3610ee1622d9cb436"
33SRC_URI[md5sum] = "712f8bc1a069e03d92584b7f5380c521"
34SRC_URI[sha256sum] = "abef2637ca823485d9c90ce9512e2b08a65047ec4da204635eeaef95a41a9122"
35 31
36S = "${WORKDIR}/klibc-${PV}" 32S = "${WORKDIR}/klibc-${PV}"
37 33
diff --git a/meta-initramfs/recipes-devtools/klibc/klibc_2.0.7.bb b/meta-initramfs/recipes-devtools/klibc/klibc_2.0.8.bb
index 7df0b0a3d..7df0b0a3d 100644
--- a/meta-initramfs/recipes-devtools/klibc/klibc_2.0.7.bb
+++ b/meta-initramfs/recipes-devtools/klibc/klibc_2.0.8.bb
diff --git a/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
index 5bbb178bc..07fa841cc 100644
--- a/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
+++ b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/0011-purgatory-Makefile-adapt-to-klcc.patch
@@ -10,11 +10,9 @@ Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
10 purgatory/Makefile | 6 +++--- 10 purgatory/Makefile | 6 +++---
11 1 file changed, 3 insertions(+), 3 deletions(-) 11 1 file changed, 3 insertions(+), 3 deletions(-)
12 12
13diff --git a/purgatory/Makefile b/purgatory/Makefile
14index 49ce80a..1542b3a 100644
15--- a/purgatory/Makefile 13--- a/purgatory/Makefile
16+++ b/purgatory/Makefile 14+++ b/purgatory/Makefile
17@@ -47,7 +47,7 @@ purgatory/sha256.o: $(srcdir)/util_lib/sha256.c 15@@ -47,7 +47,7 @@ purgatory/sha256.o: $(srcdir)/util_lib/s
18 $(PURGATORY): CC=$(TARGET_CC) 16 $(PURGATORY): CC=$(TARGET_CC)
19 $(PURGATORY): CFLAGS+=$(PURGATORY_EXTRA_CFLAGS) \ 17 $(PURGATORY): CFLAGS+=$(PURGATORY_EXTRA_CFLAGS) \
20 $($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ 18 $($(ARCH)_PURGATORY_EXTRA_CFLAGS) \
@@ -23,14 +21,14 @@ index 49ce80a..1542b3a 100644
23 -fno-zero-initialized-in-bss \ 21 -fno-zero-initialized-in-bss \
24 -fno-PIC -fno-PIE -fno-stack-protector 22 -fno-PIC -fno-PIE -fno-stack-protector
25 23
26@@ -59,8 +59,8 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ 24@@ -59,8 +59,8 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATO
27 -Iinclude \ 25 -Iinclude \
28 -I$(shell $(CC) -print-file-name=include) 26 -I$(shell $(CC) -print-file-name=include)
29 $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ 27 $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\
30- -Wl,--no-undefined -nostartfiles -nostdlib \ 28- -Wl,--no-undefined -nostartfiles -nostdlib \
31- -nodefaultlibs -e purgatory_start -r \ 29- -nodefaultlibs -e purgatory_start -r \
32+ -Wl,--no-undefined -Wl,-no-pie -Wl,-nostartfiles -Wl,-nostdlib \ 30+ -Wl,--no-undefined -no-pie -nostartfiles -nostdlib \
33+ -Wl,-nodefaultlibs -Wl,--entry=purgatory_start -Wl,-r \ 31+ -nodefaultlibs -Wl,--entry=purgatory_start -Wl,-r \
34 -Wl,-Map=$(PURGATORY_MAP) 32 -Wl,-Map=$(PURGATORY_MAP)
35 33
36 $(PURGATORY): $(PURGATORY_OBJS) 34 $(PURGATORY): $(PURGATORY_OBJS)
diff --git a/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/include_next.patch b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/include_next.patch
new file mode 100644
index 000000000..d4fbd1436
--- /dev/null
+++ b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc/include_next.patch
@@ -0,0 +1,22 @@
1--- a/kexec/Makefile
2+++ b/kexec/Makefile
3@@ -110,7 +110,7 @@ $(KEXEC): $(KEXEC_OBJS) $(UTIL_LIB)
4 @$(MKDIR) -p $(@D)
5 $(LINK.o) -o $@ $^ $(CFLAGS) $(LIBS)
6
7-$(KEXEC): CPPFLAGS+=-I$(srcdir)/kexec/arch/$(ARCH)/include
8+$(KEXEC): CPPFLAGS+=-I$(srcdir)/kexec/arch/$(ARCH)/include -I$(shell $(CC) -print-file-name=include)
9
10 kexec/fs2dt.o: CPPFLAGS+=$($(ARCH)_FS2DT_INCLUDE)
11
12--- a/Makefile.in
13+++ b/Makefile.in
14@@ -46,7 +46,7 @@ TARGET_CFLAGS = @TARGET_CFLAGS@
15 # Base compiler flags. These are extended by the subcomponent-Makefiles
16 # where necessary.
17 CPPFLAGS = @CPPFLAGS@ -I$(srcdir)/include -I$(srcdir)/util_lib/include \
18- -Iinclude/ $($(ARCH)_CPPFLAGS)
19+ -Iinclude/ $($(ARCH)_CPPFLAGS) -I$(shell $(CC) -print-file-name=include)
20 CFLAGS = @CFLAGS@ -static -fno-strict-aliasing -Wall -Wstrict-prototypes
21 PURGATORY_EXTRA_CFLAGS = @PURGATORY_EXTRA_CFLAGS@
22 ASFLAGS = @ASFLAGS@ $($(ARCH)_ASFLAGS)
diff --git a/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
index d28cfc90f..c49b24f52 100644
--- a/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
+++ b/meta-initramfs/recipes-kernel/kexec/kexec-tools-klibc_git.bb
@@ -32,7 +32,9 @@ KLIBC_PATCHES += " \
32 file://0013-sha256.h-avoid-inclusion-of-sys-types.h.patch \ 32 file://0013-sha256.h-avoid-inclusion-of-sys-types.h.patch \
33 file://0014-add-if_nameindex-from-musl.patch \ 33 file://0014-add-if_nameindex-from-musl.patch \
34 file://0015-vmcore-dmesg-fix-warning.patch \ 34 file://0015-vmcore-dmesg-fix-warning.patch \
35 file://klibc-reboot.patch" 35 file://klibc-reboot.patch \
36 file://include_next.patch \
37 "
36 38
37WARNING_FIXES = "" 39WARNING_FIXES = ""
38FROM_OE_CORE = "file://arm_crashdump-fix-buffer-align.patch \ 40FROM_OE_CORE = "file://arm_crashdump-fix-buffer-align.patch \