summaryrefslogtreecommitdiff
path: root/sys-libs/libkudzu
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-libs/libkudzu
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-libs/libkudzu')
-rw-r--r--sys-libs/libkudzu/Manifest7
-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/libkudzu-1.2.57.1.ebuild61
-rw-r--r--sys-libs/libkudzu/metadata.xml8
5 files changed, 343 insertions, 0 deletions
diff --git a/sys-libs/libkudzu/Manifest b/sys-libs/libkudzu/Manifest
new file mode 100644
index 000000000000..fc965a4ed77f
--- /dev/null
+++ b/sys-libs/libkudzu/Manifest
@@ -0,0 +1,7 @@
+AUX kudzu-1.2.57.1-sbusfix.patch 2217 SHA256 5147b35cfdf50a2a79205198c8525874a590e0a0f015ee037cf3ee2e3de3eff7 SHA512 5b94734f63e1bb62cbfc349646c6dc4663e6ed2309e554e701943c35649193b14ea779a0c08e531ee931a94afdcc3e15529a8f410c658ea26d26659fe4147c71 WHIRLPOOL b2bf5b6a770bd66bf4b48e4d03f7ba1c2eaec9e3faadc5c514f631e5224ca80c377f98f6bcb98a77356653cac27bdf8e928bf630bfc1cc25e8292937addbdb8f
+AUX kudzu-1.2.57.1-sparc-keyboard.patch 5389 SHA256 f91b233f22bbd408e8efa6338d45615dadaceb488c72d31c871f301a9891cdf0 SHA512 6b89de1ede96e1a523880a33975488957e87cfc31cc0155014bb8152123cafb7ad793edcd9d228b9946bc6005b544e6fb908185f4ff901e623ce200435982708 WHIRLPOOL 311e16f4fd880182b1e81f9152edbebdd04abeb244f4ee68a0982dfa362dd8f8eca7d938caf413d1521c7c6db255ccaaaf1f384c9326e72e03d05149e617c3f0
+DIST kudzu-1.2.57.1.tar.gz 165855 SHA256 436a3fe44eb906155b954c85887c15d2d9e7ee5107641437443db8997b300687 SHA512 799e7cea840b7495fc007f4e34adc50fecd2fa7ceda2e2779e39639d0b93b10419bd44a0eb910b2e47024a49a4376330653a6fd96e5560c4828d55e18ab5d641 WHIRLPOOL dbed78dbcde3d73627c7950f9a6b8ee96fed0f7585b936b4ec3fe0839472546e64c81b4b65f0eabec95a00c13741090dd10d1b473c4254bfadebaf2c5479a804
+EBUILD libkudzu-1.2.57.1.ebuild 1252 SHA256 16dda0233a5eddf336b6947acfe69db3582967b45c9eace5343c20636bb999bd SHA512 ebed822a652dd36abeca95b8d397e4b181c2ba5719bc309847e678e57bd4448321b40251e518fe838619193cb71fc7acb2e4ee8f7a35ef0379e13628f84b0594 WHIRLPOOL 4e1505108164368dab974618975550a709ac1ec53fe80d3361cf78aca350db4715cbe7ecbc8425e287b52c5fa10f8fbe52041da131d13dd1e7a6cdec60b1f055
+MISC ChangeLog 2687 SHA256 e516f54034a410e8ed499337be36882b590aa2d11f1742480fe7ed0053046271 SHA512 1a41953dba7f52aabec99637dcbd657364ffb906558cd86597f80ff268428b1919ba8a683a120bf7e14ffd9b0d4121e39ec60e98420211c6bc992795d109a1b5 WHIRLPOOL a18dddc7f5e9dbd92158fe2b1475f210b0d6e726481217b73975cd29b5d44656ac86e541773acec8e58f4d5e3ec3e8260acc5b4374daa5fd24289f9d924c87f9
+MISC ChangeLog-2015 6402 SHA256 afaf302a5dc7a6d3c1e7b89b4f0f72d322b450f2fd672dee3c7c54986979f178 SHA512 879c8a7a7d41a32951aed26af0644d28f34589c5615fbd0e825f2d41218a0e8212bccab15408fb048b2b09c3f8741ab874602a809b42a9e684a64c3def29797a WHIRLPOOL 9a55e0d3d1fa376e2f1c2fa6135de738c5ca019203680730e3f05fc01a9e2c034f8b4ed46f1a8d45b6148d8b84abd1492121b6630d0d52f689e64a977b031eb9
+MISC metadata.xml 251 SHA256 64aac5f4a42f3b20222048411f52dbf0c57134b8d5aecd25dee154d75d1c0b73 SHA512 2da7a6b2b1b7153b8803cc52201fa006313bf75a25f7d917f26eadd7a6426529e4b30a57c3c24cca20865d9dc4f3d56fdfa14b10254158bea2dfeb2c64fcc18c WHIRLPOOL 5fb64a7c924e2d96d98db3c80ebaa98d19bf644a2936b65d63c3642673cb259670411265eb7c2647697f09aae62d503ee21334e1f1c8aa68d85e6521cf83608f
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 000000000000..5c186ed631da
--- /dev/null
+++ b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sbusfix.patch
@@ -0,0 +1,72 @@
+--- a/sbus.c
++++ b/sbus.c
+@@ -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 000000000000..5626a357345d
--- /dev/null
+++ b/sys-libs/libkudzu/files/kudzu-1.2.57.1-sparc-keyboard.patch
@@ -0,0 +1,195 @@
+--- a/keyboard.c
++++ b/keyboard.c
+@@ -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/libkudzu-1.2.57.1.ebuild b/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
new file mode 100644
index 000000000000..c7b44d76b7b2
--- /dev/null
+++ b/sys-libs/libkudzu/libkudzu-1.2.57.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils linux-info flag-o-matic toolchain-funcs
+
+DESCRIPTION="Red Hat Hardware detection tools"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+SRC_URI="mirror://gentoo/kudzu-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 -mips ppc ppc64 sparc x86"
+IUSE="zlib"
+
+DEPEND="
+ dev-libs/popt
+ >=sys-apps/pciutils-2.2.4[zlib?]
+ zlib? ( sys-libs/zlib )
+"
+RDEPEND="
+ ${DEPEND}
+ sys-apps/hwdata-gentoo
+ !sys-apps/kudzu
+"
+
+S=${WORKDIR}/kudzu-${PV}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/kudzu-${PV}-sbusfix.patch \
+ "${FILESDIR}"/kudzu-${PV}-sparc-keyboard.patch
+}
+
+src_configure() {
+ if use zlib; then
+ sed -i -e 's| -lpci| -lz -lpci|g' Makefile || die
+ fi
+ # Fix the modules directory to match Gentoo layout.
+ sed -i -e 's|/etc/modutils/kudzu|/etc/modules.d/kudzu|g' *.* || die
+
+ tc-export CC
+}
+
+src_compile() {
+ emake \
+ $( usex ppc ARCH='ppc' ARCH=$(tc-arch-kernel) ) \
+ AR=$(tc-getAR) \
+ RANLIB=$(tc-getRANLIB) \
+ RPM_OPT_FLAGS="${CFLAGS}" \
+ libkudzu.a libkudzu_loader.a
+}
+
+src_install() {
+ insinto /usr/include/kudzu
+ doins *.h
+
+ dolib.a libkudzu.a libkudzu_loader.a
+
+ keepdir /etc/sysconfig
+}
diff --git a/sys-libs/libkudzu/metadata.xml b/sys-libs/libkudzu/metadata.xml
new file mode 100644
index 000000000000..767266dca141
--- /dev/null
+++ b/sys-libs/libkudzu/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>livecd@gentoo.org</email>
+ <name>Gentoo LiveCD Project</name>
+</maintainer>
+</pkgmetadata>