summaryrefslogtreecommitdiff
path: root/dev-libs/libaio
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-libs/libaio
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-libs/libaio')
-rw-r--r--dev-libs/libaio/Manifest11
-rw-r--r--dev-libs/libaio/files/libaio-0.3.109-install.patch45
-rw-r--r--dev-libs/libaio/files/libaio-0.3.109-testcase-8.patch19
-rw-r--r--dev-libs/libaio/files/libaio-0.3.109-x32.patch63
-rw-r--r--dev-libs/libaio/files/libaio-0.3.110-cppflags.patch25
-rw-r--r--dev-libs/libaio/files/libaio-0.3.110-link-stdlib.patch21
-rw-r--r--dev-libs/libaio/files/libaio-0.3.110-optional-werror.patch30
-rw-r--r--dev-libs/libaio/libaio-0.3.110.ebuild82
-rw-r--r--dev-libs/libaio/metadata.xml13
9 files changed, 309 insertions, 0 deletions
diff --git a/dev-libs/libaio/Manifest b/dev-libs/libaio/Manifest
new file mode 100644
index 000000000000..a750859f564c
--- /dev/null
+++ b/dev-libs/libaio/Manifest
@@ -0,0 +1,11 @@
+AUX libaio-0.3.109-install.patch 1506 SHA256 6d4b429bd3f29bf3748256943ee1a7cbb4cb6d9b3af63b2a9ee0be913783e34e SHA512 67c7813c573637fb16f930a4a5eed53c04b520356caa809ec3cdfd1ea587d09a30024f41d03264a31e3ae4410b01193f87e14a40b85a93591573516905abd79e WHIRLPOOL 167abe932291311dc927d6d52499aa465c2f90785ce2f7f98c85592adc4f977f88cc13fb45bd0788c05cdc07890ddee5d1a4b07ffd6d1a656479e2e4a3ccd28a
+AUX libaio-0.3.109-testcase-8.patch 579 SHA256 c1ae004284b8ebda84d781cf9caf784de6ddbccbca534bb16f33f36451aec904 SHA512 e39ea546c9035d064f18845ffd2987254eb0205bfe220639df295498aea8a1003d83142c0a8de3d73c7178ad2ccb784e898c5586083ea2b2193d480948828a3c WHIRLPOOL 9c1bb90af32db992e5cac3bc6a4047244a82a1f31fd437bf9da8733c08a6f60b1468f1c7a74a62f6968d2ea48daf50c2be218987b46f0c74d2ce5b1c19ab2fb4
+AUX libaio-0.3.109-x32.patch 2122 SHA256 23a4c40e8add0125ebb9f50919ff27f55de0e2605ca7800bc875e0e81a936974 SHA512 0de645aa290919de0c82c26a0ecbed1d27dc3fdeeb909a86f36ee875afae2803ce97e0088c75e47a1de1cef99527659da75b9e17e5c310a1a518eb02a948a0b2 WHIRLPOOL 24a29a324ed62755d118c8eaea0e3edc9e38c28a9a9ede8456af9219734a6914b8ba589e4ad479dce24695e3d67e0c270840589148875a88acce611466d65b16
+AUX libaio-0.3.110-cppflags.patch 629 SHA256 76ce5e1b2c23200cff613ab1098c804707bd361d85ea8d18872c5ed891ef02c1 SHA512 b39fabcb37e75ab9300d78476a7468359efa883a49822db28d11d305d557f835ac9245b9c8c3e0a8ff6c7fd70125c841056f1e22175025d16a99ce94f849f80c WHIRLPOOL baa180d184fbd72766d2f85e083bf56cc3ccbcfd93b0281ebefac20e49ce3915fa6765d907ec7ccef21664393c95b9ce7244bb72f3607d521130a92f0e2f0e7d
+AUX libaio-0.3.110-link-stdlib.patch 731 SHA256 4b856429a0872922d9acfeed62d603182dba35111290417455ddfd9a7ae4cb80 SHA512 b434da8190ca145fcdd64aa788be5d8bd1b44c112e117bfb8583cce91cfdcfb52038189bd9c92d690286e6576d82e74e62b465585f6333f1a920769ddbe29c32 WHIRLPOOL ce242a3f9546074a31f8983cbc935524ffd9dbadbcc4772024c84eccb4125d35f814cbaad68b6a06a01ccacdcffad3c878390db25f7e4911a0d1c9a0c2861712
+AUX libaio-0.3.110-optional-werror.patch 832 SHA256 4854607a4569a86c514d3bfa7470e21b06ca82edff174cefc18f3e923dfc9d9c SHA512 14b73acded7f67d01e199c411f2ea090b1d0d666521233d3829ca76572d6962f5dc3560096dc10e13c342eed046fb47a6e370e57fceab457696fad6c888a5067 WHIRLPOOL c0f02e9c28e113ce5daced925c48e0461ee650c06e8103f594931118b34ecfb01e892ef6d829b73058a30f8ba67e5f470b84304fbfe1467f3e7d7b47bc8127cd
+DIST libaio-0.3.110.tar.gz 42270 SHA256 e019028e631725729376250e32b473012f7cb68e1f7275bfc1bbcdd0f8745f7e SHA512 664295d330d6e9adc005e2331e77582619625b479ffc2b81728ba6a682487380ee936079c4a69d35144b458bbe35c612f4ed9b32e913bd7e109b824345763eb3 WHIRLPOOL 21666b6d14e8091a52941b54b1c6d882dd495ed2d5ca9047a7951ee44e90aa33348ade0d3e4e7f12076a264b64b354a06cd96433cb39e18fc87b3655b59767af
+EBUILD libaio-0.3.110.ebuild 2213 SHA256 85faffae78576f8ef54db34867e8f16ff24b5de543f4fd5286be5a7b536b44c4 SHA512 80601b081b9362ce194d91a760395ccbfac4bd8e0a089c55c1715504939b742ec9e4b313dd3fb382058d0ae5a08f9ea8670938a3405655e7de7feb3c1de6ec09 WHIRLPOOL 859cab70b7c72c551bdac3d76d5e3e81f0e974018ff4c3ed6db7e3a61265063f7cc63337e3ab361b7c54485b812691cc757cb4535a847b0baa66284ae16ea3fb
+MISC ChangeLog 4948 SHA256 8c72a673fda17b818f97d78627fee3d4d85b0b16fc62315c93ec3e803de7d240 SHA512 7d1b82b7868c2dca31caeb0b7be41b7b4d24f2a4cefc135d985f4a7e941cdc931ac033cd94c55c596bf448d0d7a78d2a90fff2ef8aed26357a371f7252f305ae WHIRLPOOL 7e76ff4e1b0cd8d1ac5206b9e4c446af7f4ff742d873abbee95d5d24c843435f5acc74dd2bdd6f396e72fe191c309bee8be2620ed9fa5a522ba52137c6f87a11
+MISC ChangeLog-2015 13084 SHA256 06b80495c4e8e9d2b9b3c23a2800bc2d3996e90fdf67498b2561ddc381a4d333 SHA512 2910bfaff866ac8c06002070e5299fe507e64d37dc3c4d26dffd78593944d5b91497ae35d2ed67b7794763ed6a6d46677f89a0a2c5ad02365bf860f0369fec87 WHIRLPOOL c2994f44d723449f5e8769190d277089a0905620e0befe7dbcaefb6f9ae5a3035c5376ce3fe26be8bf8896ad0033bd39bb46dda304e109719f39196faac23d1a
+MISC metadata.xml 486 SHA256 e9d65a770364b40d001b66d909917effcaf47f8c9658c35c9c82d51c94b8c775 SHA512 4506edd4b7820f2d86f36d212399d011efe56860319103cc93920672e4a49c2618bc96ed167e69356d2ed3f667520e7874a7a85024d08b81861c3ddf4f26bebb WHIRLPOOL 87a0de82e7c0a8f157cabc4ffafcfb4b421d42a502f632d0c6ad113a0a118ab20eb0ef93a69b0c91d259ed1974f92a3ee365fd674d1b9a24b7767dc1896189c1
diff --git a/dev-libs/libaio/files/libaio-0.3.109-install.patch b/dev-libs/libaio/files/libaio-0.3.109-install.patch
new file mode 100644
index 000000000000..9c049fcbf5cd
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.109-install.patch
@@ -0,0 +1,45 @@
+From 2e34caef82a2367a85de4f06daf5e5a92f61e845 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sun, 17 Jan 2010 17:10:14 -0500
+Subject: [PATCH] fix up install paths
+
+This is similar to the Fedora patch, but this uses more common conventions
+like "DESTDIR" instead of "destdir".
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ src/Makefile | 11 ++++++-----
+ 1 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/src/Makefile b/src/Makefile
+index 687c7be..ee431a1 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -1,6 +1,7 @@
+ prefix=/usr
+ includedir=$(prefix)/include
+ libdir=$(prefix)/lib
++usrlibdir=$(libdir)
+
+ CFLAGS ?= -g -fomit-frame-pointer -O2
+ CFLAGS += -nostdlib -nostartfiles -Wall -I. -fPIC
+@@ -53,11 +54,11 @@ $(libname): $(libaio_sobjs) libaio.map
+ $(CC) $(SO_CFLAGS) -Wl,--version-script=libaio.map -Wl,-soname,$(soname) -o $@ $(libaio_sobjs) $(LINK_FLAGS)
+
+ install: $(all_targets)
+- install -D -m 644 libaio.h $(includedir)/libaio.h
+- install -D -m 644 libaio.a $(libdir)/libaio.a
+- install -D -m 755 $(libname) $(libdir)/$(libname)
+- ln -sf $(libname) $(libdir)/$(soname)
+- ln -sf $(libname) $(libdir)/libaio.so
++ install -D -m 644 libaio.h $(DESTDIR)$(includedir)/libaio.h
++ install -D -m 644 libaio.a $(DESTDIR)$(usrlibdir)/libaio.a
++ install -D -m 755 $(libname) $(DESTDIR)$(libdir)/$(libname)
++ ln -sf $(libname) $(DESTDIR)$(usrlibdir)/$(soname)
++ ln -sf $(libname) $(DESTDIR)$(usrlibdir)/libaio.so
+
+ $(libaio_objs): libaio.h
+
+--
+1.7.3.1
+
diff --git a/dev-libs/libaio/files/libaio-0.3.109-testcase-8.patch b/dev-libs/libaio/files/libaio-0.3.109-testcase-8.patch
new file mode 100644
index 000000000000..de66f2110f22
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.109-testcase-8.patch
@@ -0,0 +1,19 @@
+Do not ignore return value of ftruncate(): testcases are compiled with -Werror,
+and ftruncate is declared with attribute warn_unused_result.
+--- harness/cases/8.t.orig 2012-03-09 16:40:04.074168070 +0100
++++ harness/cases/8.t 2012-03-09 16:40:57.777278646 +0100
+@@ -9,12 +9,13 @@
+ {
+ long long min = 0, max = 9223372036854775807LL;
+ char c = 0;
++ int ret;
+
+ while (max - min > 1) {
+ if (pwrite64(fd, &c, 1, (min + max) / 2) == -1)
+ max = (min + max) / 2;
+ else {
+- ftruncate(fd, 0);
++ ret = ftruncate(fd, 0); assert(ret == 0);
+ min = (min + max) / 2;
+ }
+ }
diff --git a/dev-libs/libaio/files/libaio-0.3.109-x32.patch b/dev-libs/libaio/files/libaio-0.3.109-x32.patch
new file mode 100644
index 000000000000..1d2c2a9050fa
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.109-x32.patch
@@ -0,0 +1,63 @@
+http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=f5c071d93c9e6f57930bce56b1e4f009c160a826
+
+Upstream-Status: Pending
+
+Properly load arguments 5 an 6 for x86-64 syscall
+Use asm ("r10") and asm ("r8") to load arguments 5 an 6 for x86-64
+syscall so that it works with both x32 and x86-64.
+
+Received this patch from H.J. Lu <hjl.tools@gmail.com>
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+2011/12/02
+
+--- libaio-0.3.109/src/syscall-x86_64.h.x32 2009-10-09 11:17:02.000000000 -0700
++++ libaio-0.3.109/src/syscall-x86_64.h 2011-12-02 09:09:07.537603224 -0800
+@@ -1,8 +1,18 @@
++#ifndef __NR_io_setup
+ #define __NR_io_setup 206
++#endif
++#ifndef __NR_io_destroy
+ #define __NR_io_destroy 207
++#endif
++#ifndef __NR_io_getevents
+ #define __NR_io_getevents 208
++#endif
++#ifndef __NR_io_submit
+ #define __NR_io_submit 209
++#endif
++#ifndef __NR_io_cancel
+ #define __NR_io_cancel 210
++#endif
+
+ #define __syscall_clobber "r11","rcx","memory"
+ #define __syscall "syscall"
+@@ -42,10 +52,11 @@ return __res; \
+ type fname (type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
+ { \
+ long __res; \
+-__asm__ volatile ("movq %5,%%r10 ;" __syscall \
++register long __a4 asm ("r10") = (long) arg4; \
++__asm__ volatile (__syscall \
+ : "=a" (__res) \
+ : "0" (__NR_##sname),"D" ((long)(arg1)),"S" ((long)(arg2)), \
+- "d" ((long)(arg3)),"g" ((long)(arg4)) : __syscall_clobber,"r10" ); \
++ "d" ((long)(arg3)),"r" (__a4)); \
+ return __res; \
+ }
+
+@@ -54,10 +65,11 @@ return __res; \
+ type fname (type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
+ { \
+ long __res; \
+-__asm__ volatile ("movq %5,%%r10 ; movq %6,%%r8 ; " __syscall \
++register long __a4 asm ("r10") = (long) arg4; \
++register long __a5 asm ("r8") = (long) arg5; \
++__asm__ volatile ( __syscall \
+ : "=a" (__res) \
+ : "0" (__NR_##sname),"D" ((long)(arg1)),"S" ((long)(arg2)), \
+- "d" ((long)(arg3)),"g" ((long)(arg4)),"g" ((long)(arg5)) : \
+- __syscall_clobber,"r8","r10" ); \
++ "d" ((long)(arg3)),"r" (__a4),"r" (__a5)); \
+ return __res; \
+ }
diff --git a/dev-libs/libaio/files/libaio-0.3.110-cppflags.patch b/dev-libs/libaio/files/libaio-0.3.110-cppflags.patch
new file mode 100644
index 000000000000..4567ac946681
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.110-cppflags.patch
@@ -0,0 +1,25 @@
+From 3bf96bb62370035dba18d4b25459406b32365cfc Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Wed, 26 Mar 2014 23:10:18 -0400
+Subject: [PATCH] respect env CPPFLAGS
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ src/Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/Makefile b/src/Makefile
+index 49f448f..b918c8b 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -5,6 +5,7 @@ usrlibdir=$(libdir)
+
+ CFLAGS ?= -g -fomit-frame-pointer -O2
+ CFLAGS += -nostdlib -nostartfiles -Wall -I. -fPIC
++CFLAGS += $(CPPFLAGS)
+ SO_CFLAGS=-shared $(CFLAGS)
+ L_CFLAGS=$(CFLAGS)
+ LINK_FLAGS=
+--
+1.9.1
+
diff --git a/dev-libs/libaio/files/libaio-0.3.110-link-stdlib.patch b/dev-libs/libaio/files/libaio-0.3.110-link-stdlib.patch
new file mode 100644
index 000000000000..696a928f24d8
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.110-link-stdlib.patch
@@ -0,0 +1,21 @@
+From: Gokturk Yuksek <gokturk@binghamton.edu>
+Subject: [PATCH] Link against stdlib to resolve fortified functions
+
+When '-fstack-protector-strong' is included in CFLAGS, the function
+'__stack_chk_fail_local' needs to be pulled from libc. However, upstream
+uses '-nostdlib' to avoid linking against any C library or gcc libs. Remove
+'-nostdlib' and '-nostartfiles' to pull the required symbols from libc.
+
+Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=558406
+
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -4,7 +4,7 @@
+ usrlibdir=$(libdir)
+
+ CFLAGS ?= -g -fomit-frame-pointer -O2
+-CFLAGS += -nostdlib -nostartfiles -Wall -I. -fPIC
++CFLAGS += -Wall -I. -fPIC
+ CFLAGS += $(CPPFLAGS)
+ SO_CFLAGS=-shared $(CFLAGS)
+ L_CFLAGS=$(CFLAGS)
diff --git a/dev-libs/libaio/files/libaio-0.3.110-optional-werror.patch b/dev-libs/libaio/files/libaio-0.3.110-optional-werror.patch
new file mode 100644
index 000000000000..2933cf5244bc
--- /dev/null
+++ b/dev-libs/libaio/files/libaio-0.3.110-optional-werror.patch
@@ -0,0 +1,30 @@
+From 0cc7dc108d0b2288b40d82bb2fd1fd8bdc08f764 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Wed, 26 Mar 2014 23:07:58 -0400
+Subject: [PATCH] make -Werror into an optional flag
+
+This lets distros disable the flag as random errors might come up with
+different compiler flags and older/newer toolchain versions.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ harness/Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/harness/Makefile b/harness/Makefile
+index 2a88e71..cf8c90d 100644
+--- a/harness/Makefile
++++ b/harness/Makefile
+@@ -6,7 +6,8 @@ PROGS:=$(PARTPROGS) $(EXTRAPROGS)
+ HARNESS_SRCS:=main.c
+ # io_queue.c
+
+-CFLAGS+=-Wall -Werror -I../src -g -O
++CFLAGS_WERROR?=-Werror
++CFLAGS+=-Wall $(CFLAGS_WERROR) -I../src -g -O
+ #-lpthread -lrt
+
+ all: $(PROGS)
+--
+1.9.1
+
diff --git a/dev-libs/libaio/libaio-0.3.110.ebuild b/dev-libs/libaio/libaio-0.3.110.ebuild
new file mode 100644
index 000000000000..5b5e2acaf55e
--- /dev/null
+++ b/dev-libs/libaio/libaio-0.3.110.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils multilib-minimal toolchain-funcs flag-o-matic
+
+DESCRIPTION="Asynchronous input/output library that uses the kernels native interface"
+HOMEPAGE="http://lse.sourceforge.net/io/aio.html"
+SRC_URI="mirror://debian/pool/main/liba/${PN}/${PN}_${PV}.orig.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs test"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-0.3.109-install.patch \
+ "${FILESDIR}"/${PN}-0.3.109-x32.patch \
+ "${FILESDIR}"/${PN}-0.3.109-testcase-8.patch \
+ "${FILESDIR}"/${PN}-0.3.110-cppflags.patch \
+ "${FILESDIR}"/${PN}-0.3.110-optional-werror.patch \
+ "${FILESDIR}"/${PN}-0.3.110-link-stdlib.patch #558406
+
+ local sed_args=(
+ -e "/^prefix=/s:/usr:${EPREFIX}/usr:"
+ -e '/^libdir=/s:lib$:$(ABI_LIBDIR):'
+ )
+ if ! use static-libs; then
+ sed_args+=( -e '/\tinstall .*\/libaio.a/d' )
+ # Tests require the static library to be built.
+ use test || sed_args+=( -e '/^all_targets +=/s/ libaio.a//' )
+ fi
+ sed -i "${sed_args[@]}" src/Makefile Makefile || die
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ if use arm ; then
+ # When building for thumb, we can't allow frame pointers.
+ # http://crbug.com/464517
+ if $(tc-getCPP) ${CFLAGS} ${CPPFLAGS} - <<<$'#ifndef __thumb__\n#error\n#endif' >&/dev/null ; then
+ append-flags -fomit-frame-pointer
+ fi
+ fi
+}
+
+_emake() {
+ CC=$(tc-getCC) \
+ AR=$(tc-getAR) \
+ RANLIB=$(tc-getRANLIB) \
+ ABI_LIBDIR=$(get_libdir) \
+ CFLAGS_WERROR= \
+ emake "$@"
+}
+
+multilib_src_compile() {
+ _emake
+}
+
+multilib_src_test() {
+ mkdir -p testdir || die
+ # 'make check' breaks with sandbox, 'make partcheck' works
+ _emake partcheck prefix="${S}/src" libdir="${S}/src"
+}
+
+multilib_src_install() {
+ _emake install DESTDIR="${D}"
+}
+
+multilib_src_install_all() {
+ doman man/*
+ dodoc ChangeLog TODO
+
+ # move crap to / for multipath-tools #325355
+ gen_usr_ldscript -a aio
+
+ # This lib is a bare minimal shim on top of kernel syscalls.
+ export QA_DT_NEEDED=$(find "${ED}" -type f -name 'libaio.so.*' -printf '/%P\n')
+}
diff --git a/dev-libs/libaio/metadata.xml b/dev-libs/libaio/metadata.xml
new file mode 100644
index 000000000000..9f4f6e46b46a
--- /dev/null
+++ b/dev-libs/libaio/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gokturk@gentoo.org</email>
+ <name>Göktürk Yüksek</name>
+ </maintainer>
+ <longdescription>Library to provide user-level kernel Asynchronous I/O (AIO)
+ support for Linux (needs kernel patches as of 2.6.12)</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">lse</remote-id>
+ </upstream>
+</pkgmetadata>