diff options
author | Justin Lecher <jlec@gentoo.org> | 2017-02-12 18:52:07 +0000 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2017-02-12 19:08:42 +0000 |
commit | 9d8fe0cbb0d96023f7ebd281fd71aacae74fbc69 (patch) | |
tree | 5d9699bf0488067667a7b2b3ec757c29f16ae14f /sys-apps/fakeroot | |
parent | sci-chemistry/chemical-mime-data: Drop old (diff) | |
download | gentoo-9d8fe0cbb0d96023f7ebd281fd71aacae74fbc69.tar.gz gentoo-9d8fe0cbb0d96023f7ebd281fd71aacae74fbc69.tar.bz2 gentoo-9d8fe0cbb0d96023f7ebd281fd71aacae74fbc69.zip |
sys-apps/fakeroot: Backport patch for glibc-2.24
Package-Manager: Portage-2.3.3, Repoman-2.3.1
Signed-off-by: Justin Lecher <jlec@gentoo.org>
Diffstat (limited to 'sys-apps/fakeroot')
-rw-r--r-- | sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild | 46 | ||||
-rw-r--r-- | sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch | 32 | ||||
-rw-r--r-- | sys-apps/fakeroot/metadata.xml | 8 |
3 files changed, 82 insertions, 4 deletions
diff --git a/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild b/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild new file mode 100644 index 000000000000..a2ccf4890aec --- /dev/null +++ b/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit autotools eutils flag-o-matic + +DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery" +HOMEPAGE="http://packages.qa.debian.org/f/fakeroot.html" +SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.bz2" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="acl debug static-libs test" + +DEPEND=" + sys-libs/libcap + acl? ( sys-apps/acl ) + test? ( app-arch/sharutils )" + +DOCS="AUTHORS BUGS DEBUG README doc/README.saving" + +PATCHES=( + "${FILESDIR}"/${PN}-1.19-no-acl_h.patch + "${FILESDIR}"/${P}-glibc-2.24.patch +) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + export ac_cv_header_sys_acl_h=$(usex acl) + + use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING" + econf \ + $(use_enable static-libs static) +} + +src_install() { + default + prune_libtool_files +} diff --git a/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch b/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch new file mode 100644 index 000000000000..3fd34c8778fa --- /dev/null +++ b/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch @@ -0,0 +1,32 @@ +Description: Hide error from dlsym() + dlsym(), starting in glibc 2.24 actually reports errors. In our case, + we try to get ACL functions which are not in the glibc. This causes + failures in test suites, so hide those messages for non-debugging + purposes for now. It also makes the build logs annoying to read. +Author: Julian Andres Klode <juliank@ubuntu.com> +Origin: vendor +Bug-Debian: https://bugs.debian.org/830912 +Forwarded: no +Last-Update: 2016-08-12 + +--- a/libfakeroot.c ++++ b/libfakeroot.c +@@ -256,10 +256,16 @@ void load_library_symbols(void){ + /* clear dlerror() just in case dlsym() legitimately returns NULL */ + msg = dlerror(); + *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name); ++ + if ( (msg = dlerror()) != NULL){ +- fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); +-/* abort ();*/ ++#ifdef LIBFAKEROOT_DEBUGGING ++ if (fakeroot_debug) { ++ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); ++/* abort ();*/ ++ } ++#endif + } ++ + } + } + diff --git a/sys-apps/fakeroot/metadata.xml b/sys-apps/fakeroot/metadata.xml index 56c124413057..4eb20a048df2 100644 --- a/sys-apps/fakeroot/metadata.xml +++ b/sys-apps/fakeroot/metadata.xml @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> -<maintainer type="project"> - <email>base-system@gentoo.org</email> - <name>Gentoo Base System</name> -</maintainer> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> </pkgmetadata> |