Fix build failure on amd64. Thanks to Claudio Calvelli for the patch. Bug 385387.
authorMike Gilbert <floppym@gentoo.org>
Sun, 9 Oct 2011 03:46:00 +0000 (03:46 +0000)
committerMike Gilbert <floppym@gentoo.org>
Sun, 9 Oct 2011 03:46:00 +0000 (03:46 +0000)
Package-Manager: portage-2.2.0_alpha64/cvs/Linux x86_64

dev-libs/9libs/9libs-1.0-r2.ebuild [new file with mode: 0644]
dev-libs/9libs/ChangeLog
dev-libs/9libs/Manifest
dev-libs/9libs/files/9libs-va_list.patch [new file with mode: 0644]

diff --git a/dev-libs/9libs/9libs-1.0-r2.ebuild b/dev-libs/9libs/9libs-1.0-r2.ebuild
new file mode 100644 (file)
index 0000000..8efffb5
--- /dev/null
@@ -0,0 +1,48 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/9libs/9libs-1.0-r2.ebuild,v 1.1 2011/10/09 03:46:00 floppym Exp $
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="A package of Plan 9 compatibility libraries"
+HOMEPAGE="http://www.netlib.org/research/9libs/9libs-1.0.README"
+SRC_URI="ftp://www.netlib.org/research/9libs/${P}.tar.bz2"
+
+LICENSE="PLAN9"
+SLOT="0"
+KEYWORDS="~amd64 ~sparc ~x86"
+IUSE=""
+
+DEPEND=">=x11-proto/xproto-7.0.4
+       >=x11-libs/libX11-1.0.0
+       >=x11-libs/libXt-1.0.0"
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       # Bug 385387
+       epatch "${FILESDIR}/${PN}-va_list.patch"
+}
+
+src_configure() {
+       econf \
+               --includedir=/usr/include/9libs \
+               --enable-shared
+}
+
+src_compile() {
+       emake CC="$(tc-getCC)"
+}
+
+src_install() {
+       make install DESTDIR="${D}"
+       dodoc README
+
+       # rename some man pages to avoid collisions with dev-libs/libevent
+       local f
+       for f in add balloc bitblt cachechars event frame graphics rgbpix; do
+               mv "${D}"/usr/share/man/man3/${f}.{3,3g} || die
+       done
+}
index f7bae21db6b352d23a4dd69a7d0b0e932a804ba1..a2b4911b811329ce427f171c71be9a24f2e13f9d 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for dev-libs/9libs
-# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-libs/9libs/ChangeLog,v 1.17 2010/09/23 19:07:29 ulm Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-libs/9libs/ChangeLog,v 1.18 2011/10/09 03:46:00 floppym Exp $
+
+*9libs-1.0-r2 (09 Oct 2011)
+
+  09 Oct 2011; Mike Gilbert <floppym@gentoo.org> +9libs-1.0-r2.ebuild,
+  +files/9libs-va_list.patch:
+  Fix build failure on amd64. Thanks to Claudio Calvelli for the patch. Bug
+  385387.
 
   23 Sep 2010; Ulrich Mueller <ulm@gentoo.org> -9libs-1.0.ebuild,
   9libs-1.0-r1.ebuild:
index a7af596f9018e4b73765d77a78eb5490e9904fbc..5a11ff496f3471d25e3e433213a9cadc355c273d 100644 (file)
@@ -1,16 +1,16 @@
 -----BEGIN PGP SIGNED MESSAGE-----
 Hash: SHA256
 
+AUX 9libs-va_list.patch 2819 RMD160 9050f09063ec2d709127a89ebaef18581579d75b SHA1 e18179018e86b51fed831f974fef3a6ca69dd2fe SHA256 dc9e4584f42f20422bc858f731be3c2e3d416459fdd696e92e28677a39da03b8
 DIST 9libs-1.0.tar.bz2 163744 RMD160 6edfccc45bb6697cc93b9aeb1d1cd981f79e4c41 SHA1 3dcf02882b6628f0004fae397eba9e9ceabb1030 SHA256 1d14f945782c8c5b0f97d5026181a105041f8c3e374d7f80bd53a87315ea54f6
 EBUILD 9libs-1.0-r1.ebuild 968 RMD160 8a2eac9d401afd84f847ed7340fd7cd9e044362d SHA1 e3279e4dedebc55944302096a3283a315e9cb517 SHA256 5f98d03a17dd7f25c018438d7b74957c5a41b571baa75364f7577055c33d2225
-MISC ChangeLog 2214 RMD160 acc134b134a5ce2266083c47d9e0bd504909c2e9 SHA1 4a11fb6297f01baa32b348d582773211ad2d0701 SHA256 5da74d5777f3a6e1356173a9ee34f28ff7bc64a0cb1963e263a7efd623779eaa
+EBUILD 9libs-1.0-r2.ebuild 1078 RMD160 b39c8d296eb2e6e0eff316e2d5e61efc62c3c735 SHA1 58ca88ab610f33915163786da2b3f3cce4ddac7b SHA256 51e10e7db3366745137fe1cfcd5884e7d89233adc73359af63da03ef86391e50
+MISC ChangeLog 2435 RMD160 b23fbe8393f177f09d1de0e64248fcc0bb38cdd5 SHA1 533b2280395f978f21a7d907f1d7d666a847c5ba SHA256 4862bd39f10d15cddadcc611d4dbe7bab02da6c1328efc596e44c727c0a89730
 MISC metadata.xml 210 RMD160 c9fe92a44d079ef04bcdd31de9867de5bb9f26e5 SHA1 efa00493ddec7289a21bc4cbcc6e95ec4de749d5 SHA256 90082fe26a119a63ca8fbe227f66c33ba74167b6cf28e2cef02dea6c4f656c39
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.18 (GNU/Linux)
+Version: GnuPG v2.0.17 (GNU/Linux)
 
