* [Buildroot] [PATCH v3] Update libaio to 0.3.110
@ 2016-02-18 19:39 Alistair Francis
2016-02-20 22:49 ` Arnout Vandecappelle
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Alistair Francis @ 2016-02-18 19:39 UTC (permalink / raw)
To: buildroot
Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
---
package/libaio/0001-arches.patch | 454 ++-------------------------------------
package/libaio/Config.in | 2 +-
package/libaio/libaio.hash | 4 +-
package/libaio/libaio.mk | 2 +-
4 files changed, 20 insertions(+), 442 deletions(-)
diff --git a/package/libaio/0001-arches.patch b/package/libaio/0001-arches.patch
index c85568c..4b77f57 100644
--- a/package/libaio/0001-arches.patch
+++ b/package/libaio/0001-arches.patch
@@ -1,145 +1,28 @@
Patch borrowed from OpenEmbedded, available at
-recipes/libaio/libaio-0.3.106/00_arches.patch in their source
-tree. The patch has been adapted to remove the ARM-related
-definitions, since they have been merged in later versions of libaio.
+/meta/recipes-extended/libaio/libaio/00_arches.patch in their source
+tree. This patch has been modified to only add the MIPS definitions.
-The patch adds various architecture specific definitions (syscall
-number and macros) for m68k, MIPS, PA/RISC and Sparc. Amongst these,
-Buildroot mostly only cares about MIPS, but it was just easier to take
-the whole OpenEmbedded patch.
+The patch adds MIPS specific definitions (syscall number and macros).
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- src/libaio.h | 24 +++++
- src/syscall-m68k.h | 78 +++++++++++++++++
- src/syscall-mips.h | 223 +++++++++++++++++++++++++++++++++++++++++++++++++++
- src/syscall-parisc.h | 146 +++++++++++++++++++++++++++++++++
- src/syscall-sparc.h | 130 +++++++++++++++++++++++++++++
- src/syscall.h | 8 +
- 7 files changed, 725 insertions(+)
+Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
-Index: libaio-0.3.109/src/libaio.h
+Index: libaio-0.3.110/src/syscall.h
===================================================================
---- libaio-0.3.109.orig/src/libaio.h
-+++ libaio-0.3.109/src/libaio.h
-@@ -83,6 +83,30 @@
- #define PADDEDptr(x, y) x; unsigned y
- #define PADDEDul(x, y) unsigned long x; unsigned y
- # endif
-+#elif defined(__m68k__) /* big endian, 32 bits */
-+#define PADDED(x, y) unsigned y; x
-+#define PADDEDptr(x, y) unsigned y; x
-+#define PADDEDul(x, y) unsigned y; unsigned long x
-+#elif defined(__sparc__) /* big endian, 32 bits */
-+#define PADDED(x, y) unsigned y; x
-+#define PADDEDptr(x, y) unsigned y; x
-+#define PADDEDul(x, y) unsigned y; unsigned long x
-+#elif defined(__hppa__) /* big endian, 32 bits */
-+#define PADDED(x, y) unsigned y; x
-+#define PADDEDptr(x, y) unsigned y; x
-+#define PADDEDul(x, y) unsigned y; unsigned long x
+--- libaio-0.3.110.orig/src/syscall.h
++++ libaio-0.3.110/src/syscall.h
+@@ -28,6 +28,8 @@
+ #include "syscall-sparc.h"
+ #elif defined(__aarch64__)
+ #include "syscall-arm64.h"
+#elif defined(__mips__)
-+# if defined (__MIPSEB__) /* big endian, 32 bits */
-+#define PADDED(x, y) unsigned y; x
-+#define PADDEDptr(x, y) unsigned y; x
-+#define PADDEDul(x, y) unsigned y; unsigned long x
-+# elif defined(__MIPSEL__) /* little endian, 32 bits */
-+#define PADDED(x, y) x; unsigned y
-+#define PADDEDptr(x, y) x; unsigned y
-+#define PADDEDul(x, y) unsigned long x; unsigned y
-+# else
-+# error "neither mipseb nor mipsel?"
-+# endif
++#include "syscall-mips.h"
#else
- #error endian?
- #endif
-Index: libaio-0.3.109/src/syscall-m68k.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-m68k.h
-@@ -0,0 +1,78 @@
-+#define __NR_io_setup 241
-+#define __NR_io_destroy 242
-+#define __NR_io_getevents 243
-+#define __NR_io_submit 244
-+#define __NR_io_cancel 245
-+
-+#define io_syscall1(type,fname,sname,atype,a) \
-+type fname(atype a) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+__asm__ __volatile__ ("trap #0" \
-+ : "+d" (__res) \
-+ : "d" (__a) ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall2(type,fname,sname,atype,a,btype,b) \
-+type fname(atype a,btype b) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+__asm__ __volatile__ ("trap #0" \
-+ : "+d" (__res) \
-+ : "d" (__a), "d" (__b) \
-+ ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \
-+type fname(atype a,btype b,ctype c) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+__asm__ __volatile__ ("trap #0" \
-+ : "+d" (__res) \
-+ : "d" (__a), "d" (__b), \
-+ "d" (__c) \
-+ ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \
-+type fname (atype a, btype b, ctype c, dtype d) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+register long __d __asm__ ("%d4") = (long)(d); \
-+__asm__ __volatile__ ("trap #0" \
-+ : "+d" (__res) \
-+ : "d" (__a), "d" (__b), \
-+ "d" (__c), "d" (__d) \
-+ ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
-+type fname (atype a,btype b,ctype c,dtype d,etype e) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+register long __d __asm__ ("%d4") = (long)(d); \
-+register long __e __asm__ ("%d5") = (long)(e); \
-+__asm__ __volatile__ ("trap #0" \
-+ : "+d" (__res) \
-+ : "d" (__a), "d" (__b), \
-+ "d" (__c), "d" (__d), "d" (__e) \
-+ ); \
-+return (type) __res; \
-+}
-+
-Index: libaio-0.3.109/src/syscall-mips.h
+ #warning "using generic syscall method"
+ #include "syscall-generic.h"
+Index: libaio-0.3.110/src/syscall-mips.h
===================================================================
--- /dev/null
-+++ libaio-0.3.109/src/syscall-mips.h
++++ libaio-0.3.110/src/syscall-mips.h
@@ -0,0 +1,223 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@@ -364,308 +247,3 @@ Index: libaio-0.3.109/src/syscall-mips.h
+
+#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
+
-Index: libaio-0.3.109/src/syscall-parisc.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-parisc.h
-@@ -0,0 +1,146 @@
-+/*
-+ * Linux system call numbers.
-+ *
-+ * Cary Coutant says that we should just use another syscall gateway
-+ * page to avoid clashing with the HPUX space, and I think he's right:
-+ * it will would keep a branch out of our syscall entry path, at the
-+ * very least. If we decide to change it later, we can ``just'' tweak
-+ * the LINUX_GATEWAY_ADDR define at the bottom and make __NR_Linux be
-+ * 1024 or something. Oh, and recompile libc. =)
-+ *
-+ * 64-bit HPUX binaries get the syscall gateway address passed in a register
-+ * from the kernel at startup, which seems a sane strategy.
-+ */
-+
-+#define __NR_Linux 0
-+#define __NR_io_setup (__NR_Linux + 215)
-+#define __NR_io_destroy (__NR_Linux + 216)
-+#define __NR_io_getevents (__NR_Linux + 217)
-+#define __NR_io_submit (__NR_Linux + 218)
-+#define __NR_io_cancel (__NR_Linux + 219)
-+
-+#define SYS_ify(syscall_name) __NR_##syscall_name
-+
-+/* Assume all syscalls are done from PIC code just to be
-+ * safe. The worst case scenario is that you lose a register
-+ * and save/restore r19 across the syscall. */
-+#define PIC
-+
-+/* Definition taken from glibc 2.3.3
-+ * sysdeps/unix/sysv/linux/hppa/sysdep.h
-+ */
-+
-+#ifdef PIC
-+/* WARNING: CANNOT BE USED IN A NOP! */
-+# define K_STW_ASM_PIC " copy %%r19, %%r4\n"
-+# define K_LDW_ASM_PIC " copy %%r4, %%r19\n"
-+# define K_USING_GR4 "%r4",
-+#else
-+# define K_STW_ASM_PIC " \n"
-+# define K_LDW_ASM_PIC " \n"
-+# define K_USING_GR4
-+#endif
-+
-+/* GCC has to be warned that a syscall may clobber all the ABI
-+ registers listed as "caller-saves", see page 8, Table 2
-+ in section 2.2.6 of the PA-RISC RUN-TIME architecture
-+ document. However! r28 is the result and will conflict with
-+ the clobber list so it is left out. Also the input arguments
-+ registers r20 -> r26 will conflict with the list so they
-+ are treated specially. Although r19 is clobbered by the syscall
-+ we cannot say this because it would violate ABI, thus we say
-+ r4 is clobbered and use that register to save/restore r19
-+ across the syscall. */
-+
-+#define K_CALL_CLOB_REGS "%r1", "%r2", K_USING_GR4 \
-+ "%r20", "%r29", "%r31"
-+
-+#undef K_INLINE_SYSCALL
-+#define K_INLINE_SYSCALL(name, nr, args...) ({ \
-+ long __sys_res; \
-+ { \
-+ register unsigned long __res __asm__("r28"); \
-+ K_LOAD_ARGS_##nr(args) \
-+ /* FIXME: HACK stw/ldw r19 around syscall */ \
-+ __asm__ volatile( \
-+ K_STW_ASM_PIC \
-+ " ble 0x100(%%sr2, %%r0)\n" \
-+ " ldi %1, %%r20\n" \
-+ K_LDW_ASM_PIC \
-+ : "=r" (__res) \
-+ : "i" (SYS_ify(name)) K_ASM_ARGS_##nr \
-+ : "memory", K_CALL_CLOB_REGS K_CLOB_ARGS_##nr \
-+ ); \
-+ __sys_res = (long)__res; \
-+ } \
-+ __sys_res; \
-+})
-+
-+#define K_LOAD_ARGS_0()
-+#define K_LOAD_ARGS_1(r26) \
-+ register unsigned long __r26 __asm__("r26") = (unsigned long)(r26); \
-+ K_LOAD_ARGS_0()
-+#define K_LOAD_ARGS_2(r26,r25) \
-+ register unsigned long __r25 __asm__("r25") = (unsigned long)(r25); \
-+ K_LOAD_ARGS_1(r26)
-+#define K_LOAD_ARGS_3(r26,r25,r24) \
-+ register unsigned long __r24 __asm__("r24") = (unsigned long)(r24); \
-+ K_LOAD_ARGS_2(r26,r25)
-+#define K_LOAD_ARGS_4(r26,r25,r24,r23) \
-+ register unsigned long __r23 __asm__("r23") = (unsigned long)(r23); \
-+ K_LOAD_ARGS_3(r26,r25,r24)
-+#define K_LOAD_ARGS_5(r26,r25,r24,r23,r22) \
-+ register unsigned long __r22 __asm__("r22") = (unsigned long)(r22); \
-+ K_LOAD_ARGS_4(r26,r25,r24,r23)
-+#define K_LOAD_ARGS_6(r26,r25,r24,r23,r22,r21) \
-+ register unsigned long __r21 __asm__("r21") = (unsigned long)(r21); \
-+ K_LOAD_ARGS_5(r26,r25,r24,r23,r22)
-+
-+/* Even with zero args we use r20 for the syscall number */
-+#define K_ASM_ARGS_0
-+#define K_ASM_ARGS_1 K_ASM_ARGS_0, "r" (__r26)
-+#define K_ASM_ARGS_2 K_ASM_ARGS_1, "r" (__r25)
-+#define K_ASM_ARGS_3 K_ASM_ARGS_2, "r" (__r24)
-+#define K_ASM_ARGS_4 K_ASM_ARGS_3, "r" (__r23)
-+#define K_ASM_ARGS_5 K_ASM_ARGS_4, "r" (__r22)
-+#define K_ASM_ARGS_6 K_ASM_ARGS_5, "r" (__r21)
-+
-+/* The registers not listed as inputs but clobbered */
-+#define K_CLOB_ARGS_6
-+#define K_CLOB_ARGS_5 K_CLOB_ARGS_6, "%r21"
-+#define K_CLOB_ARGS_4 K_CLOB_ARGS_5, "%r22"
-+#define K_CLOB_ARGS_3 K_CLOB_ARGS_4, "%r23"
-+#define K_CLOB_ARGS_2 K_CLOB_ARGS_3, "%r24"
-+#define K_CLOB_ARGS_1 K_CLOB_ARGS_2, "%r25"
-+#define K_CLOB_ARGS_0 K_CLOB_ARGS_1, "%r26"
-+
-+#define io_syscall1(type,fname,sname,type1,arg1) \
-+type fname(type1 arg1) \
-+{ \
-+ return K_INLINE_SYSCALL(sname, 1, arg1); \
-+}
-+
-+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
-+type fname(type1 arg1, type2 arg2) \
-+{ \
-+ return K_INLINE_SYSCALL(sname, 2, arg1, arg2); \
-+}
-+
-+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
-+type fname(type1 arg1, type2 arg2, type3 arg3) \
-+{ \
-+ return K_INLINE_SYSCALL(sname, 3, arg1, arg2, arg3); \
-+}
-+
-+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
-+{ \
-+ return K_INLINE_SYSCALL(sname, 4, arg1, arg2, arg3, arg4); \
-+}
-+
-+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5) \
-+{ \
-+ return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5); \
-+}
-+
-Index: libaio-0.3.109/src/syscall-sparc.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-sparc.h
-@@ -0,0 +1,130 @@
-+/* $Id: unistd.h,v 1.74 2002/02/08 03:57:18 davem Exp $ */
-+
-+/*
-+ * System calls under the Sparc.
-+ *
-+ * Don't be scared by the ugly clobbers, it is the only way I can
-+ * think of right now to force the arguments into fixed registers
-+ * before the trap into the system call with gcc 'asm' statements.
-+ *
-+ * Copyright (C) 1995 David S. Miller (davem at caip.rutgers.edu)
-+ *
-+ * SunOS compatibility based upon preliminary work which is:
-+ *
-+ * Copyright (C) 1995 Adrian M. Rodriguez (adrian at remus.rutgers.edu)
-+ */
-+
-+
-+#define __NR_io_setup 268
-+#define __NR_io_destroy 269
-+#define __NR_io_submit 270
-+#define __NR_io_cancel 271
-+#define __NR_io_getevents 272
-+
-+
-+#define io_syscall1(type,fname,sname,type1,arg1) \
-+type fname(type1 arg1) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+ "bcc 1f\n\t" \
-+ "mov %%o0, %0\n\t" \
-+ "sub %%g0, %%o0, %0\n\t" \
-+ "1:\n\t" \
-+ : "=r" (__res), "=&r" (__o0) \
-+ : "1" (__o0), "r" (__g1) \
-+ : "cc"); \
-+if (__res < -255 || __res >= 0) \
-+ return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
-+type fname(type1 arg1,type2 arg2) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+ "bcc 1f\n\t" \
-+ "mov %%o0, %0\n\t" \
-+ "sub %%g0, %%o0, %0\n\t" \
-+ "1:\n\t" \
-+ : "=r" (__res), "=&r" (__o0) \
-+ : "1" (__o0), "r" (__o1), "r" (__g1) \
-+ : "cc"); \
-+if (__res < -255 || __res >= 0) \
-+ return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
-+type fname(type1 arg1,type2 arg2,type3 arg3) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+ "bcc 1f\n\t" \
-+ "mov %%o0, %0\n\t" \
-+ "sub %%g0, %%o0, %0\n\t" \
-+ "1:\n\t" \
-+ : "=r" (__res), "=&r" (__o0) \
-+ : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
-+ : "cc"); \
-+if (__res < -255 || __res>=0) \
-+ return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+register long __o3 __asm__ ("o3") = (long)(arg4); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+ "bcc 1f\n\t" \
-+ "mov %%o0, %0\n\t" \
-+ "sub %%g0, %%o0, %0\n\t" \
-+ "1:\n\t" \
-+ : "=r" (__res), "=&r" (__o0) \
-+ : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
-+ : "cc"); \
-+if (__res < -255 || __res>=0) \
-+ return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
-+ type5,arg5) \
-+type fname(type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+register long __o3 __asm__ ("o3") = (long)(arg4); \
-+register long __o4 __asm__ ("o4") = (long)(arg5); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+ "bcc 1f\n\t" \
-+ "mov %%o0, %0\n\t" \
-+ "sub %%g0, %%o0, %0\n\t" \
-+ "1:\n\t" \
-+ : "=r" (__res), "=&r" (__o0) \
-+ : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
-+ : "cc"); \
-+if (__res < -255 || __res>=0) \
-+ return (type) __res; \
-+return -1; \
-+}
-+
-Index: libaio-0.3.109/src/syscall.h
-===================================================================
---- libaio-0.3.109.orig/src/syscall.h
-+++ libaio-0.3.109/src/syscall.h
-@@ -24,6 +24,14 @@
- #include "syscall-alpha.h"
- #elif defined(__arm__)
- #include "syscall-arm.h"
-+#elif defined(__m68k__)
-+#include "syscall-m68k.h"
-+#elif defined(__sparc__)
-+#include "syscall-sparc.h"
-+#elif defined(__hppa__)
-+#include "syscall-parisc.h"
-+#elif defined(__mips__)
-+#include "syscall-mips.h"
- #else
- #error "add syscall-arch.h"
- #endif
diff --git a/package/libaio/Config.in b/package/libaio/Config.in
index cc44cb6..63db829 100644
--- a/package/libaio/Config.in
+++ b/package/libaio/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
bool
default y if BR2_arm || BR2_armeb || BR2_i386 || \
BR2_m68k || BR2_mips || BR2_mipsel || BR2_powerpc || \
- BR2_sparc || BR2_x86_64
+ BR2_sparc || BR2_x86_64 || BR2_aarch64
config BR2_PACKAGE_LIBAIO
bool "libaio"
diff --git a/package/libaio/libaio.hash b/package/libaio/libaio.hash
index deb16e8..7aa8961 100644
--- a/package/libaio/libaio.hash
+++ b/package/libaio/libaio.hash
@@ -1,2 +1,2 @@
-# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/liba/libaio/libaio_0.3.109-3.dsc
-sha256 bf4a457253cbaab215aea75cb6e18dc8d95bbd507e9920661ff9bdd288c8778d libaio_0.3.109.orig.tar.gz
+# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/liba/libaio/libaio_0.3.110-1.dsc
+sha256 e019028e631725729376250e32b473012f7cb68e1f7275bfc1bbcdd0f8745f7e libaio_0.3.110.orig.tar.gz
diff --git a/package/libaio/libaio.mk b/package/libaio/libaio.mk
index 53ad7eb..9b28f05 100644
--- a/package/libaio/libaio.mk
+++ b/package/libaio/libaio.mk
@@ -4,7 +4,7 @@
#
################################################################################
-LIBAIO_VERSION = 0.3.109
+LIBAIO_VERSION = 0.3.110
LIBAIO_SOURCE = libaio_$(LIBAIO_VERSION).orig.tar.gz
LIBAIO_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/liba/libaio
LIBAIO_INSTALL_STAGING = YES
--
2.5.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-02-18 19:39 [Buildroot] [PATCH v3] Update libaio to 0.3.110 Alistair Francis
@ 2016-02-20 22:49 ` Arnout Vandecappelle
2016-02-22 17:51 ` Alistair Francis
2016-02-21 14:37 ` Thomas Petazzoni
2016-04-02 15:53 ` Romain Naour
2 siblings, 1 reply; 9+ messages in thread
From: Arnout Vandecappelle @ 2016-02-20 22:49 UTC (permalink / raw)
To: buildroot
On 02/18/16 20:39, Alistair Francis wrote:
> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
The commit message should have mentioned that the patch is now reduced to just
MIPS. It should also mention the upstream status of the patch. Have you sent it
upstream?
Otherwise:
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Regards,
Arnout
>
> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
> ---
> package/libaio/0001-arches.patch | 454 ++-------------------------------------
> package/libaio/Config.in | 2 +-
> package/libaio/libaio.hash | 4 +-
> package/libaio/libaio.mk | 2 +-
> 4 files changed, 20 insertions(+), 442 deletions(-)
>
> diff --git a/package/libaio/0001-arches.patch b/package/libaio/0001-arches.patch
> index c85568c..4b77f57 100644
> --- a/package/libaio/0001-arches.patch
> +++ b/package/libaio/0001-arches.patch
> @@ -1,145 +1,28 @@
> Patch borrowed from OpenEmbedded, available at
> -recipes/libaio/libaio-0.3.106/00_arches.patch in their source
> -tree. The patch has been adapted to remove the ARM-related
> -definitions, since they have been merged in later versions of libaio.
> +/meta/recipes-extended/libaio/libaio/00_arches.patch in their source
> +tree. This patch has been modified to only add the MIPS definitions.
>
> -The patch adds various architecture specific definitions (syscall
> -number and macros) for m68k, MIPS, PA/RISC and Sparc. Amongst these,
> -Buildroot mostly only cares about MIPS, but it was just easier to take
> -the whole OpenEmbedded patch.
> +The patch adds MIPS specific definitions (syscall number and macros).
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-02-18 19:39 [Buildroot] [PATCH v3] Update libaio to 0.3.110 Alistair Francis
2016-02-20 22:49 ` Arnout Vandecappelle
@ 2016-02-21 14:37 ` Thomas Petazzoni
2016-02-22 17:52 ` Alistair Francis
2016-04-02 15:53 ` Romain Naour
2 siblings, 1 reply; 9+ messages in thread
From: Thomas Petazzoni @ 2016-02-21 14:37 UTC (permalink / raw)
To: buildroot
Alistair,
Thanks for the patch!
On Thu, 18 Feb 2016 11:39:51 -0800, Alistair Francis wrote:
> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>
> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
> ---
> package/libaio/0001-arches.patch | 454 ++-------------------------------------
> package/libaio/Config.in | 2 +-
> package/libaio/libaio.hash | 4 +-
> package/libaio/libaio.mk | 2 +-
> 4 files changed, 20 insertions(+), 442 deletions(-)
It took me a bit of time to understand why we can reduce the patch to
just MIPS definitions. Indeed, in the patch, there are some m68k and
PA-RISC definitions which we don't really care about since we don't
support those architectures. However, the SPARC definitions we do care
about. But in fact, they have been merged upstream. It would have been
good to add such explanations in the commit log, to ease review. I've
adjusted the commit log to make this explicit.
Another comment is that the title should always be:
<package>: <what happens>
i.e something like:
libaio: bump to version 0.3.110
> +The patch adds MIPS specific definitions (syscall number and macros).
Vicente, can you work with libaio upstream to get the MIPS specific
definitions merged? Maybe this should also be enabled on
mips64/mips64el.
> diff --git a/package/libaio/Config.in b/package/libaio/Config.in
> index cc44cb6..63db829 100644
> --- a/package/libaio/Config.in
> +++ b/package/libaio/Config.in
> @@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
> bool
> default y if BR2_arm || BR2_armeb || BR2_i386 || \
> BR2_m68k || BR2_mips || BR2_mipsel || BR2_powerpc || \
> - BR2_sparc || BR2_x86_64
> + BR2_sparc || BR2_x86_64 || BR2_aarch64
I've changed this to keep the alphabetic ordering, and applied your
patch to our next branch.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-02-20 22:49 ` Arnout Vandecappelle
@ 2016-02-22 17:51 ` Alistair Francis
0 siblings, 0 replies; 9+ messages in thread
From: Alistair Francis @ 2016-02-22 17:51 UTC (permalink / raw)
To: buildroot
On Sat, Feb 20, 2016 at 2:49 PM, Arnout Vandecappelle <arnout@mind.be> wrote:
> On 02/18/16 20:39, Alistair Francis wrote:
>> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>
> The commit message should have mentioned that the patch is now reduced to just
> MIPS. It should also mention the upstream status of the patch. Have you sent it
> upstream?
>
> Otherwise:
> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Thanks!
I was going to send a new version with an updated commit message, but
it looks like I don't need to now. Thanks for helping me get this in.
Thanks,
Alistair
>
> Regards,
> Arnout
>
>>
>> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
>> ---
>> package/libaio/0001-arches.patch | 454 ++-------------------------------------
>> package/libaio/Config.in | 2 +-
>> package/libaio/libaio.hash | 4 +-
>> package/libaio/libaio.mk | 2 +-
>> 4 files changed, 20 insertions(+), 442 deletions(-)
>>
>> diff --git a/package/libaio/0001-arches.patch b/package/libaio/0001-arches.patch
>> index c85568c..4b77f57 100644
>> --- a/package/libaio/0001-arches.patch
>> +++ b/package/libaio/0001-arches.patch
>> @@ -1,145 +1,28 @@
>> Patch borrowed from OpenEmbedded, available at
>> -recipes/libaio/libaio-0.3.106/00_arches.patch in their source
>> -tree. The patch has been adapted to remove the ARM-related
>> -definitions, since they have been merged in later versions of libaio.
>> +/meta/recipes-extended/libaio/libaio/00_arches.patch in their source
>> +tree. This patch has been modified to only add the MIPS definitions.
>>
>> -The patch adds various architecture specific definitions (syscall
>> -number and macros) for m68k, MIPS, PA/RISC and Sparc. Amongst these,
>> -Buildroot mostly only cares about MIPS, but it was just easier to take
>> -the whole OpenEmbedded patch.
>> +The patch adds MIPS specific definitions (syscall number and macros).
>
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-02-21 14:37 ` Thomas Petazzoni
@ 2016-02-22 17:52 ` Alistair Francis
0 siblings, 0 replies; 9+ messages in thread
From: Alistair Francis @ 2016-02-22 17:52 UTC (permalink / raw)
To: buildroot
On Sun, Feb 21, 2016 at 6:37 AM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Alistair,
>
> Thanks for the patch!
>
> On Thu, 18 Feb 2016 11:39:51 -0800, Alistair Francis wrote:
>> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>>
>> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
>> ---
>> package/libaio/0001-arches.patch | 454 ++-------------------------------------
>> package/libaio/Config.in | 2 +-
>> package/libaio/libaio.hash | 4 +-
>> package/libaio/libaio.mk | 2 +-
>> 4 files changed, 20 insertions(+), 442 deletions(-)
>
> It took me a bit of time to understand why we can reduce the patch to
> just MIPS definitions. Indeed, in the patch, there are some m68k and
> PA-RISC definitions which we don't really care about since we don't
> support those architectures. However, the SPARC definitions we do care
> about. But in fact, they have been merged upstream. It would have been
> good to add such explanations in the commit log, to ease review. I've
> adjusted the commit log to make this explicit.
>
> Another comment is that the title should always be:
>
> <package>: <what happens>
>
> i.e something like:
>
> libaio: bump to version 0.3.110
>
>
>> +The patch adds MIPS specific definitions (syscall number and macros).
>
> Vicente, can you work with libaio upstream to get the MIPS specific
> definitions merged? Maybe this should also be enabled on
> mips64/mips64el.
>
>> diff --git a/package/libaio/Config.in b/package/libaio/Config.in
>> index cc44cb6..63db829 100644
>> --- a/package/libaio/Config.in
>> +++ b/package/libaio/Config.in
>> @@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBAIO_ARCH_SUPPORTS
>> bool
>> default y if BR2_arm || BR2_armeb || BR2_i386 || \
>> BR2_m68k || BR2_mips || BR2_mipsel || BR2_powerpc || \
>> - BR2_sparc || BR2_x86_64
>> + BR2_sparc || BR2_x86_64 || BR2_aarch64
>
> I've changed this to keep the alphabetic ordering, and applied your
> patch to our next branch.
Great! Thanks for applying it.
Thanks,
Alistair
>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-02-18 19:39 [Buildroot] [PATCH v3] Update libaio to 0.3.110 Alistair Francis
2016-02-20 22:49 ` Arnout Vandecappelle
2016-02-21 14:37 ` Thomas Petazzoni
@ 2016-04-02 15:53 ` Romain Naour
2016-04-05 0:41 ` Alistair Francis
2 siblings, 1 reply; 9+ messages in thread
From: Romain Naour @ 2016-04-02 15:53 UTC (permalink / raw)
To: buildroot
Hi Alistair, Thomas, All,
Le 18/02/2016 20:39, Alistair Francis a ?crit :
> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>
> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
> ---
> package/libaio/0001-arches.patch | 454 ++-------------------------------------
> package/libaio/Config.in | 2 +-
> package/libaio/libaio.hash | 4 +-
> package/libaio/libaio.mk | 2 +-
> 4 files changed, 20 insertions(+), 442 deletions(-)
>
Since the libaio bump, the blktrace package is broken on powerpc [1].
/home/peko/autobuild/instance-1/output/host/usr/bin/powerpc-linux-gnu-gcc
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -I. -I..
-I../btt -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -UCOUNT_IOS
-UDEBUG -DNDEBUG -o btreplay btreplay.o -laio -lrt -lpthread
[...]ld: btreplay: hidden symbol `_restgpr_29_x' in [..]libgcc.a(crtresxgpr.o)
is referenced by DSO
[...]ld: final link failed: Nonrepresentable section on output
It's seems that only powerpc is affected by this issue...
I'm not sure about a proper fixes but adding -shared to the command line fixes
the build (not runtime tested though).
Can you take a look ?
Best regards,
Romain Naour
[1] http://autobuild.buildroot.net/?reason=blktrace-1.1.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-04-02 15:53 ` Romain Naour
@ 2016-04-05 0:41 ` Alistair Francis
2016-04-05 0:46 ` Alistair Francis
0 siblings, 1 reply; 9+ messages in thread
From: Alistair Francis @ 2016-04-05 0:41 UTC (permalink / raw)
To: buildroot
On Sat, Apr 2, 2016 at 8:53 AM, Romain Naour <romain.naour@gmail.com> wrote:
> Hi Alistair, Thomas, All,
>
> Le 18/02/2016 20:39, Alistair Francis a ?crit :
>> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>>
>> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
>> ---
>> package/libaio/0001-arches.patch | 454 ++-------------------------------------
>> package/libaio/Config.in | 2 +-
>> package/libaio/libaio.hash | 4 +-
>> package/libaio/libaio.mk | 2 +-
>> 4 files changed, 20 insertions(+), 442 deletions(-)
>>
>
> Since the libaio bump, the blktrace package is broken on powerpc [1].
>
> /home/peko/autobuild/instance-1/output/host/usr/bin/powerpc-linux-gnu-gcc
> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -I. -I..
> -I../btt -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -UCOUNT_IOS
> -UDEBUG -DNDEBUG -o btreplay btreplay.o -laio -lrt -lpthread
> [...]ld: btreplay: hidden symbol `_restgpr_29_x' in [..]libgcc.a(crtresxgpr.o)
> is referenced by DSO
> [...]ld: final link failed: Nonrepresentable section on output
>
> It's seems that only powerpc is affected by this issue...
> I'm not sure about a proper fixes but adding -shared to the command line fixes
> the build (not runtime tested though).
>
> Can you take a look ?
Good catch, thanks for pointing this out.
It appears to be a common issue and the workaround is to disable pie
and fpie support.
See: http://patchwork.openembedded.org/patch/86515/
I can't work out how to remove the -fPIC option though. Any ideas?
Thanks,
Alistair
>
> Best regards,
> Romain Naour
>
> [1] http://autobuild.buildroot.net/?reason=blktrace-1.1.0
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-04-05 0:41 ` Alistair Francis
@ 2016-04-05 0:46 ` Alistair Francis
2016-04-14 21:45 ` Alistair Francis
0 siblings, 1 reply; 9+ messages in thread
From: Alistair Francis @ 2016-04-05 0:46 UTC (permalink / raw)
To: buildroot
On Mon, Apr 4, 2016 at 5:41 PM, Alistair Francis
<alistair.francis@xilinx.com> wrote:
> On Sat, Apr 2, 2016 at 8:53 AM, Romain Naour <romain.naour@gmail.com> wrote:
>> Hi Alistair, Thomas, All,
>>
>> Le 18/02/2016 20:39, Alistair Francis a ?crit :
>>> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>>>
>>> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
>>> ---
>>> package/libaio/0001-arches.patch | 454 ++-------------------------------------
>>> package/libaio/Config.in | 2 +-
>>> package/libaio/libaio.hash | 4 +-
>>> package/libaio/libaio.mk | 2 +-
>>> 4 files changed, 20 insertions(+), 442 deletions(-)
>>>
>>
>> Since the libaio bump, the blktrace package is broken on powerpc [1].
>>
>> /home/peko/autobuild/instance-1/output/host/usr/bin/powerpc-linux-gnu-gcc
>> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -I. -I..
>> -I../btt -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -UCOUNT_IOS
>> -UDEBUG -DNDEBUG -o btreplay btreplay.o -laio -lrt -lpthread
>> [...]ld: btreplay: hidden symbol `_restgpr_29_x' in [..]libgcc.a(crtresxgpr.o)
>> is referenced by DSO
>> [...]ld: final link failed: Nonrepresentable section on output
>>
>> It's seems that only powerpc is affected by this issue...
>> I'm not sure about a proper fixes but adding -shared to the command line fixes
>> the build (not runtime tested though).
>>
>> Can you take a look ?
>
> Good catch, thanks for pointing this out.
>
> It appears to be a common issue and the workaround is to disable pie
> and fpie support.
>
> See: http://patchwork.openembedded.org/patch/86515/
>
> I can't work out how to remove the -fPIC option though. Any ideas?
Spoke too soon. It's forced in the libaio Makefile.
Is everyone happy with me adding a patch that removes that?
It seems to be the way others are doing it.
Thanks,
Alistair
>
> Thanks,
>
> Alistair
>
>>
>> Best regards,
>> Romain Naour
>>
>> [1] http://autobuild.buildroot.net/?reason=blktrace-1.1.0
>>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH v3] Update libaio to 0.3.110
2016-04-05 0:46 ` Alistair Francis
@ 2016-04-14 21:45 ` Alistair Francis
0 siblings, 0 replies; 9+ messages in thread
From: Alistair Francis @ 2016-04-14 21:45 UTC (permalink / raw)
To: buildroot
On Mon, Apr 4, 2016 at 5:46 PM, Alistair Francis
<alistair.francis@xilinx.com> wrote:
> On Mon, Apr 4, 2016 at 5:41 PM, Alistair Francis
> <alistair.francis@xilinx.com> wrote:
>> On Sat, Apr 2, 2016 at 8:53 AM, Romain Naour <romain.naour@gmail.com> wrote:
>>> Hi Alistair, Thomas, All,
>>>
>>> Le 18/02/2016 20:39, Alistair Francis a ?crit :
>>>> Update libaio from 0.3.108 to 0.3.110. This adds AArch64 support.
>>>>
>>>> Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>
>>>> ---
>>>> package/libaio/0001-arches.patch | 454 ++-------------------------------------
>>>> package/libaio/Config.in | 2 +-
>>>> package/libaio/libaio.hash | 4 +-
>>>> package/libaio/libaio.mk | 2 +-
>>>> 4 files changed, 20 insertions(+), 442 deletions(-)
>>>>
>>>
>>> Since the libaio bump, the blktrace package is broken on powerpc [1].
>>>
>>> /home/peko/autobuild/instance-1/output/host/usr/bin/powerpc-linux-gnu-gcc
>>> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -I. -I..
>>> -I../btt -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -UCOUNT_IOS
>>> -UDEBUG -DNDEBUG -o btreplay btreplay.o -laio -lrt -lpthread
>>> [...]ld: btreplay: hidden symbol `_restgpr_29_x' in [..]libgcc.a(crtresxgpr.o)
>>> is referenced by DSO
>>> [...]ld: final link failed: Nonrepresentable section on output
>>>
>>> It's seems that only powerpc is affected by this issue...
>>> I'm not sure about a proper fixes but adding -shared to the command line fixes
>>> the build (not runtime tested though).
>>>
>>> Can you take a look ?
>>
>> Good catch, thanks for pointing this out.
>>
>> It appears to be a common issue and the workaround is to disable pie
>> and fpie support.
>>
>> See: http://patchwork.openembedded.org/patch/86515/
>>
>> I can't work out how to remove the -fPIC option though. Any ideas?
>
> Spoke too soon. It's forced in the libaio Makefile.
>
> Is everyone happy with me adding a patch that removes that?
Ping?
Thanks,
Alistair
> It seems to be the way others are doing it.
>
> Thanks,
>
> Alistair
>
>>
>> Thanks,
>>
>> Alistair
>>
>>>
>>> Best regards,
>>> Romain Naour
>>>
>>> [1] http://autobuild.buildroot.net/?reason=blktrace-1.1.0
>>>
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2016-04-14 21:45 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-18 19:39 [Buildroot] [PATCH v3] Update libaio to 0.3.110 Alistair Francis
2016-02-20 22:49 ` Arnout Vandecappelle
2016-02-22 17:51 ` Alistair Francis
2016-02-21 14:37 ` Thomas Petazzoni
2016-02-22 17:52 ` Alistair Francis
2016-04-02 15:53 ` Romain Naour
2016-04-05 0:41 ` Alistair Francis
2016-04-05 0:46 ` Alistair Francis
2016-04-14 21:45 ` Alistair Francis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox