Andrew Geissler | 90fd73c | 2021-03-05 15:25:55 -0600 | [diff] [blame] | 1 | From 2396fd67d81e54e18fbad67a5ff67d5684a01013 Mon Sep 17 00:00:00 2001 |
Brad Bishop | d7bf8c1 | 2018-02-25 22:55:05 -0500 | [diff] [blame] | 2 | From: Hongxu Jia <hongxu.jia@windriver.com> |
| 3 | Date: Tue, 15 Aug 2017 17:27:30 +0800 |
Brad Bishop | 1932369 | 2019-04-05 15:28:33 -0400 | [diff] [blame] | 4 | Subject: [PATCH] Fix build on aarch64/musl |
Brad Bishop | d7bf8c1 | 2018-02-25 22:55:05 -0500 | [diff] [blame] | 5 | |
| 6 | Errors |
| 7 | |
| 8 | invalid operands to binary & (have 'long double' and 'unsigned int') |
| 9 | |
| 10 | error: redefinition |
| 11 | of 'struct iovec' |
| 12 | struct iovec { void *iov_base; size_t iov_len; }; |
| 13 | ^ |
| 14 | Upstream-Status: Pending |
| 15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| 16 | |
| 17 | Rebase to 0.170 |
| 18 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
Brad Bishop | 1932369 | 2019-04-05 15:28:33 -0400 | [diff] [blame] | 19 | |
Brad Bishop | d7bf8c1 | 2018-02-25 22:55:05 -0500 | [diff] [blame] | 20 | --- |
| 21 | backends/aarch64_initreg.c | 4 ++-- |
| 22 | backends/arm_initreg.c | 2 +- |
| 23 | 2 files changed, 3 insertions(+), 3 deletions(-) |
| 24 | |
| 25 | diff --git a/backends/aarch64_initreg.c b/backends/aarch64_initreg.c |
| 26 | index daf6f37..6445276 100644 |
| 27 | --- a/backends/aarch64_initreg.c |
| 28 | +++ b/backends/aarch64_initreg.c |
| 29 | @@ -33,7 +33,7 @@ |
| 30 | #include "system.h" |
| 31 | #include <assert.h> |
| 32 | #if defined(__aarch64__) && defined(__linux__) |
| 33 | -# include <linux/uio.h> |
| 34 | +# include <sys/uio.h> |
| 35 | # include <sys/user.h> |
| 36 | # include <sys/ptrace.h> |
| 37 | /* Deal with old glibc defining user_pt_regs instead of user_regs_struct. */ |
| 38 | @@ -82,7 +82,7 @@ aarch64_set_initial_registers_tid (pid_t tid __attribute__ ((unused)), |
| 39 | |
| 40 | Dwarf_Word dwarf_fregs[32]; |
| 41 | for (int r = 0; r < 32; r++) |
| 42 | - dwarf_fregs[r] = fregs.vregs[r] & 0xFFFFFFFF; |
| 43 | + dwarf_fregs[r] = (unsigned int)fregs.vregs[r] & 0xFFFFFFFF; |
| 44 | |
| 45 | if (! setfunc (64, 32, dwarf_fregs, arg)) |
| 46 | return false; |
| 47 | diff --git a/backends/arm_initreg.c b/backends/arm_initreg.c |
| 48 | index efcabaf..062bb9e 100644 |
| 49 | --- a/backends/arm_initreg.c |
| 50 | +++ b/backends/arm_initreg.c |
| 51 | @@ -38,7 +38,7 @@ |
| 52 | #endif |
| 53 | |
| 54 | #ifdef __aarch64__ |
| 55 | -# include <linux/uio.h> |
| 56 | +# include <sys/uio.h> |
| 57 | # include <sys/user.h> |
| 58 | # include <sys/ptrace.h> |
| 59 | /* Deal with old glibc defining user_pt_regs instead of user_regs_struct. */ |