-iJwEAQEIAAYFAk59C6oACgkQfXuS5UK5QB3fywP7BLmW1LntlF5hVYVqZb1f5sBK
-LKFnPB4ppA6K5Pq3HAHUDsvZUTDqG5G3pXDPgT8d5ZPAzY40HJM3u6Th1Yw+Mt4g
-tUkDKNPr7x8HzrBLEk//7SJ+zJV7q8qOruSPOONf/Rs5esjAHNxV5VvZohLM+M6p
-/1LIVxQRH7rhG3xBju8=
-=xLGU
+iF4EAREIAAYFAk6RGQAACgkQC77qH+pIQ6QbNAEAxxxpGZpGE/xJ3enQfUkMA890
+0KHrbOKi9K8gHRjLEDcA/RAHh/3JjbcXy4tUasJokTDDlgQH2ZfqigBNlxt/rO9g
+=posv
 -----END PGP SIGNATURE-----
diff --git a/dev-libs/9libs/files/9libs-va_list.patch b/dev-libs/9libs/files/9libs-va_list.patch
new file mode 100644 (file)
index 0000000..eb8da36
--- /dev/null
@@ -0,0 +1,115 @@
+diff -ru 9libs-1.0/include/libc.h 9libs-1.0-fixed/include/libc.h
+--- 9libs-1.0/include/libc.h   1998-11-10 22:35:27.000000000 +0000
++++ 9libs-1.0-fixed/include/libc.h     2011-10-02 13:27:38.000000000 +0100
+@@ -57,14 +57,14 @@
+ extern        int     fprint(int, char *, ...);
+ extern        int     sprint(char *, char *, ...);
+ extern        int     snprint(char *, int, char *, ...);
+-extern        int     fmtinstall(int, int (*)(void *, Fconv *));
++extern        int     fmtinstall(int, int (*)(va_list, Fconv *));
+ extern        void    strconv(char *, Fconv *);
+ #if defined(PRINT_RUNES)
+ extern        void    Strconv(Rune *, Fconv *);
+ #endif
+-extern        int     numbconv(void *, Fconv *);
++extern        int     numbconv(va_list, Fconv *);
+ extern        int     fltconv(double, Fconv *);
+-extern        char *  doprint(char *, char *, char *, void *);
++extern        char *  doprint(char *, char *, char *, va_list);
+ /*
+  * argument parsing - lifted from tcs
+diff -ru 9libs-1.0/libplan9c/doprint.c 9libs-1.0-fixed/libplan9c/doprint.c
+--- 9libs-1.0/libplan9c/doprint.c      1998-11-10 22:35:28.000000000 +0000
++++ 9libs-1.0-fixed/libplan9c/doprint.c        2011-10-02 13:30:25.000000000 +0100
+@@ -73,12 +73,12 @@
+               0,      0,      0,      0,      0,      0,      0,      0,
+ };
+-static int (*fmtfns[16])(void *, Fconv *) = {
++static int (*fmtfns[16])(va_list, Fconv *) = {
+       numbconv,
+ };
+ int
+-fmtinstall(int c, int (*f)(void *, Fconv *))
++fmtinstall(int c, int (*f)(va_list, Fconv *))
+ {
+       int i;
+@@ -95,9 +95,8 @@
+ }
+ char *
+-doprint(char *s, char *es, char *format, void *argp)
++doprint(char *s, char *es, char *format, va_list ap)
+ {
+-      va_list ap = argp;
+       int c;
+       int percent = 0;
+       int dot = 0;
+@@ -218,7 +217,6 @@
+                               if (r < 0)
+                                       f.f3 |= ~r;
+                               else {
+-                                      ap += r;
+                                       s = f.out;
+                                       percent = 0;
+                               }
+@@ -287,13 +285,12 @@
+ #endif
+ int
+-numbconv(void *o, Fconv *fp)
++numbconv(va_list ap, Fconv *fp)
+ {
+       static char digits[16] = "0123456789abcdef";
+       char buf[80];   /* arbitrary limit. enough digits, but no limit on f2 */
+       char *s = buf+sizeof(buf)-1;
+       char sign = 0;
+-      va_list ap = o;
+       int uc = 0;
+       unsigned long u;
+@@ -362,5 +359,5 @@
+               break;
+       }
+       strconv(s, fp);
+-      return ap-(va_list)o;
++      return 0;
+ }
+diff -ru 9libs-1.0/libplan9c/tdp.c 9libs-1.0-fixed/libplan9c/tdp.c
+--- 9libs-1.0/libplan9c/tdp.c  1998-11-10 22:35:28.000000000 +0000
++++ 9libs-1.0-fixed/libplan9c/tdp.c    2011-10-02 13:31:58.000000000 +0100
+@@ -122,27 +122,25 @@
+ } Rectangle;
+ int
+-Pconv(void *v, Fconv *fp)
++Pconv(va_list ap, Fconv *fp)
+ {
+       char str[50];
+-      va_list ap = v;
+       Point *p = va_arg(ap, Point *);
+       sprint(str, "(%d,%d)", p->x, p->y);
+       strconv(str, fp);
+-      return ap-(va_list)v;
++      return 0;
+ }
+ int
+-Rconv(void *v, Fconv *fp)
++Rconv(va_list ap, Fconv *fp)
+ {
+       char str[50];
+-      va_list ap = v;
+       Rectangle *r = va_arg(ap, Rectangle *);
+       sprint(str, "(%P,%P)", &r->min, &r->max);
+       strconv(str, fp);
+-      return ap-(va_list)v;
++      return 0;
+ }
+ int