summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-misc/afbinit')
-rw-r--r--x11-misc/afbinit/ChangeLog16
-rw-r--r--x11-misc/afbinit/afbinit-1.0.1-r4.ebuild4
-rw-r--r--x11-misc/afbinit/afbinit-1.0.1-r5.ebuild46
-rw-r--r--x11-misc/afbinit/files/digest-afbinit-1.0.1-r53
-rw-r--r--x11-misc/afbinit/files/rc.afb-1.0.1-r5.patch60
5 files changed, 126 insertions, 3 deletions
diff --git a/x11-misc/afbinit/ChangeLog b/x11-misc/afbinit/ChangeLog
index 3c4caa8ccc9f..1baeff5bc301 100644
--- a/x11-misc/afbinit/ChangeLog
+++ b/x11-misc/afbinit/ChangeLog
@@ -1,6 +1,20 @@
# ChangeLog for x11-misc/afbinit
# Copyright 2000-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/ChangeLog,v 1.15 2006/05/06 19:01:53 fmccor Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/ChangeLog,v 1.16 2006/08/09 15:44:00 fmccor Exp $
+
+*afbinit-1.0.1-r5 (09 Aug 2006)
+
+ 09 Aug 2006; Ferris McCormick <fmccor@gentoo.org>
+ +files/rc.afb-1.0.1-r5.patch, afbinit-1.0.1-r4.ebuild,
+ +afbinit-1.0.1-r5.ebuild:
+ afbinit-1.0.1-r4 stable on sparc.
+ afbinit-1.0.1-r5 modifies /usr/sbin/rc.afb so that it uses /dev/fbxx for the
+ Elite framebuffer device(s) rather than /dev/fb/xx, because with current
+ kernels, baselayout, udev, it seems that /dev/fb/xx devices no longer exist,
+ and /dev/fbxx are the real devices rather than symbolic links into /dev/fb.
+
+ This fixes Bug #132464 once again, thanks to Jan Holtzhausen (and to IRC user
+ je_fro for raising the issue as well).
06 May 2006; Ferris McCormick <fmccor@gentoo.org> afbinit-1.0.1-r4.ebuild:
Add an RDEPEND for util-linux (it seems one could actually build a
diff --git a/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild b/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild
index 56f971d31e7d..fbe82f5ab2b2 100644
--- a/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild
+++ b/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild,v 1.2 2006/05/06 19:01:53 fmccor Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/afbinit-1.0.1-r4.ebuild,v 1.3 2006/08/09 15:44:00 fmccor Exp $
inherit eutils
@@ -11,7 +11,7 @@ IUSE=""
LICENSE="GPL-1"
SLOT="0"
-KEYWORDS="-* ~sparc"
+KEYWORDS="-* sparc"
DEPEND="virtual/libc"
RDEPEND="${DEPEND}
diff --git a/x11-misc/afbinit/afbinit-1.0.1-r5.ebuild b/x11-misc/afbinit/afbinit-1.0.1-r5.ebuild
new file mode 100644
index 000000000000..b8340beda8f4
--- /dev/null
+++ b/x11-misc/afbinit/afbinit-1.0.1-r5.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/afbinit/afbinit-1.0.1-r5.ebuild,v 1.1 2006/08/09 15:44:00 fmccor Exp $
+
+inherit eutils
+
+DESCRIPTION="loads the microcode for Elite3D framebuffers to use X"
+HOMEPAGE="I dont have a home :("
+SRC_URI="http://cvs.gentoo.org/~weeve/files/${P}.tar.bz2"
+IUSE=""
+
+LICENSE="GPL-1"
+SLOT="0"
+KEYWORDS="-* ~sparc"
+
+DEPEND="virtual/libc"
+RDEPEND="${DEPEND}
+ sys-apps/util-linux"
+
+
+src_unpack() {
+ unpack ${A}
+ ##
+ # Patch rc.afb to handle both kernels 2.4.x and 2.6.x
+ einfo "Patching to handle both kernel 2.4.x and 2.6.x style afb identification"
+ cd ${S}
+ epatch ${FILESDIR}/rc.afb-${PVR}.patch || die "Cannot patch rc.afb init script"
+ einfo 'Patching afbinit.c to use MMAP_PUBLIC (needed for kernels > 2.6.14)'
+ epatch ${FILESDIR}/afbinit-mmap-${PV}.patch || die "Cannot patch for mmap"
+}
+
+src_compile() {
+ emake || die "make failed"
+}
+
+src_install() {
+ dosbin afbinit
+ dosbin rc.afb
+ exeinto /etc/init.d ; newexe ${FILESDIR}/afbinit.init afbinit
+}
+
+pkg_postinst() {
+ einfo "To use afbinit, you'll need the AFB microcode."
+ einfo "This is available via a Solaris install at /usr/lib/afb.ucode"
+ einfo "or via sun.com"
+}
diff --git a/x11-misc/afbinit/files/digest-afbinit-1.0.1-r5 b/x11-misc/afbinit/files/digest-afbinit-1.0.1-r5
new file mode 100644
index 000000000000..2463ee5c7015
--- /dev/null
+++ b/x11-misc/afbinit/files/digest-afbinit-1.0.1-r5
@@ -0,0 +1,3 @@
+MD5 e8fe8ac0fc16d942ff3b1508e8324e6a afbinit-1.0.1.tar.bz2 3288
+RMD160 3b401ce48ad3f135c2548b293df906dc7ddd6068 afbinit-1.0.1.tar.bz2 3288
+SHA256 3a9b246b34f9b518f2e9a143e5c9faacd0197baa4e5dd13f82ce3c336a3c285c afbinit-1.0.1.tar.bz2 3288
diff --git a/x11-misc/afbinit/files/rc.afb-1.0.1-r5.patch b/x11-misc/afbinit/files/rc.afb-1.0.1-r5.patch
new file mode 100644
index 000000000000..33d8f5b4c420
--- /dev/null
+++ b/x11-misc/afbinit/files/rc.afb-1.0.1-r5.patch
@@ -0,0 +1,60 @@
+--- rc.afb- 2004-05-27 17:59:23.549406000 +0000
++++ rc.afb 2004-05-27 18:32:34.709406000 +0000
+@@ -10,25 +10,44 @@
+ exit 0
+ fi
+
+-if [ `/bin/dmesg | /bin/grep -c "Elite 3D"` -eq 0 ]
++# The microcode loader binary and the microcode
++# itself must exist.
++if [ ! -x /usr/sbin/afbinit -o ! -f /usr/lib/afb.ucode ]
+ then
+ exit 0
+ fi
+
+-# The microcode loader binary and the microcode
+-# itself must exist.
+-if [ ! -x /usr/sbin/afbinit -o ! -f /usr/lib/afb.ucode ]
++# Make FB device list, depending on which kind of kernel we have.
++# First, try kernel 2.4.x
++
++if [ `/bin/dmesg | /bin/grep -c "Elite 3D"` -gt 0 ]
+ then
++
++ afb_devs=`/bin/dmesg | /bin/egrep -i "Elite 3D" | /bin/sed 's/\:.*//'`
++
++ # Load microcode onto each card.
++ for AFB in ${afb_devs}
++ do
++ echo -n "${AFB}: Loading Elite3D microcode... "
++ /usr/sbin/afbinit /dev/${AFB} /usr/lib/afb.ucode
++ echo "done."
++ done
+ exit 0
+ fi
++##
++# OK, we're not kernel 2.4.x
++# try kernel 2.6.x
+
+-# Make FB device list.
+-afb_devs=`/bin/dmesg | /bin/egrep -i "Elite 3D" | /bin/sed 's/\:.*//'`
++if [ `/bin/dmesg | /bin/grep -c "ffb: AFB"` -gt 0 ]
++then
+
+-# Load microcode onto each card.
+-for AFB in ${afb_devs}
+-do
+- echo -n "${AFB}: Loading Elite3D microcode... "
+- /usr/sbin/afbinit /dev/${AFB} /usr/lib/afb.ucode
+- echo "done."
+-done
++ afb_devs=`/bin/more -s /proc/fb | /bin/egrep -i "Elite 3D" | /bin/sed 's/\ .*//'`
++ # Load microcode onto each card.
++ for AFB in ${afb_devs}
++ do
++ echo -n "/dev/fb${AFB}: Loading Elite3D microcode... "
++ /usr/sbin/afbinit /dev/fb${AFB} /usr/lib/afb.ucode
++ echo "done."
++ done
++ exit 0
++fi