0006-Fix-build-on-aarch64-musl.patch 1.8 KB

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