diff options
author | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-04-05 22:28:33 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2019-04-05 22:31:28 +0300 |
commit | 193236933b0f4ab91b1625b64e2187e2db4e0e8f (patch) | |
tree | e12769d7c76d8b0517d6de3d3c72189753d253ed /meta-openembedded/meta-initramfs/recipes-devtools/klibc/files | |
parent | bd93df9478f2f56ffcbc8cb88f1709c735dcd85b (diff) | |
download | openbmc-193236933b0f4ab91b1625b64e2187e2db4e0e8f.tar.xz |
reset upstream subtrees to HEAD
Reset the following subtrees on HEAD:
poky: 8217b477a1(master)
meta-xilinx: 64aa3d35ae(master)
meta-openembedded: 0435c9e193(master)
meta-raspberrypi: 490a4441ac(master)
meta-security: cb6d1c85ee(master)
Squashed patches:
meta-phosphor: drop systemd 239 patches
meta-phosphor: mrw-api: use correct install path
Change-Id: I268e2646d9174ad305630c6bbd3fbc1a6105f43d
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'meta-openembedded/meta-initramfs/recipes-devtools/klibc/files')
17 files changed, 530 insertions, 0 deletions
diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-in_-structs-for-non-glibc-system-libs.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-in_-structs-for-non-glibc-system-libs.patch new file mode 100644 index 000000000..e7a0cce83 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-in_-structs-for-non-glibc-system-libs.patch @@ -0,0 +1,87 @@ +From 57e3a60b23891905733bfea7a1cb78c2377cc524 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 9 Jul 2017 15:17:29 -0700 +Subject: [PATCH] Define in_* structs for non-glibc system libs + +These defines and structs are required to be coming from +userspace netinet/in.h, which is being overridden in klibc +however, libc-compat.h from kernel is only written keeping +glibc in mind, and does not provide adequate guards for musl +to infer that these structs should be defined in linux/in.h + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + usr/include/net/if.h | 11 +++++++++++ + usr/include/netinet/in.h | 36 ++++++++++++++++++++++++++++++++++++ + 2 files changed, 47 insertions(+) + +diff --git a/usr/include/net/if.h b/usr/include/net/if.h +index 116a176..6246b12 100644 +--- a/usr/include/net/if.h ++++ b/usr/include/net/if.h +@@ -1,6 +1,17 @@ + #ifndef _NET_IF_H + #define _NET_IF_H + ++#ifndef __GLIBC__ ++#include <linux/libc-compat.h> ++#undef __UAPI_DEF_IF_IFREQ ++#define __UAPI_DEF_IF_IFREQ 1 ++#undef __UAPI_DEF_IF_IFNAMSIZ ++#define __UAPI_DEF_IF_IFNAMSIZ 1 ++#undef __UAPI_DEF_IF_IFMAP ++#define __UAPI_DEF_IF_IFMAP 1 ++#undef __UAPI_DEF_IF_NET_DEVICE_FLAGS ++#define __UAPI_DEF_IF_NET_DEVICE_FLAGS 1 ++#endif + #include <sys/socket.h> + #include <sys/types.h> + #include <linux/if.h> +diff --git a/usr/include/netinet/in.h b/usr/include/netinet/in.h +index 2952bb2..0c95bc9 100644 +--- a/usr/include/netinet/in.h ++++ b/usr/include/netinet/in.h +@@ -5,6 +5,42 @@ + #ifndef _NETINET_IN_H + #define _NETINET_IN_H + ++#ifndef __GLIBC__ ++#include <linux/libc-compat.h> ++ ++#undef __UAPI_DEF_IN_ADDR ++#undef __UAPI_DEF_IN_IPPROTO ++#undef __UAPI_DEF_IN_PKTINFO ++#undef __UAPI_DEF_IP_MREQ ++#undef __UAPI_DEF_SOCKADDR_IN ++#undef __UAPI_DEF_IN_CLASS ++#undef __UAPI_DEF_IN6_ADDR ++#undef __UAPI_DEF_IN6_ADDR_ALT ++#undef __UAPI_DEF_SOCKADDR_IN6 ++#undef __UAPI_DEF_IPV6_MREQ ++#undef __UAPI_DEF_IPPROTO_V6 ++#undef __UAPI_DEF_IPV6_OPTIONS ++#undef __UAPI_DEF_IN6_PKTINFO ++#undef __UAPI_DEF_IP6_MTUINFO ++#undef __UAPI_DEF_IF_IFREQ ++ ++#define __UAPI_DEF_IN_ADDR 1 ++#define __UAPI_DEF_IN_IPPROTO 1 ++#define __UAPI_DEF_IN_PKTINFO 1 ++#define __UAPI_DEF_IP_MREQ 1 ++#define __UAPI_DEF_SOCKADDR_IN 1 ++#define __UAPI_DEF_IN_CLASS 1 ++#define __UAPI_DEF_IN6_ADDR 1 ++#define __UAPI_DEF_IN6_ADDR_ALT 1 ++#define __UAPI_DEF_SOCKADDR_IN6 1 ++#define __UAPI_DEF_IPV6_MREQ 1 ++#define __UAPI_DEF_IPPROTO_V6 1 ++#define __UAPI_DEF_IPV6_OPTIONS 1 ++#define __UAPI_DEF_IN6_PKTINFO 1 ++#define __UAPI_DEF_IP6_MTUINFO 1 ++#define __UAPI_DEF_IF_IFREQ 1 ++#endif ++ + #include <klibc/extern.h> + #include <stdint.h> + #include <endian.h> /* Must be included *before* <linux/in.h> */ diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch new file mode 100644 index 000000000..eee144dc4 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Define-ulocked_-fgets-fread-fwrite-aliases.patch @@ -0,0 +1,49 @@ +From 241f423a015279cb29b7ad1a34386ef1c32007fc Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 9 Dec 2018 16:47:16 -0800 +Subject: [PATCH] Define ulocked_{fgets|fread|fwrite} aliases + +latest clang converts the normal calls to the unlocked variant +equivalents + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Cc: Andrea Adami <andrea.adami@gmail.com> +--- + usr/klibc/fgets.c | 2 ++ + usr/klibc/fread2.c | 2 ++ + usr/klibc/fwrite2.c | 2 ++ + 3 files changed, 6 insertions(+) + +diff --git a/usr/klibc/fgets.c b/usr/klibc/fgets.c +index dbf742c6..2e9fcb65 100644 +--- a/usr/klibc/fgets.c ++++ b/usr/klibc/fgets.c +@@ -25,3 +25,5 @@ char *fgets(char *s, int n, FILE *f) + + return s; + } ++char *fgets_unlocked(char *s, int n, FILE *f) ++ __alias("fgets"); +diff --git a/usr/klibc/fread2.c b/usr/klibc/fread2.c +index 7dca56b1..5c234766 100644 +--- a/usr/klibc/fread2.c ++++ b/usr/klibc/fread2.c +@@ -11,3 +11,5 @@ size_t fread(void *ptr, size_t size, size_t nmemb, FILE * f) + { + return _fread(ptr, size * nmemb, f) / size; + } ++size_t fread_unlocked(void *ptr, size_t size, size_t nmemb, FILE *f) ++ __alias("fread"); +diff --git a/usr/klibc/fwrite2.c b/usr/klibc/fwrite2.c +index cebc017c..3e0bb57d 100644 +--- a/usr/klibc/fwrite2.c ++++ b/usr/klibc/fwrite2.c +@@ -11,3 +11,5 @@ size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE * f) + { + return _fwrite(ptr, size * nmemb, f) / size; + } ++size_t fwrite_unlocked(void *ptr, size_t size, size_t nmemb, FILE *f) ++ __alias("fwrite"); +-- +2.19.2 + diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch new file mode 100644 index 000000000..181dcfb6d --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Add-path-to-compiler-headers-via-isyste.patch @@ -0,0 +1,28 @@ +From 4b4147b76518d31a88fb2c58cdbf2236e159a25c Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 8 Sep 2017 23:10:54 -0700 +Subject: [PATCH] Kbuild.klibc: Add path to compiler headers via -isystem + +We need to include this path so it can find compiler headers e.g. +stdarg.h which is called from wrapper stdarg.h using include_next + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + scripts/Kbuild.klibc | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc +index 101f86f..1d5cdc4 100644 +--- a/scripts/Kbuild.klibc ++++ b/scripts/Kbuild.klibc +@@ -105,7 +105,8 @@ KLIBCOBJCOPY := $(OBJCOPY) + KLIBCOBJDUMP := $(OBJDUMP) + + # klibc include paths +-KLIBCCPPFLAGS := -nostdinc -iwithprefix include \ ++KLIBCCPPFLAGS := -nostdinc -iwithprefix include \ ++ -isystem $(shell $(CC) -print-file-name=include) \ + -I$(KLIBCINC)/arch/$(KLIBCARCHDIR) \ + -I$(KLIBCINC)/bits$(KLIBCBITSIZE) \ + -I$(KLIBCOBJ)/../include \ diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch new file mode 100644 index 000000000..1ba05a811 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-Kbuild.klibc-Use-print-libgcc-file-name-instead-of-p.patch @@ -0,0 +1,28 @@ +From b6185401fc3daa7fa8ba2b84db3e4da3b94a9867 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 26 Jul 2017 16:13:16 -0700 +Subject: [PATCH] Kbuild.klibc: Use -print-libgcc-file-name instead of + --print-libgcc + +-print-libgcc-file-name works with clang and gcc unlike --print-libgcc +which is gcc specific + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + scripts/Kbuild.klibc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc +index f500d53..101f86f 100644 +--- a/scripts/Kbuild.klibc ++++ b/scripts/Kbuild.klibc +@@ -128,7 +128,7 @@ KLIBCCFLAGS += $(KLIBCCPPFLAGS) $(KLIBCREQFLAGS) $(KLIBCARCHREQFLAGS) \ + KLIBCAFLAGS += -D__ASSEMBLY__ $(KLIBCCFLAGS) + KLIBCSTRIPFLAGS += --strip-all -R .comment -R .note + +-KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) --print-libgcc) ++KLIBCLIBGCC_DEF := $(shell $(KLIBCCC) $(KLIBCCFLAGS) -print-libgcc-file-name) + KLIBCLIBGCC ?= $(KLIBCLIBGCC_DEF) + KLIBCCRT0 := $(KLIBCOBJ)/arch/$(KLIBCARCHDIR)/crt0.o + KLIBCLIBC := $(KLIBCOBJ)/libc.a diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-always-use-bfd-linker.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-always-use-bfd-linker.patch new file mode 100644 index 000000000..de04d691f --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-always-use-bfd-linker.patch @@ -0,0 +1,28 @@ +From 63ab5102d6ef362a597941e62470bf19e6f1652b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 11 Jul 2017 08:09:52 -0700 +Subject: [PATCH] always use bfd linker + +its possible that distros choose to default to gold linker +therefore explicitly asking for bfd linker would fix the +linking issues on such distros + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index dc10fc5..40647be 100644 +--- a/Makefile ++++ b/Makefile +@@ -20,7 +20,7 @@ include $(srctree)/scripts/Kbuild.include + KLIBCROSS ?= $(CROSS_COMPILE) + export KLIBCROSS + export CC := $(KLIBCROSS)gcc +-export LD := $(KLIBCROSS)ld ++export LD := $(KLIBCROSS)ld.bfd + export AR := $(KLIBCROSS)ar + export RANLIB := $(KLIBCROSS)ranlib + export STRIP := $(KLIBCROSS)strip diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch new file mode 100644 index 000000000..fcf4f891a --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-arm-Do-not-set-a-fallback-march-and-mtune.patch @@ -0,0 +1,29 @@ +From ebd2b0e414c98467156b961abb470b5d07f37ea8 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 29 Sep 2017 23:11:53 -0700 +Subject: [PATCH] arm: Do not set a fallback march and mtune + +In OE we pass the options explicitly, there is +no need to set it inside the makefiles, we will +need to compute values for CPU_ARCH and CPU_TUNE +which is a bit harder in OE + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + usr/klibc/arch/arm/MCONFIG | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/usr/klibc/arch/arm/MCONFIG b/usr/klibc/arch/arm/MCONFIG +index 303c6ac..48d2685 100644 +--- a/usr/klibc/arch/arm/MCONFIG ++++ b/usr/klibc/arch/arm/MCONFIG +@@ -10,7 +10,7 @@ + CPU_ARCH ?= armv4 + CPU_TUNE ?= strongarm + +-KLIBCOPTFLAGS += -Os -march=$(CPU_ARCH) -mtune=$(CPU_TUNE) ++KLIBCOPTFLAGS += -Os + KLIBCBITSIZE = 32 + KLIBCREQFLAGS += -fno-exceptions + KLIBCSTRIPFLAGS += -R .ARM.exidx diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-dash-Specify-format-string-in-fmtstr.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-dash-Specify-format-string-in-fmtstr.patch new file mode 100644 index 000000000..46a23987f --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-dash-Specify-format-string-in-fmtstr.patch @@ -0,0 +1,29 @@ +From 8beffe501c1ac5b35d62004735c4157c74183901 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 9 Jul 2017 13:51:25 -0700 +Subject: [PATCH] dash: Specify format string in fmtstr() + +Fixes build with hardening flags + +usr/dash/jobs.c:429:3: error: format not a string literal and no format arguments [-Werror=format-security] + col = fmtstr(s, 32, strsignal(st)); + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + usr/dash/jobs.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/usr/dash/jobs.c b/usr/dash/jobs.c +index 009bbfe..299bcac 100644 +--- a/usr/dash/jobs.c ++++ b/usr/dash/jobs.c +@@ -426,7 +426,7 @@ sprint_status(char *s, int status, int sigonly) + goto out; + #endif + } +- col = fmtstr(s, 32, strsignal(st)); ++ col = fmtstr(s, 32, "%s", strsignal(st)); + #ifdef WCOREDUMP + if (WCOREDUMP(status)) { + col += fmtstr(s + col, 16, " (core dumped)"); diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-include-linux-sysinfo.h-directly.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-include-linux-sysinfo.h-directly.patch new file mode 100644 index 000000000..04c97fc5e --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-include-linux-sysinfo.h-directly.patch @@ -0,0 +1,30 @@ +From d966d52d1e569cbc2293d841285e2b8941f28c61 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 9 Jul 2017 15:56:28 -0700 +Subject: [PATCH] include linux/sysinfo.h directly + +This is done to avoid the kernel header linux/kernel.h to use +__GLIBC__ define to decide on if libc implements sysinfo() API +or not. Kernel headers should be independent of such assumptions +but until its done in right place, change the local header +override to avoid this assumption + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + usr/include/sys/sysinfo.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/usr/include/sys/sysinfo.h b/usr/include/sys/sysinfo.h +index dba68dc..d145c0b 100644 +--- a/usr/include/sys/sysinfo.h ++++ b/usr/include/sys/sysinfo.h +@@ -5,7 +5,7 @@ + #ifndef _SYS_SYSINFO_H + #define _SYS_SYSINFO_H + +-#include <linux/kernel.h> ++#include <linux/sysinfo.h> + + extern int sysinfo(struct sysinfo *info); + diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch new file mode 100644 index 000000000..94818e366 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-Kbuild-Accept-EXTRA_KLIBCAFLAGS.patch @@ -0,0 +1,28 @@ +From cdc6edc2cfcd0ce88d6e66654d605dad303b1a75 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 11 Sep 2018 17:03:36 -0700 +Subject: [PATCH] klibc/Kbuild: Accept EXTRA_KLIBCAFLAGS + +For passing additional assembler flags + +Upstream-Status: Pending + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + usr/klibc/Kbuild | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/usr/klibc/Kbuild b/usr/klibc/Kbuild +index 98caf2e9..b34521e0 100644 +--- a/usr/klibc/Kbuild ++++ b/usr/klibc/Kbuild +@@ -168,7 +168,8 @@ $(SOHASH): $(SOLIB) $(SOLIB).hash + targets += interp.o + + quiet_cmd_interp = BUILD $@ +- cmd_interp = $(KLIBCCC) $(klibccflags) -D__ASSEMBLY__ \ ++ cmd_interp = $(KLIBCCC) $(klibccflags) $(EXTRA_KLIBCAFLAGS) \ ++ -D__ASSEMBLY__ \ + -DLIBDIR=\"$(SHLIBDIR)\" \ + -DSOHASH=\"$(SOLIBHASH)\" \ + -c -o $@ $< diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch new file mode 100644 index 000000000..0768f6d51 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc-add-getrandom-syscall.patch @@ -0,0 +1,27 @@ +From e4d5d5224609d7d5c824dd231f5baec868befdfa Mon Sep 17 00:00:00 2001 +From: Andrea Adami <andrea.adami@gmail.com> +Date: Tue, 4 Sep 2018 23:56:00 +0200 +Subject: [PATCH 1/1] klibc: add getrandom() syscall + +needed by latest kexec-tools for qemuarm64 (kashan) + +Signed-off-by: Andrea Adami <andrea.adami@gmail.com> +--- + usr/klibc/SYSCALLS.def | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def +index 6b3bf4c..d4184ba 100644 +--- a/usr/klibc/SYSCALLS.def ++++ b/usr/klibc/SYSCALLS.def +@@ -274,6 +274,7 @@ int syslog::klogctl(int, char *, int); + int sysinfo(struct sysinfo *); + long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long); + <x86_64,ppc64,s390x> long kexec_file_load(int, int, unsigned long, const char *, unsigned long); ++ssize_t getrandom(void *, size_t, unsigned int); + + /* + * Low-level I/O (generally architecture-specific); +-- +2.7.4 + diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch new file mode 100644 index 000000000..3d8d987c4 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-klibc_2.0.4-add-kexec_file_load-syscall.patch @@ -0,0 +1,27 @@ +From 90683d5eaabfa684a71411d6e3262153ac191ad8 Mon Sep 17 00:00:00 2001 +From: Andrea Adami <andrea.adami@gmail.com> +Date: Tue, 4 Sep 2018 23:44:30 +0200 +Subject: [PATCH 1/1] klibc_2.0.4: add kexec_file_load syscall + +for supported archs only (matched in kexec-tools) + +Signed-off-by: Andrea Adami <andrea.adami@gmail.com> +--- + usr/klibc/SYSCALLS.def | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def +index c56e8f9..6b3bf4c 100644 +--- a/usr/klibc/SYSCALLS.def ++++ b/usr/klibc/SYSCALLS.def +@@ -273,6 +273,7 @@ int reboot::__reboot(int, int, int, void *); + int syslog::klogctl(int, char *, int); + int sysinfo(struct sysinfo *); + long kexec_load(void *, unsigned long, struct kexec_segment *, unsigned long); ++<x86_64,ppc64,s390x> long kexec_file_load(int, int, unsigned long, const char *, unsigned long); + + /* + * Low-level I/O (generally architecture-specific); +-- +2.7.4 + diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-mkfifo-Implement-mkfifo.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-mkfifo-Implement-mkfifo.patch new file mode 100644 index 000000000..3bc081d4e --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/0001-mkfifo-Implement-mkfifo.patch @@ -0,0 +1,27 @@ +From cf97079009ba48d10e52052b2eab7461ea4dd09b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 10 Jul 2017 20:42:50 -0700 +Subject: [PATCH] mkfifo: Implement mkfifo + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- + usr/utils/mkfifo.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/usr/utils/mkfifo.c b/usr/utils/mkfifo.c +index 5a758b2..f1f577e 100644 +--- a/usr/utils/mkfifo.c ++++ b/usr/utils/mkfifo.c +@@ -26,6 +26,11 @@ static int make_fifo(char *dir) + return 0; + } + ++int mkfifo (const char *__p, mode_t __m) ++{ ++ return mknod(__p, (__m & ~S_IFMT) | S_IFIFO, (dev_t) 0); ++} ++ + int main(int argc, char *argv[]) + { + int c, ret = 0; diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/armv4-fix-v4bx.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/armv4-fix-v4bx.patch new file mode 100644 index 000000000..4a334fa25 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/armv4-fix-v4bx.patch @@ -0,0 +1,24 @@ +From d2fb484d995221277cce7abddcd7dfa0e8bceec3 Mon Sep 17 00:00:00 2001 +From: Andrea Adami <andrea.adami@gmail.com> +Date: Fri, 11 Jan 2013 17:26:40 +0000 +Subject: [PATCH] klibc_2.0.2: apply FIX_V4BX patch for armv4 targets only + +Status: not applicable upstream, in OE/Yocto we use $(FIX_V4BX) +which is "" in case of armv5 or thumbs. + +Signed-off-by: Andrea Adami <andrea.adami@gmail.com> + +--- + usr/klibc/arch/arm/MCONFIG | 1 + + 1 file changed, 1 insertion(+) + +--- a/usr/klibc/arch/arm/MCONFIG ++++ b/usr/klibc/arch/arm/MCONFIG +@@ -29,6 +29,7 @@ else + KLIBCSHAREDFLAGS = -Ttext-segment 0x01800000 + ifeq ($(CONFIG_AEABI),y) + KLIBCREQFLAGS += -mabi=aapcs-linux -mno-thumb-interwork ++KLIBCLDFLAGS += $(FIX_ARMV4_EABI_BX) + else + KLIBCREQFLAGS += -mabi=apcs-gnu -mno-thumb-interwork + endif diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-consider-sysroot.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-consider-sysroot.patch new file mode 100644 index 000000000..5f47d3f20 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-consider-sysroot.patch @@ -0,0 +1,22 @@ +From 0cb26cf2d25d36c1fdcc4f1635e4329436ed866a Mon Sep 17 00:00:00 2001 +From: Andrea Adami <andrea.adami@gmail.com> +Date: Fri, 19 Sep 2014 23:09:29 +0200 + +--- + klcc/klcc.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/klcc/klcc.in b/klcc/klcc.in +index 43d0984..61e9385 100644 +--- a/klcc/klcc.in ++++ b/klcc/klcc.in +@@ -204,6 +204,9 @@ while ( defined($a = shift(@ARGV)) ) { + # Libraries + push(@libs, $a); + push(@libs, shift(@ARGV)) if ( $2 eq '' ); ++ } elsif ( $a =~ /^--([sysroot=])(.*)$/ ) { ++ # Override gcc encoded sysroot ++ push(@ccopt, $a); + } else { + die "$0: unknown option: $a\n"; + } diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch new file mode 100644 index 000000000..07703aa53 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klcc-cross-accept-clang-options.patch @@ -0,0 +1,19 @@ +meta-clang passes this option to compiler defaults + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: git/klcc/klcc.in +=================================================================== +--- git.orig/klcc/klcc.in ++++ git/klcc/klcc.in +@@ -207,6 +207,9 @@ while ( defined($a = shift(@ARGV)) ) { + } elsif ( $a =~ /^--([sysroot=])(.*)$/ ) { + # Override gcc encoded sysroot + push(@ccopt, $a); ++ } elsif ( $a eq '-no-integrated-as' ) { ++ # Allow clang options ++ push(@ccopt, $a); + } else { + die "$0: unknown option: $a\n"; + } diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klibc-config-eabi.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klibc-config-eabi.patch new file mode 100644 index 000000000..a6998f86d --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/klibc-config-eabi.patch @@ -0,0 +1,23 @@ +From 1118cc971917abe19ddb029aa80417f6fd6bb343 Mon Sep 17 00:00:00 2001 +From: Thomas Kunze <thommycheck@gmx.de> +Date: Sat, 6 Aug 2011 05:30:14 +0000 +Subject: [PATCH] klibc: initial commit of version 1.5.24 + +Patch was imported from the OpenEmbedded git server +(git://git.openembedded.org/openembedded) +as of commit id b6764cf32ec93547531130dca364fb95e1c495f4 +Signed-off-by: Thomas Kunze <thommycheck@gmx.de> + +--- + defconfig | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/defconfig ++++ b/defconfig +@@ -6,5 +6,5 @@ CONFIG_KLIBC_ZLIB=y + CONFIG_REGPARM=y + # ARM options + # CONFIG_KLIBC_THUMB is not set +-# CONFIG_AEABI is not set ++CONFIG_AEABI=y + # CONFIG_DEBUG_INFO is not set diff --git a/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch new file mode 100644 index 000000000..eac128cc0 --- /dev/null +++ b/meta-openembedded/meta-initramfs/recipes-devtools/klibc/files/use-env-for-perl.patch @@ -0,0 +1,25 @@ +Patch was imported from the OpenEmbedded git server +(git://git.openembedded.org/openembedded) +as of commit id 676cbb54d42c89a4832871064cfcb7ee2ad372ee + +klcc-cross: Add patch to use /usr/bin/env perl +Certain configurations (such as autobuilders) may build in very +deep paths (that are longer than the #! mechanism allows) which +makes it unsafe to use the direct path for perl. In our case we know +that /usr/bin/env perl will always return ours (if it has been built). + +Signed-off-by: Tom Rini <tom_rini@mentor.com> + +Index: klibc-1.5.20/klcc/makeklcc.pl +=================================================================== +--- a/klcc/makeklcc.pl ++++ b/klcc/makeklcc.pl +@@ -26,7 +26,7 @@ sub pathsearch($) { + return undef; + } + +-print "#!${perlpath}\n"; ++print "#!/usr/bin/env perl\n"; + + open(KLIBCCONF, "< $klibcconf\0") + or die "$0: cannot open $klibcconf: $!\n"; |