From b79aa3db1cca97db331e6e058a1c751591f29759 Mon Sep 17 00:00:00 2001 From: Thomas Deutschmann Date: Tue, 28 Nov 2017 00:07:20 +0100 Subject: sys-libs/libaal: Fix build against glibc-2.6 Closes: https://bugs.gentoo.org/637610 Package-Manager: Portage-2.3.16, Repoman-2.3.6 --- sys-libs/libaal/Manifest | 2 +- sys-libs/libaal/files/libaal-1.0.6-glibc26.patch | 89 ++++++++++++++++++++++++ sys-libs/libaal/libaal-1.0.6.ebuild | 5 +- sys-libs/libaal/libaal-1.0.7-r1.ebuild | 42 +++++++++++ 4 files changed, 135 insertions(+), 3 deletions(-) create mode 100644 sys-libs/libaal/files/libaal-1.0.6-glibc26.patch create mode 100644 sys-libs/libaal/libaal-1.0.7-r1.ebuild (limited to 'sys-libs') diff --git a/sys-libs/libaal/Manifest b/sys-libs/libaal/Manifest index 994f6fffe8d2..034f7e1aa3fa 100644 --- a/sys-libs/libaal/Manifest +++ b/sys-libs/libaal/Manifest @@ -1,2 +1,2 @@ -DIST libaal-1.0.6.tar.gz 345894 SHA256 b1a1547746438b156156f82332557b05442e6d6c39fa9fe0d8dd47a3ad16ce9c SHA512 9b13096abcb90e75fff607ffd7b11ed8b100f349800b726acb01aca12f54abe784adb9912916fe8ed0751ebf367ecced04ab058e1e8b947f4209a5e6c390f123 WHIRLPOOL 7d93c3dc6eb62712a460f37bc933588c0b71d17472c64104a5cba939324af801ca0ba37063cd020caf8aa0d352a21b5222f838b427fbba0c03144b89d64e98c6 +DIST libaal-1.0.6.tar.gz 345894 BLAKE2B 726eb26d80ce5cb198a059e74ded76d7ce97aabd2bd38209194462be9c6ffd5aafbfff3a35fddcae8b6b1c88ad8a378a6328217aed490f156bbb806d4ec687b9 SHA512 9b13096abcb90e75fff607ffd7b11ed8b100f349800b726acb01aca12f54abe784adb9912916fe8ed0751ebf367ecced04ab058e1e8b947f4209a5e6c390f123 DIST libaal-1.0.7.tar.gz 376068 BLAKE2B 2fb7802401721a64b17c0409f3ff668524399efc03b4bda4b4523af2cce204fdb5cf41bb2b2a6af5cbda34ee88cbb4703eec9bb76774d705b1759c91a33b1e34 SHA512 9b39a8cd3f49257ea912bb0e463c0c63ad06914e8a310deb4d4dce544d3ee34f492203c7321f971af71dddc1eb85f207082a4791b19bd4fad3f7dab516513b3d diff --git a/sys-libs/libaal/files/libaal-1.0.6-glibc26.patch b/sys-libs/libaal/files/libaal-1.0.6-glibc26.patch new file mode 100644 index 000000000000..298d75ae2d74 --- /dev/null +++ b/sys-libs/libaal/files/libaal-1.0.6-glibc26.patch @@ -0,0 +1,89 @@ +Stop redefining libc definitions that cause build failures under glibc-2.26. + +[ 46s] In file included from /usr/include/sys/types.h:156:0, +[ 46s] from /usr/include/stdlib.h:279, +[ 46s] from malloc.c:15: +[ 46s] /usr/include/bits/stdint-intn.h:27:19: error: conflicting types for +'int64_t' +[ 46s] typedef __int64_t int64_t; +[ 46s]^~~ +[ 46s] In file included from ../include/aal/libaal.h:17:0, +[ 46s] from malloc.c:6: +[ 46s] ../include/aal/types.h:35:33: note: previous declaration of 'int64_t' +was here +[ 46s] typedef long long int int64_t; + +Author: Jan Engelhardt + +--- + include/aal/types.h | 48 ++---------------------------------------------- + 1 file changed, 2 insertions(+), 46 deletions(-) + +Index: libaal-1.0.6/include/aal/types.h +=================================================================== +--- libaal-1.0.6.orig/include/aal/types.h ++++ libaal-1.0.6/include/aal/types.h +@@ -26,24 +26,7 @@ + #undef ESTRUCT + #define ESTRUCT 50 + +-#ifndef __int8_t_defined +-#define __int8_t_defined +-typedef signed char int8_t; +-typedef short int int16_t; +-typedef int int32_t; +-__extension__ +-typedef long long int int64_t; +-#endif +- +-typedef unsigned char uint8_t; +-typedef unsigned short int uint16_t; +-#ifndef __uint32_t_defined +-#define __uint32_t_defined +-typedef unsigned int uint32_t; +-__extension__ +-typedef unsigned long long int uint64_t; +-#endif +- ++#include + #define MAX_UINT8 ((uint8_t)~0) + #define MAX_UINT16 ((uint16_t)~0) + #define MAX_UINT32 ((uint32_t)~0) +@@ -53,36 +36,9 @@ typedef unsigned long long int uint64_t + because we don't want use gcc builtins in minimal mode for achive as small + binary size as possible. */ + +-#ifndef ENABLE_MINIMAL + # include +-#else +-#ifndef _VA_LIST_ +-#define _VA_LIST_ +-typedef char *va_list; +-#endif +-#undef va_arg +-#undef va_end +-#undef va_start +- +-#define va_end(ap) \ +- do {} while(0); +- +-#define va_start(ap, p) \ +- (ap = (char *)(&(p)+1)) +- +-#define va_arg(ap, type) \ +- ((type *)(ap += sizeof(type)))[-1] +-#endif +- +-/* As libaal may be used without any standard headers, we need to declare NULL +- macro here in order to avoid compilation errors. */ +-#undef NULL + +-#if defined(__cplusplus) +-# define NULL 0 +-#else +-# define NULL ((void *)0) +-#endif ++#include + + /* Simple type for direction denoting */ + enum aal_dir { diff --git a/sys-libs/libaal/libaal-1.0.6.ebuild b/sys-libs/libaal/libaal-1.0.6.ebuild index 91f3ab182e1e..21061c06745e 100644 --- a/sys-libs/libaal/libaal-1.0.6.ebuild +++ b/sys-libs/libaal/libaal-1.0.6.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2014 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI="4" -inherit toolchain-funcs +inherit toolchain-funcs eutils DESCRIPTION="library required by reiser4progs" HOMEPAGE="https://sourceforge.net/projects/reiser4/" @@ -23,6 +23,7 @@ src_prepare() { -e "/^CFLAGS=/s:\"\":\"${CFLAGS}\":" \ configure || die "sed" printf '#!/bin/sh\n:\n' > run-ldconfig + epatch "${FILESDIR}"/${PN}-1.0.6-glibc26.patch } src_configure() { diff --git a/sys-libs/libaal/libaal-1.0.7-r1.ebuild b/sys-libs/libaal/libaal-1.0.7-r1.ebuild new file mode 100644 index 000000000000..bd15352a4c18 --- /dev/null +++ b/sys-libs/libaal/libaal-1.0.7-r1.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +inherit toolchain-funcs + +DESCRIPTION="library required by reiser4progs" +HOMEPAGE="https://sourceforge.net/projects/reiser4/" +SRC_URI="mirror://sourceforge/reiser4/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0/7" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 -sparc ~x86" +IUSE="static-libs" + +DEPEND="virtual/os-headers" + +src_prepare() { + default + + # remove stupid CFLAG hardcodes + sed -i \ + -e "/GENERIC_CFLAGS/s:-O3::" \ + -e "/^CFLAGS=/s:\"\":\"${CFLAGS}\":" \ + configure || die + printf '#!/bin/sh\n:\n' > run-ldconfig || die +} + +src_configure() { + local myeconfargs=( + --enable-libminimal + --enable-memory-manager + $(use_enable static-libs static) + ) + econf "${myeconfargs[@]}" +} + +src_install() { + default + gen_usr_ldscript -a aal{,-minimal} +} -- cgit v1.2.3-65-gdbad