summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Gianelloni <wolf31o2@gentoo.org>2008-06-28 09:25:50 +0000
committerChris Gianelloni <wolf31o2@gentoo.org>2008-06-28 09:25:50 +0000
commitcbd39639d05e0e5723b881407f552ae3c13a31bc (patch)
treee27ce46a8baf3be9362dbccb59eada56acfab217
parentAdding a new revision of app-arch/pbzip2 for testing. (diff)
downloadwolf31o2-cbd39639d05e0e5723b881407f552ae3c13a31bc.tar.gz
wolf31o2-cbd39639d05e0e5723b881407f552ae3c13a31bc.tar.bz2
wolf31o2-cbd39639d05e0e5723b881407f552ae3c13a31bc.zip
Added filter-flags for -mfpmath=* for bug #208956 for testing.
svn path=/; revision=209
-rw-r--r--profiles/categories1
-rw-r--r--sys-libs/libkudzu/ChangeLog145
-rw-r--r--sys-libs/libkudzu/Manifest11
-rw-r--r--sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch72
-rw-r--r--sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch195
-rw-r--r--sys-libs/libkudzu/files/ppc.patch11
-rw-r--r--sys-libs/libkudzu/files/sunlance.patch12
-rw-r--r--sys-libs/libkudzu/files/typedef_byte.patch11
-rw-r--r--sys-libs/libkudzu/libkudzu-1.1.62-r1.ebuild58
-rw-r--r--sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild60
-rw-r--r--sys-libs/libkudzu/metadata.xml5
11 files changed, 581 insertions, 0 deletions
diff --git a/profiles/categories b/profiles/categories
index 4b1c599..9d686ed 100644
--- a/profiles/categories
+++ b/profiles/categories
@@ -9,4 +9,5 @@ media-libs
net-misc
sys-apps
sys-kernel
+sys-libs
x11-misc
diff --git a/sys-libs/libkudzu/ChangeLog b/sys-libs/libkudzu/ChangeLog
new file mode 100644
index 0000000..ee49ffa
--- /dev/null
+++ b/sys-libs/libkudzu/ChangeLog
@@ -0,0 +1,145 @@
+# ChangeLog for sys-libs/libkudzu
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libkudzu/ChangeLog,v 1.32 2008/02/29 01:34:03 wolf31o2 Exp $
+
+ 29 Feb 2008; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild, libkudzu-1.2.57.1.ebuild:
+ Added a patch from Andrew Gaffney <agaffney@gentoo.org> and Brent Baude
+ <ranger@gentoo.org> for PowerPC.
+
+ 15 Oct 2007; Markus Rothe <corsair@gentoo.org> libkudzu-1.2.57.1.ebuild:
+ Stable on ppc64
+
+ 14 Aug 2007; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild, libkudzu-1.2.57.1.ebuild:
+ Added a --missing false since not all versions of pciutils support the zlib
+ USE flag. This was reported to bug #188221 by Ă…smund Grammeltvedt
+ <asmundg@big-oil.org>.
+
+ 13 Aug 2007; Tobias Scherbaum <dertobi123@gentoo.org>
+ libkudzu-1.2.57.1.ebuild:
+ ppc. stable
+
+ 22 Jun 2007; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild, libkudzu-1.2.57.1.ebuild:
+ Modified the zlib linking to use USE=zlib and also check if
+ sys-apps/pciutils was built with zlib support or not.
+
+ 19 Jun 2007; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild, libkudzu-1.2.57.1.ebuild:
+ Added append-ldflags -lz so we can build and work against pciutils with
+ USE=zlib.
+
+ 19 Jun 2007; Chris Gianelloni <wolf31o2@gentoo.org>
+ -libkudzu-1.2.41.ebuild:
+ Removing older ebuilds, since they're no longer needed.
+
+ 02 May 2007; Donnie Berkholz <dberkholz@gentoo.org>;
+ libkudzu-1.1.62-r1.ebuild, libkudzu-1.2.41.ebuild,
+ libkudzu-1.2.57.1.ebuild:
+ Update homepage, since the old one vanished.
+
+ 13 Feb 2007; Gustavo Zacarias <gustavoz@gentoo.org>
+ libkudzu-1.2.57.1.ebuild:
+ Stable on sparc
+
+*libkudzu-1.2.57.1 (09 Feb 2007)
+
+ 09 Feb 2007; Gustavo Zacarias <gustavoz@gentoo.org>
+ +files/kudzu-1.2.57.1-sbusfix.patch,
+ +files/kudzu-1.2.57.1-sparc-keyboard.patch, +libkudzu-1.2.57.1.ebuild:
+ New version with sparc patches for sanitized headers
+
+*libkudzu-1.2.41 (31 Jan 2007)
+
+ 31 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org>
+ +libkudzu-1.2.41.ebuild:
+ Version bump. Closing bug #131715.
+
+ 29 Nov 2006; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Added patch from Joe Jezak <josejx@gentoo.org> from bug #147364 and closing
+ that bug. Thanks Joe.
+
+ 05 Sep 2006; Donnie Berkholz <dberkholz@gentoo.org>;
+ libkudzu-1.1.62-r1.ebuild:
+ Add blocker on sys-apps/kudzu, which provides the full, newer version that's
+ incompatible with LiveCD tools Gentoo uses.
+
+ 01 Sep 2006; Donnie Berkholz <dberkholz@gentoo.org>; ChangeLog:
+ Restore ChangeLog entries prior to 9 Feb 2006, when all the old entries were
+ deleted.
+
+ 30 Aug 2006; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Added patch from Yuri Vasilevski <yvasilev@gentoo.org> and closing bug #130786.
+
+ 26 Aug 2006; Michael Sterrett <mr_bones_@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ fix RDEPEND; dodir -> keepdir; touchups
+
+ 09 Feb 2006; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Removing sys-apps/hwdata-knoppix (even though it is technically still valid)
+ from RDEPEND for bug #122218.
+
+ 18 Nov 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Removed obsolete blocks and added hwdata-gentoo to RDEPEND.
+
+ 16 Nov 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ +files/typedef_byte.patch, libkudzu-1.1.62-r1.ebuild:
+ Added typedef_byte.patch and closing bug #109516.
+
+ 16 Nov 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ -libkudzu-1.1.62.ebuild, libkudzu-1.1.62-r1.ebuild:
+ Removed blockers on packages which no longer exist and remove older versions.
+
+ 17 Oct 2005; Joseph Jezak <josejx@gentoo.org> libkudzu-1.1.62-r1.ebuild:
+ Marked ppc stable for bug #104149.
+
+ 11 Oct 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Marked stable on alpha/amd64.
+
+ 02 Oct 2005; Aron Griffis <agriffis@gentoo.org> libkudzu-1.1.62-r1.ebuild:
+ Mark 1.1.62-r1 stable on ia64
+
+ 30 Sep 2005; Gustavo Zacarias <gustavoz@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Stable on sparc wrt #104149
+
+ 24 Sep 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62-r1.ebuild:
+ Marking stable on x86 per bug #104149.
+
+ 24 Sep 2005; Markus Rothe <corsair@gentoo.org> libkudzu-1.1.62-r1.ebuild:
+ Stable on ppc64
+
+ 06 Sep 2005; Chris Gianelloni <wolf31o2@gentoo.org> +files/ppc.patch:
+ Forgot to add the patch... d'oh...
+
+*libkudzu-1.1.62-r1 (06 Sep 2005)
+
+ 06 Sep 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ +libkudzu-1.1.62-r1.ebuild:
+ Added tiny patch for compiling on ppc and closing bug #100022.
+
+ 24 Aug 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62.ebuild:
+ Added libkudzu-knoppix blocker.
+
+ 31 Jul 2005; Chris Gianelloni <wolf31o2@gentoo.org>
+ libkudzu-1.1.62.ebuild:
+ Marking -ppc64 due to bug #100022.
+
+ 23 Jul 2005; Lars Weiler <pylon@gentoo.org> libkudzu-1.1.62.ebuild:
+ Masked -ppc due to bug #100022.
+
+*libkudzu-1.1.62 (12 Jul 2005)
+
+ 12 Jul 2005; Chris Gianelloni <wolf31o2@gentoo.org> +files/sunlance.patch,
+ +metadata.xml, +libkudzu-1.1.62.ebuild:
+ Initial import. Since this ebuild was hacked from the kudzu-knoppix ebuild,
+ and the first step of building kudzu on any platform is to build libkudzu,
+ I'm going ahead with the same KEYWORDS from that ebuild.
diff --git a/sys-libs/libkudzu/Manifest b/sys-libs/libkudzu/Manifest
new file mode 100644
index 0000000..390de87
--- /dev/null
+++ b/sys-libs/libkudzu/Manifest
@@ -0,0 +1,11 @@
+AUX kudzu-1.2.57.1-sbusfix.patch 2319 RMD160 b9c5735ec9e4e10f99f18816482906017c93aa55 SHA1 3ddf1d8c311ca79ea875c045ac4219292e203f71 SHA256 e1511617fbbeecf283de6ab1e4b2fa268cc05e77221750cbeb526ed50e13f81b
+AUX kudzu-1.2.57.1-sparc-keyboard.patch 5491 RMD160 9f9d04f0d9e7fbcc6b615eca3124d4d4ba35eff7 SHA1 df03f2d20c264904a13adfd1d94e4764cec4bbe2 SHA256 57bd061861324cdb5733f833d8c2c2b7e27a4ecb8282b9a7cdbf3bdac41f2405
+AUX ppc.patch 274 RMD160 1a63b42f7a4c3bb5dbfc10626d73b7a0dce4fd86 SHA1 ea7e72c9129269c7445b5ea253ca1283dc8241f8 SHA256 78f93eeacc54999f503651344c133117ab50fd5877d60eea55bbb41df7b93474
+AUX sunlance.patch 470 RMD160 71bda756ff71c918d77bc6c79d04c5a671284cad SHA1 71a0085263be18c314bb9ffd06e41445cf01e615 SHA256 92844e4fa1fe7205a6787cb0efbac0673d9df21a88f5bebc7b10a127ce02f4d6
+AUX typedef_byte.patch 410 RMD160 fcae2ac900f98430208b7862a58161a3142a0668 SHA1 118c4a418bd98d944e718cefa0f1f80540c55aae SHA256 befaebfd8c4109458e6e2a3a96d14b566a525946358e7b33921e09391498f83a
+DIST kudzu-1.1.62.tar.bz2 208388 RMD160 bf19aa2ca9e9922c352a04b43ee99e8a90a7b16f SHA1 b6dacf3c0574990980b1af50a6250a61053549d8 SHA256 11e9a340b64c8f742f668b9eda8e1cc02accf8a7e0c46e0a92e71681ae0fdac1
+DIST kudzu-1.2.57.1.tar.gz 165855 RMD160 cca751661e549b08d9179a421442199f06c9ce64 SHA1 8b5d42792e660bf8090f23224e745791bf7c3882 SHA256 436a3fe44eb906155b954c85887c15d2d9e7ee5107641437443db8997b300687
+EBUILD libkudzu-1.1.62-r1.ebuild 1509 RMD160 c0b8bd5c27a1349173e03ca0f112d70eba86d710 SHA1 e11cf0cf4407ee392cc0a8b4f31f2eb6ce89e51d SHA256 ce71f454485f507834664e49fe29b2a538b0014d12b580a0d2a32aa2096be55b
+EBUILD libkudzu-1.2.57.1.ebuild 1548 RMD160 f5670767ca1244b3cb75e7487fdfa035d0b2c146 SHA1 ccd93dba37836a6e39656caf9e48cfa45e01dd1e SHA256 6bbf5009106dd580533b3195b262e27f6ed4a4929439d8d21735caae4b7dd815
+MISC ChangeLog 5371 RMD160 bbe37b26953dfdfb077adcbc6ab057005fed9c73 SHA1 b1ed00fc254920e7b07fcd368ccb4131f0a6699c SHA256 5d367bfb138ee34900bb3fd2952e9595e2b67b9a636fd00ff820d4a21862687e
+MISC metadata.xml 159 RMD160 8db5ed254a6b9baf8f53368da9e71c5532a46073 SHA1 1e72098aafb1fa729eba6fc8357c7e732eb79dee SHA256 b6e17484225400d76c65d178bf5a10dc0a8da7f345993c2acc63d1093a77c90d
diff --git a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch
new file mode 100644
index 0000000..a5a0455
--- /dev/null
+++ b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch
@@ -0,0 +1,72 @@
+--- kudzu-1.2.57.1/sbus.c.BAD 2006-12-10 11:28:07.000000000 -0500
++++ kudzu-1.2.57.1/sbus.c 2006-12-10 11:32:42.000000000 -0500
+@@ -162,6 +162,7 @@
+ devClass = CLASS_NETWORK;
+ } else if (!strcmp(prop, "le")) {
+ type = "Sun Lance Ethernet";
++ module = "sunlance";
+ devClass = CLASS_NETWORK;
+ } else if (!strcmp(prop, "qe")) {
+ prop = prom_getproperty("channel#", &len);
+@@ -206,9 +207,11 @@
+ devClass = CLASS_SCSI;
+ } else if (!strcmp(prop, "esp")) {
+ type = "Sun Enhanced SCSI Processor (ESP)";
++ module = "esp";
+ devClass = CLASS_SCSI;
+ } else if (!strcmp(prop, "fas")) {
+ type = "Sun Swift (ESP)";
++ module = "esp";
+ devClass = CLASS_SCSI;
+ } else if (!strcmp(prop, "ptisp")) {
+ type = "Performance Technologies ISP";
+@@ -232,19 +235,19 @@
+ while ((*prop >= 'A' && *prop <= 'Z') || *prop == ',')
+ if (*prop++ == ',') break;
+ if (!strcmp(prop, "audio")) {
+- type = "AMD7930";
+- module = "amd7930";
++ type = "Sun|AMD7930";
++ module = "snd-sun-amd7930";
+ devClass = CLASS_AUDIO;
+ } else if (!strcmp(prop, "CS4231")) {
+ if (ebus)
+- type = "CS4231 EB2 DMA (PCI)";
++ type = "Sun|CS4231 EB2 DMA (PCI)";
+ else
+- type = "CS4231 APC DMA (SBUS)";
+- module = "cs4231";
++ type = "Sun|CS4231 APC DMA (SBUS)";
++ module = "snd-sun-cs4231";
+ devClass = CLASS_AUDIO;
+ } else if (!strcmp(prop, "DBRIe")) {
+- type = "SS10/SS20 DBRI";
+- module = "dbri";
++ type = "Sun|SS10/SS20 DBRI";
++ module = "snd-sun-dbri";
+ devClass = CLASS_AUDIO;
+ }
+ prop = prom_getproperty("device_type", &len);
+@@ -452,22 +455,6 @@
+
+ struct device *sbusProbe( enum deviceClass probeClass, int probeFlags,
+ struct device *devlist) {
+- if (probeClass & CLASS_MOUSE) {
+- int fd;
+- struct sbusDevice *mousedev;
+-
+- if ((fd = open("/dev/sunmouse", O_RDONLY)) != -1) {
+- /* FIXME: Should probably talk to the mouse to see
+- if the connector is not empty. */
+- close (fd);
+- mousedev = sbusNewDevice(NULL);
+- mousedev->type = CLASS_MOUSE;
+- mousedev->device = strdup("sunmouse");
+- mousedev->desc = strdup("Sun Mouse");
+- mousedev->next = devlist;
+- devlist = (struct device *)mousedev;
+- }
+- }
+ if (
+ (probeClass & CLASS_OTHER) ||
+ (probeClass & CLASS_NETWORK) ||
diff --git a/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch
new file mode 100644
index 0000000..56fbe59
--- /dev/null
+++ b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch
@@ -0,0 +1,195 @@
+--- kudzu-1.2.57.1/keyboard.c.BAD 2006-12-10 11:36:40.000000000 -0500
++++ kudzu-1.2.57.1/keyboard.c 2006-12-10 11:44:58.000000000 -0500
+@@ -21,7 +21,6 @@
+ #include "keyboard.h"
+
+ #ifdef __sparc__
+-#include <asm/kbio.h>
+ #include <asm/openpromio.h>
+ #include <asm/types.h>
+ #endif
+@@ -96,7 +95,15 @@
+ {0, 0}
+ };
+
+-#if !defined(__s390__) && !defined(__s390x__)
++#if defined(__sparc__)
++static int termcmp(struct termios *a, struct termios *b)
++{
++ if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
++ a->c_cflag != b->c_cflag || a->c_lflag != b->c_lflag)
++ return 1;
++ return memcmp(a->c_cc, b->c_cc, sizeof(a->c_cc));
++}
++#elif !defined(__s390__) && !defined(__s390x__)
+ static int termcmp(struct termios *a, struct termios *b)
+ {
+ if (a->c_iflag != b->c_iflag || a->c_oflag != b->c_oflag ||
+@@ -110,150 +117,6 @@
+ struct device *keyboardProbe(enum deviceClass probeClass, int probeFlags,
+ struct device *devlist)
+ {
+-#ifdef __sparc__
+- int fd;
+- char buf[256];
+- struct keyboardDevice *kbddev;
+-
+- if (probeClass & CLASS_KEYBOARD) {
+- static struct {
+- int layout0, layout1, layout2;
+- char *symbols;
+- int use_iso9995_3;
+- } sunkbd_translate[] = {
+- { 0, 33, 80, "", 0, },
+- { 1, 34, 81, "", 0, },
+- { 2, -1, -1, "fr_BE", 0, },
+- { 3, -1, -1, "ca", 0, },
+- { 4, 36, 83, "dk", 1, },
+- { 5, 37, 84, "de", 1, },
+- { 6, 38, 85, "it", 1, },
+- { 7, 39, 86, "nl", 0, },
+- { 8, 40, 87, "no", 1, },
+- { 9, 41, 88, "pt", 1, },
+- { 10, 42, 89, "es", 1, },
+- { 11, 43, 90, "se", 1, },
+- { 12, 44, 91, "fr_CH",1, },
+- { 13, 45, 92, "de_CH",1, },
+- { 14, 46, 93, "gb", 1, },
+- { 16, 47, 94, "ko", 0, },
+- { 17, 48, 95, "tw", 0, },
+- { 32, 49, 96, "jp", 0, },
+- { 50, 97, -1, "fr_CA",0, },
+- { 51, -1, -1, "hu", 0, },
+- { 52, -1, -1, "pl", 0, },
+- { 53, -1, -1, "cs", 0, },
+- { 54, -1, -1, "ru", 0, },
+- { -1, -1, -1, NULL, 0, }
+- };
+-
+- char twelve = 12;
+- int fdstd = 0;
+- char buf[4096];
+-
+- for (fd = 0; fd <= 2; fd++) {
+- sprintf (buf, "/proc/self/fd/%d", fd);
+- if (readlink (buf, buf, 4096) == 12 &&
+- !strncmp (buf, "/dev/console", 12)) {
+- fdstd = 1;
+- break;
+- }
+- }
+- if (!fdstd) {
+- fd = open("/dev/console", O_RDWR);
+- if (fd < 0) return devlist;
+- }
+-
+- kbddev=keyboardNewDevice(NULL);
+- kbddev->type=CLASS_KEYBOARD;
+- if (devlist)
+- kbddev->next = devlist;
+- devlist = (struct device *) kbddev;
+-
+- if (ioctl (fd, TIOCLINUX, &twelve) < 0) {
+- /* Serial console */
+- char desc[64];
+- struct serial_struct si;
+- int line = 0;
+-
+- if (ioctl (fd, TIOCGSERIAL, &si) >= 0) {
+- if (si.line & 1)
+- /* ttyb */
+- line = 1;
+- }
+- if (!fdstd) close(fd);
+- sprintf (desc, "Serial console tty%c", line + 'a');
+- fd = open("/dev/openprom", O_RDONLY);
+- if (fd >= 0) {
+- struct openpromio *op = (struct openpromio *)buf;
+- sprintf (op->oprom_array, "tty%c-mode", line + 'a');
+- op->oprom_size = 4096-128-4;
+- if (ioctl (fd, OPROMGETOPT, op) >= 0 &&
+- op->oprom_size > 0 && op->oprom_size < 40) {
+- strcat (desc, " ");
+- op->oprom_array [op->oprom_size] = 0;
+- strcat (desc, op->oprom_array);
+- }
+- close (fd);
+- }
+- kbddev->desc=strdup(desc);
+- kbddev->device=strdup("console");
+- return devlist;
+- }
+-
+- if (!fdstd) close(fd);
+- fd=open("/dev/kbd", O_RDWR);
+- if (fd < 0) {
+- /* PS/2 keyboard */
+- kbddev->desc=strdup("Generic PS/2 Keyboard");
+- } else {
+- /* Sun keyboard */
+- int kbdtype, kbdlayout, i;
+- char *desc, *desclayout = NULL;
+-
+- kbddev->device=strdup("kbd");
+- desc = "Sun Type4 ";
+- if (ioctl(fd, KIOCTYPE, &kbdtype) >= 0)
+- switch (kbdtype) {
+- case 2: desc = "Sun Type2 "; break;
+- case 3: desc = "Sun Type3 "; break;
+- case 4: ioctl(fd, KIOCLAYOUT, &kbdlayout);
+- if (kbdlayout < 33)
+- desc = "Sun Type4 ";
+- else switch (kbdlayout) {
+- case 33: case 47: case 48: case 49:
+- case 80: case 94: case 95: case 96:
+- desc = "Sun Type5 "; break;
+- case 34: case 81:
+- desc = "Sun Type5 Unix "; break;
+- default:
+- desc = "Sun Type5 Euro "; break;
+- }
+- for (i = 0; sunkbd_translate[i].layout0 != -1; i++) {
+- if (sunkbd_translate[i].layout0 == kbdlayout ||
+- sunkbd_translate[i].layout1 == kbdlayout ||
+- sunkbd_translate[i].layout2 == kbdlayout)
+- break;
+- }
+- if (sunkbd_translate[i].layout0 != -1 &&
+- sunkbd_translate[i].symbols[0])
+- desclayout = sunkbd_translate[i].symbols;
+- break;
+- }
+- if (desclayout) {
+- kbddev->desc = malloc(strlen(desc) + strlen(desclayout) + 1 + strlen("Keyboard") + 1);
+- strcpy (kbddev->desc, desc);
+- strcat (kbddev->desc, desclayout);
+- strcat (kbddev->desc, " Keyboard");
+- } else {
+- kbddev->desc = malloc(strlen(desc) + strlen("Keyboard") + 1);
+- strcpy (kbddev->desc, desc);
+- strcat (kbddev->desc, "Keyboard");
+- }
+- }
+- close (fd);
+- }
+-#else
+ int fd;
+ char twelve = 12;
+ int fdstd = 0;
+@@ -311,7 +174,7 @@
+ kbddev->device = strdup("ttySG0");
+ }
+ #endif
+-#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__)
++#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__) || defined(__sparc__)
+ int cfd;
+ struct termios cmode, mode;
+
+@@ -397,7 +260,6 @@
+ kbddev->device=strdup(desc);
+ }
+ }
+-#endif
+ out:
+ return devlist;
+ }
diff --git a/sys-libs/libkudzu/files/ppc.patch b/sys-libs/libkudzu/files/ppc.patch
new file mode 100644
index 0000000..d3dcebe
--- /dev/null
+++ b/sys-libs/libkudzu/files/ppc.patch
@@ -0,0 +1,11 @@
+diff -urN kudzu-1.1.62.orig/vio.c kudzu-1.1.62/vio.c
+--- kudzu-1.1.62.orig/vio.c 2004-04-19 23:36:42.000000000 -0400
++++ kudzu-1.1.62/vio.c 2005-09-06 17:58:19.000000000 -0400
+@@ -179,6 +179,7 @@
+ }
+
+ vethdone:
++ end = end;
+ }
+
+ if (probeClass & CLASS_CDROM) {
diff --git a/sys-libs/libkudzu/files/sunlance.patch b/sys-libs/libkudzu/files/sunlance.patch
new file mode 100644
index 0000000..0824f3f
--- /dev/null
+++ b/sys-libs/libkudzu/files/sunlance.patch
@@ -0,0 +1,12 @@
+diff -urN kudzu-1.1.62.orig/sbus.c kudzu-1.1.62/sbus.c
+--- kudzu-1.1.62.orig/sbus.c 2003-03-24 17:39:14.000000000 -0500
++++ kudzu-1.1.62/sbus.c 2005-07-12 09:50:06.000000000 -0400
+@@ -162,7 +162,7 @@
+ devClass = CLASS_NETWORK;
+ } else if (!strcmp(prop, "le")) {
+ type = "Sun Lance Ethernet";
+- module = "ignore";
++ module = "sunlance";
+ devClass = CLASS_NETWORK;
+ } else if (!strcmp(prop, "qe")) {
+ prop = prom_getproperty("channel#", &len);
diff --git a/sys-libs/libkudzu/files/typedef_byte.patch b/sys-libs/libkudzu/files/typedef_byte.patch
new file mode 100644
index 0000000..55a238a
--- /dev/null
+++ b/sys-libs/libkudzu/files/typedef_byte.patch
@@ -0,0 +1,11 @@
+diff -urN kudzu-1.1.62.orig/pci.c kudzu-1.1.62/pci.c
+--- kudzu-1.1.62.orig/pci.c 2004-07-20 11:58:27.000000000 -0400
++++ kudzu-1.1.62/pci.c 2005-11-16 09:38:31.000000000 -0500
+@@ -30,6 +30,7 @@
+ static int numPciDevices = 0;
+ static struct pci_access *pacc=NULL;
+ static jmp_buf pcibuf;
++typedef unsigned char byte;
+
+ static int devCmp(const void * a, const void * b) {
+ const struct pciDevice * one = a;
diff --git a/sys-libs/libkudzu/libkudzu-1.1.62-r1.ebuild b/sys-libs/libkudzu/libkudzu-1.1.62-r1.ebuild
new file mode 100644
index 0000000..8b95329
--- /dev/null
+++ b/sys-libs/libkudzu/libkudzu-1.1.62-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libkudzu/libkudzu-1.1.62-r1.ebuild,v 1.20 2008/02/29 01:34:03 wolf31o2 Exp $
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="Red Hat Hardware detection tools"
+SRC_URI="http://www.ibiblio.org/onebase/devbase/app-packs/kudzu-${PV}.tar.bz2"
+HOMEPAGE="http://rhlinux.redhat.com/kudzu/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 ia64 -mips ppc ppc64 sparc x86"
+IUSE="zlib"
+
+RDEPEND="${DEPEND}
+ sys-apps/hwdata-gentoo
+ !sys-apps/kudzu"
+DEPEND="dev-libs/popt
+ zlib? ( sys-libs/zlib )
+ sys-apps/pciutils"
+
+S=${WORKDIR}/kudzu-${PV}
+
+src_unpack() {
+ unpack ${A}
+ epatch \
+ "${FILESDIR}"/sunlance.patch \
+ "${FILESDIR}"/ppc.patch \
+ "${FILESDIR}"/typedef_byte.patch
+}
+
+src_compile() {
+ # Filtering -mfpmath for bug #208956
+ filter-flags -mfpmath=*
+ if use zlib
+ then
+ append-ldflags -lz
+ elif built_with_use --missing false sys-apps/pciutils zlib
+ then
+ die "You need to build with USE=zlib to match sys-apps/pcituils"
+ fi
+ # Fix the modules directory to match Gentoo layout.
+ perl -pi -e 's|/etc/modutils/kudzu|/etc/modules.d/kudzu|g' *.*
+
+ if use ppc && [ "$(tc-arch-kernel)" != "ppc" ]; then
+ emake libkudzu.a ARCH="ppc" RPM_OPT_FLAGS="${CFLAGS}" || die
+ else
+ emake libkudzu.a ARCH=$(tc-arch-kernel) RPM_OPT_FLAGS="${CFLAGS}" || die
+ fi
+}
+
+src_install() {
+ keepdir /etc/sysconfig
+ insinto /usr/include/kudzu
+ doins *.h
+ dolib.a libkudzu.a
+}
diff --git a/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild b/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
new file mode 100644
index 0000000..8c65a1a
--- /dev/null
+++ b/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild,v 1.10 2008/02/29 01:34:03 wolf31o2 Exp $
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="Red Hat Hardware detection tools"
+HOMEPAGE="http://rhlinux.redhat.com/kudzu/"
+SRC_URI="mirror://gentoo/kudzu-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ia64 -mips ppc ppc64 sparc ~x86"
+IUSE="zlib"
+
+DEPEND="dev-libs/popt
+ zlib? ( sys-libs/zlib )
+ >=sys-apps/pciutils-2.2.4"
+RDEPEND="${DEPEND}
+ sys-apps/hwdata-gentoo
+ !sys-apps/kudzu"
+
+S=${WORKDIR}/kudzu-${PV}
+
+src_unpack() {
+ unpack ${A}
+
+ epatch \
+ "${FILESDIR}"/kudzu-${PV}-sbusfix.patch \
+ "${FILESDIR}"/kudzu-${PV}-sparc-keyboard.patch
+}
+
+src_compile() {
+ # Filtering -mfpmath for bug #208956
+ filter-flags -mfpmath=*
+ if use zlib
+ then
+ append-ldflags -lz
+ elif built_with_use --missing false sys-apps/pciutils zlib
+ then
+ die "You need to build with USE=zlib to match sys-apps/pcituils"
+ fi
+ # Fix the modules directory to match Gentoo layout.
+ perl -pi -e 's|/etc/modutils/kudzu|/etc/modules.d/kudzu|g' *.*
+
+ if use ppc && [ "$(tc-arch-kernel)" != "ppc" ]; then
+ emake libkudzu.a libkudzu_loader.a ARCH="ppc" \
+ RPM_OPT_FLAGS="${CFLAGS}" || die
+ else
+ emake libkudzu.a libkudzu_loader.a ARCH=$(tc-arch-kernel) \
+ RPM_OPT_FLAGS="${CFLAGS}" || die
+ fi
+}
+
+src_install() {
+ keepdir /etc/sysconfig
+ insinto /usr/include/kudzu
+ doins *.h
+ dolib.a libkudzu.a libkudzu_loader.a
+}
diff --git a/sys-libs/libkudzu/metadata.xml b/sys-libs/libkudzu/metadata.xml
new file mode 100644
index 0000000..88653dd
--- /dev/null
+++ b/sys-libs/libkudzu/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>livecd</herd>
+</pkgmetadata>