summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2013-11-17 10:40:40 +0000
committerFabian Groffen <grobian@gentoo.org>2013-11-17 10:40:40 +0000
commit285538ae53635141e473f1f0513df09c9247f093 (patch)
treef3138c4a808013583bc0863f0560d2a9e592f26c /app-portage
parentStable on amd64 and x86, wrt bug #490586 (diff)
downloadgentoo-2-285538ae53635141e473f1f0513df09c9247f093.tar.gz
gentoo-2-285538ae53635141e473f1f0513df09c9247f093.tar.bz2
gentoo-2-285538ae53635141e473f1f0513df09c9247f093.zip
Add patch to fix e.g. qlist on Solaris
(Portage version: 2.2.7-prefix/cvs/SunOS i386, signed Manifest commit with key 0x5F75F607C5C74E89)
Diffstat (limited to 'app-portage')
-rw-r--r--app-portage/portage-utils/ChangeLog6
-rw-r--r--app-portage/portage-utils/files/portage-utils-0.41-scandirat.patch24
-rw-r--r--app-portage/portage-utils/portage-utils-0.41.ebuild7
3 files changed, 35 insertions, 2 deletions
diff --git a/app-portage/portage-utils/ChangeLog b/app-portage/portage-utils/ChangeLog
index fa684847166a..a7e351b49b1a 100644
--- a/app-portage/portage-utils/ChangeLog
+++ b/app-portage/portage-utils/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for app-portage/portage-utils
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-portage/portage-utils/ChangeLog,v 1.148 2013/10/31 03:47:51 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-portage/portage-utils/ChangeLog,v 1.149 2013/11/17 10:40:40 grobian Exp $
+
+ 17 Nov 2013; Fabian Groffen <grobian@gentoo.org>
+ +files/portage-utils-0.41-scandirat.patch, portage-utils-0.41.ebuild:
+ Add patch to fix e.g. qlist on Solaris
31 Oct 2013; Mike Gilbert <floppym@gentoo.org> portage-utils-0.41.ebuild:
Add vapier's devspace as a distfile fallback to prevent fetch failures.
diff --git a/app-portage/portage-utils/files/portage-utils-0.41-scandirat.patch b/app-portage/portage-utils/files/portage-utils-0.41-scandirat.patch
new file mode 100644
index 000000000000..1c7f7cdd923e
--- /dev/null
+++ b/app-portage/portage-utils/files/portage-utils-0.41-scandirat.patch
@@ -0,0 +1,24 @@
+scandirat: copy enough bytes to get the filename
+
+Solaris is a platform without d_reclen. sizeof(struct dirent) is not
+enough to get the whole of d_name contents, since the struct uses
+char[1] as workaround to specify a variable size length end of struct
+member.
+
+Index: libq/scandirat.c
+===================================================================
+RCS file: /var/cvsroot/gentoo-projects/portage-utils/libq/scandirat.c,v
+retrieving revision 1.6
+retrieving revision 1.7
+diff -u -r1.6 -r1.7
+--- libq/scandirat.c 29 Sep 2013 10:25:25 -0000 1.6
++++ libq/scandirat.c 17 Nov 2013 10:26:53 -0000 1.7
+@@ -18,7 +18,7 @@
+ #if defined(_DIRENT_HAVE_D_RECLEN)
+ # define reclen(de) ((de)->d_reclen)
+ #else
+-# define reclen(de) (sizeof(*(de)))
++# define reclen(de) (sizeof(*(de)) + strlen((de)->d_name))
+ #endif
+
+ static int scandirat(int dir_fd, const char *dir, struct dirent ***dirlist,
diff --git a/app-portage/portage-utils/portage-utils-0.41.ebuild b/app-portage/portage-utils/portage-utils-0.41.ebuild
index 42a3c6fd8dfa..85d132e54ab8 100644
--- a/app-portage/portage-utils/portage-utils-0.41.ebuild
+++ b/app-portage/portage-utils/portage-utils-0.41.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-portage/portage-utils/portage-utils-0.41.ebuild,v 1.2 2013/10/31 03:47:51 floppym Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-portage/portage-utils/portage-utils-0.41.ebuild,v 1.3 2013/11/17 10:40:40 grobian Exp $
EAPI="3"
@@ -19,6 +19,11 @@ IUSE="static"
DEPEND="app-arch/xz-utils"
RDEPEND=""
+src_prepare() {
+ # can go next release, backport from CVS
+ epatch "${FILESDIR}"/${P}-scandirat.patch
+}
+
src_configure() {
use static && append-ldflags -static