1 |
commit: 9d8fe0cbb0d96023f7ebd281fd71aacae74fbc69 |
2 |
Author: Justin Lecher <jlec <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Feb 12 18:52:07 2017 +0000 |
4 |
Commit: Justin Lecher <jlec <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Feb 12 19:08:42 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d8fe0cb |
7 |
|
8 |
sys-apps/fakeroot: Backport patch for glibc-2.24 |
9 |
|
10 |
Package-Manager: Portage-2.3.3, Repoman-2.3.1 |
11 |
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org> |
12 |
|
13 |
sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild | 46 ++++++++++++++++++++++ |
14 |
.../files/fakeroot-1.20.2-glibc-2.24.patch | 32 +++++++++++++++ |
15 |
sys-apps/fakeroot/metadata.xml | 8 ++-- |
16 |
3 files changed, 82 insertions(+), 4 deletions(-) |
17 |
|
18 |
diff --git a/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild b/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild |
19 |
new file mode 100644 |
20 |
index 0000000000..a2ccf4890a |
21 |
--- /dev/null |
22 |
+++ b/sys-apps/fakeroot/fakeroot-1.20.2-r1.ebuild |
23 |
@@ -0,0 +1,46 @@ |
24 |
+# Copyright 1999-2017 Gentoo Foundation |
25 |
+# Distributed under the terms of the GNU General Public License v2 |
26 |
+# $Id$ |
27 |
+ |
28 |
+EAPI=6 |
29 |
+ |
30 |
+inherit autotools eutils flag-o-matic |
31 |
+ |
32 |
+DESCRIPTION="A fake root environment by means of LD_PRELOAD and SysV IPC (or TCP) trickery" |
33 |
+HOMEPAGE="http://packages.qa.debian.org/f/fakeroot.html" |
34 |
+SRC_URI="mirror://debian/pool/main/${PN:0:1}/${PN}/${P/-/_}.orig.tar.bz2" |
35 |
+ |
36 |
+LICENSE="GPL-3" |
37 |
+SLOT="0" |
38 |
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" |
39 |
+IUSE="acl debug static-libs test" |
40 |
+ |
41 |
+DEPEND=" |
42 |
+ sys-libs/libcap |
43 |
+ acl? ( sys-apps/acl ) |
44 |
+ test? ( app-arch/sharutils )" |
45 |
+ |
46 |
+DOCS="AUTHORS BUGS DEBUG README doc/README.saving" |
47 |
+ |
48 |
+PATCHES=( |
49 |
+ "${FILESDIR}"/${PN}-1.19-no-acl_h.patch |
50 |
+ "${FILESDIR}"/${P}-glibc-2.24.patch |
51 |
+) |
52 |
+ |
53 |
+src_prepare() { |
54 |
+ default |
55 |
+ eautoreconf |
56 |
+} |
57 |
+ |
58 |
+src_configure() { |
59 |
+ export ac_cv_header_sys_acl_h=$(usex acl) |
60 |
+ |
61 |
+ use debug && append-cppflags "-DLIBFAKEROOT_DEBUGGING" |
62 |
+ econf \ |
63 |
+ $(use_enable static-libs static) |
64 |
+} |
65 |
+ |
66 |
+src_install() { |
67 |
+ default |
68 |
+ prune_libtool_files |
69 |
+} |
70 |
|
71 |
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 |
72 |
new file mode 100644 |
73 |
index 0000000000..3fd34c8778 |
74 |
--- /dev/null |
75 |
+++ b/sys-apps/fakeroot/files/fakeroot-1.20.2-glibc-2.24.patch |
76 |
@@ -0,0 +1,32 @@ |
77 |
+Description: Hide error from dlsym() |
78 |
+ dlsym(), starting in glibc 2.24 actually reports errors. In our case, |
79 |
+ we try to get ACL functions which are not in the glibc. This causes |
80 |
+ failures in test suites, so hide those messages for non-debugging |
81 |
+ purposes for now. It also makes the build logs annoying to read. |
82 |
+Author: Julian Andres Klode <juliank@××××××.com> |
83 |
+Origin: vendor |
84 |
+Bug-Debian: https://bugs.debian.org/830912 |
85 |
+Forwarded: no |
86 |
+Last-Update: 2016-08-12 |
87 |
+ |
88 |
+--- a/libfakeroot.c |
89 |
++++ b/libfakeroot.c |
90 |
+@@ -256,10 +256,16 @@ void load_library_symbols(void){ |
91 |
+ /* clear dlerror() just in case dlsym() legitimately returns NULL */ |
92 |
+ msg = dlerror(); |
93 |
+ *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name); |
94 |
++ |
95 |
+ if ( (msg = dlerror()) != NULL){ |
96 |
+- fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); |
97 |
+-/* abort ();*/ |
98 |
++#ifdef LIBFAKEROOT_DEBUGGING |
99 |
++ if (fakeroot_debug) { |
100 |
++ fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg); |
101 |
++/* abort ();*/ |
102 |
++ } |
103 |
++#endif |
104 |
+ } |
105 |
++ |
106 |
+ } |
107 |
+ } |
108 |
+ |
109 |
|
110 |
diff --git a/sys-apps/fakeroot/metadata.xml b/sys-apps/fakeroot/metadata.xml |
111 |
index 56c1244130..4eb20a048d 100644 |
112 |
--- a/sys-apps/fakeroot/metadata.xml |
113 |
+++ b/sys-apps/fakeroot/metadata.xml |
114 |
@@ -1,8 +1,8 @@ |
115 |
<?xml version="1.0" encoding="UTF-8"?> |
116 |
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
117 |
<pkgmetadata> |
118 |
-<maintainer type="project"> |
119 |
- <email>base-system@g.o</email> |
120 |
- <name>Gentoo Base System</name> |
121 |
-</maintainer> |
122 |
+ <maintainer type="project"> |
123 |
+ <email>base-system@g.o</email> |
124 |
+ <name>Gentoo Base System</name> |
125 |
+ </maintainer> |
126 |
</pkgmetadata> |