diff options
author | Daniel Drake <dsd@gentoo.org> | 2005-01-22 23:43:57 +0000 |
---|---|---|
committer | Daniel Drake <dsd@gentoo.org> | 2005-01-22 23:43:57 +0000 |
commit | 81445960d56dcee6979e256a771890890ad04f54 (patch) | |
tree | 124e746d0cf3f8cb3e41ce1d188708b8988fa10e /media-libs/svgalib | |
parent | changed mpeg2 useflag to mpeg useflag. see #77202. (diff) | |
download | historical-81445960d56dcee6979e256a771890890ad04f54.tar.gz historical-81445960d56dcee6979e256a771890890ad04f54.tar.bz2 historical-81445960d56dcee6979e256a771890890ad04f54.zip |
Fix bug #78894 by making sysfs support always activate on 2.6 no matter if devfs is enabled or not, and by restarting devfsd after merging to create the /dev/svga symlink. Also add a udev permissions file so that manual chmod is not needed, the user simply needs to be in the 'video' group.
Package-Manager: portage-2.0.51-r14
Diffstat (limited to 'media-libs/svgalib')
-rw-r--r-- | media-libs/svgalib/ChangeLog | 11 | ||||
-rw-r--r-- | media-libs/svgalib/Manifest | 12 | ||||
-rw-r--r-- | media-libs/svgalib/files/digest-svgalib-1.9.19-r2 | 1 | ||||
-rw-r--r-- | media-libs/svgalib/files/svgalib-1.9.19-linux2.6.patch | 4 | ||||
-rw-r--r-- | media-libs/svgalib/svgalib-1.9.19-r2.ebuild | 188 |
5 files changed, 208 insertions, 8 deletions
diff --git a/media-libs/svgalib/ChangeLog b/media-libs/svgalib/ChangeLog index e5c475d462cc..3d5db543cccf 100644 --- a/media-libs/svgalib/ChangeLog +++ b/media-libs/svgalib/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for media-libs/svgalib # Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/media-libs/svgalib/ChangeLog,v 1.52 2005/01/13 18:30:18 dsd Exp $ +# $Header: /var/cvsroot/gentoo-x86/media-libs/svgalib/ChangeLog,v 1.53 2005/01/22 23:43:57 dsd Exp $ + +*svgalib-1.9.19-r2 (23 Jan 2005) + + 23 Jan 2005; Daniel Drake <dsd@gentoo.org> + files/svgalib-1.9.19-linux2.6.patch, +svgalib-1.9.19-r2.ebuild: + Fix bug #78894 by making sysfs support always activate on 2.6 no matter if + devfs is enabled or not, and by restarting devfsd after merging to create the + /dev/svga symlink. Also add a udev permissions file so that manual chmod is + not needed, the user simply needs to be in the 'video' group. 13 Jan 2005; Daniel Drake <dsd@gentoo.org> files/svgalib-1.9.19-devfs.patch: Fix devfs patch.. diff --git a/media-libs/svgalib/Manifest b/media-libs/svgalib/Manifest index 8189c2ad4eb8..82fcdeb36f55 100644 --- a/media-libs/svgalib/Manifest +++ b/media-libs/svgalib/Manifest @@ -2,9 +2,11 @@ Hash: SHA1 MD5 5521852e3ebf7c90a8670fa0560b4140 svgalib-1.9.19-r1.ebuild 4919 -MD5 36c924dfc3cdd1f1f87ca5757b819f00 ChangeLog 9298 +MD5 27c45e07c4b622d3625f846494dbf716 svgalib-1.9.19-r2.ebuild 5353 +MD5 0ccf96403268720667d7bf32b84ace6f ChangeLog 9743 MD5 1652522405f5936eb29776ef8d5ffa5b metadata.xml 310 MD5 71fa9630e100dc3a6ce8672b4b4b2cff files/digest-svgalib-1.9.19-r1 66 +MD5 71fa9630e100dc3a6ce8672b4b4b2cff files/digest-svgalib-1.9.19-r2 66 MD5 d137b721449f3fe88d6ec08a3cf6c51a files/svgalib.devfs 219 MD5 8a336e556b73e4107cb5403bc07e7dc3 files/svgalib-1.9.19-gentoo.patch 4107 MD5 909fa2160bfb4ca66f2f73400a711431 files/svgalib-1.9.19-devfs.patch 440 @@ -12,12 +14,12 @@ MD5 1c4684bfc1f4a5ff9daf7cbf5da699b1 files/svgalib-1.9.19-pci-get-class.patch 45 MD5 0877788ea40d3673a0c50d82d4560e0a files/svgalib-1.9.18-lrmi-gentoo-cflags.patch 269 MD5 91fa4baff3dfb211bcb57a068ed7495f files/svgalib-1.9.19-pic.patch 422 MD5 c136e25a99e0681344511eef09d410e6 files/svgalib-1.9.19-dont-touch-ld.conf.patch 350 -MD5 431e1212290d169ae8f928e63c793009 files/svgalib-1.9.19-linux2.6.patch 7834 +MD5 4a5014126880edffad4f4f209e3e7e68 files/svgalib-1.9.19-linux2.6.patch 7776 MD5 627fcf9d82cd93cddcdef96a00248260 files/svgalib-1.9.18-utils-include.patch 413 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) -iD8DBQFB56CMiJcSIUGNthERAqgJAJ9GcusmorCoxF3b17uV8ZtEMIGPowCcDRtr -2QojrzEfDSlaQAGQL7jUG8A= -=hLpl +iD8DBQFB8xEniJcSIUGNthERAnziAKCG18ExigYLTOxqrs5yOJ4qzHNlOgCfSieI +ubPzRSzwSaRaIj5EI9GhWqw= +=Suiw -----END PGP SIGNATURE----- diff --git a/media-libs/svgalib/files/digest-svgalib-1.9.19-r2 b/media-libs/svgalib/files/digest-svgalib-1.9.19-r2 new file mode 100644 index 000000000000..a0902968e62f --- /dev/null +++ b/media-libs/svgalib/files/digest-svgalib-1.9.19-r2 @@ -0,0 +1 @@ +MD5 44e5063c9a22e9554088e125b0df7593 svgalib-1.9.19.tar.gz 935305 diff --git a/media-libs/svgalib/files/svgalib-1.9.19-linux2.6.patch b/media-libs/svgalib/files/svgalib-1.9.19-linux2.6.patch index c191b93be937..dea800b36f10 100644 --- a/media-libs/svgalib/files/svgalib-1.9.19-linux2.6.patch +++ b/media-libs/svgalib/files/svgalib-1.9.19-linux2.6.patch @@ -38,7 +38,7 @@ diff -urpN svgalib-1.9.18/kernel/svgalib_helper/kernel26compat.h svgalib-1.9.18. } #endif -+#if defined(KERNEL_2_6) && !defined(CONFIG_DEVFS_FS) ++#if defined(KERNEL_2_6) +# define SLH_SYSFS_REGISTER \ + svgalib_helper_class = class_simple_create(THIS_MODULE, "svgalib_helper"); + @@ -75,7 +75,7 @@ diff -urpN svgalib-1.9.18/kernel/svgalib_helper/main.c svgalib-1.9.18.new/kernel static devfs_handle_t devfs_handle; #endif -+#if defined(KERNEL_2_6) && !defined(CONFIG_DEVFS_FS) ++#if defined(KERNEL_2_6) +struct class_simple *svgalib_helper_class; +#endif + diff --git a/media-libs/svgalib/svgalib-1.9.19-r2.ebuild b/media-libs/svgalib/svgalib-1.9.19-r2.ebuild new file mode 100644 index 000000000000..4880d646cc83 --- /dev/null +++ b/media-libs/svgalib/svgalib-1.9.19-r2.ebuild @@ -0,0 +1,188 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/media-libs/svgalib/svgalib-1.9.19-r2.ebuild,v 1.1 2005/01/22 23:43:57 dsd Exp $ + +inherit eutils flag-o-matic toolchain-funcs kernel-mod + +DESCRIPTION="A library for running svga graphics on the console" +HOMEPAGE="http://www.svgalib.org/" +SRC_URI="http://www.arava.co.il/matan/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="-* ~x86" +IUSE="build" + +DEPEND="virtual/libc" + +pkg_setup() { + ! use build && kernel-mod_modules_supported && check_KV +} + +src_unpack() { + unpack ${A} + + cd ${S} + epatch ${FILESDIR}/${P}-gentoo.patch + + # Get it to work with kernel 2.6 + epatch ${FILESDIR}/${P}-linux2.6.patch + sed -i '/^KDIR/s:=.*:=${ROOT}/usr/src/linux:' ${S}/kernel/svgalib_helper/Makefile + + # Fix include bug #54198 + epatch ${FILESDIR}/${PN}-1.9.18-utils-include.patch + + # Have lrmi compile with our $CFLAGS + epatch ${FILESDIR}/${PN}-1.9.18-lrmi-gentoo-cflags.patch + + # -fPIC does work for lrmi, see bug #51698 + epatch ${FILESDIR}/${P}-pic.patch + + # Don't let the ebuild screw around with ld.so.conf #64829 + epatch ${FILESDIR}/${P}-dont-touch-ld.conf.patch + + # PCI functions have been renamed with newer kernels #69580 + epatch ${FILESDIR}/${P}-pci-get-class.patch + + # devfs_mk_symlink no longer available #77186 + epatch ${FILESDIR}/${P}-devfs.patch + + # Link like the other packages + sed -i 's:$(FLAGS):$(CFLAGS) $(LDFLAGS):' demos/Makefile || die +} + +src_compile() { + filter-flags -fPIC + export CC="$(tc-getCC)" + + # First build static + make OPTIMIZE="${CFLAGS}" static || die "Failed to build static libraries!" + # Have to remove for shared to build ... + rm -f src/svgalib_helper.h + # Then build shared ... + make OPTIMIZE="${CFLAGS}" shared || die "Failed to build shared libraries!" + # Missing in some cases ... + ln -s libvga.so.${PV} sharedlib/libvga.so + # Build lrmi and tools ... + make OPTIMIZE="${CFLAGS}" LDFLAGS="-L../sharedlib" \ + textutils lrmi utils \ + || die "Failed to build libraries and utils!" + # Build the gl stuff tpp + make OPTIMIZE="${CFLAGS}" -C gl || die "Failed to build gl!" + make OPTIMIZE="${CFLAGS}" -C gl libvgagl.so.${PV} \ + || die "Failed to build libvgagl.so.${PV}!" + # Missing in some cases ... + ln -s libvgagl.so.${PV} sharedlib/libvgagl.so + rm -f src/svgalib_helper.h + make OPTIMIZE="${CFLAGS}" -C src libvga.so.${PV} \ + || die "Failed to build libvga.so.${PV}!" + cp -a src/libvga.so.${PV} sharedlib/ + # Build threeDKit ... + make OPTIMIZE="${CFLAGS}" LDFLAGS='-L../sharedlib' \ + -C threeDKit lib3dkit.a || die "Failed to build threeDKit!" + # Build demo's ... + make OPTIMIZE="${CFLAGS} -I../gl" LDFLAGS='-L../sharedlib' \ + demoprogs || die "Failed to build demoprogs!" + + if ! use build && kernel-mod_modules_supported + then + cd ${S}/kernel/svgalib_helper + if [[ `KV_to_int ${KV}` -lt `KV_to_int 2.6.6` ]] ; then + env -u ARCH \ + make -f Makefile.alt INCLUDEDIR="${ROOT}/usr/src/linux/include" \ + clean modules || die "Failed to build kernel module!" + else + env -u ARCH make || die "Failed to build kernel module!" + fi + cd ${S} + fi + + cp Makefile Makefile.orig + sed -e 's/\(install: $(INSTALLAOUTLIB) \)installheaders \(.*\)/\1\2/g' \ + Makefile.orig > Makefile +} + +src_install() { + local x= + + dodir /etc/svgalib /usr/{include,lib,bin,share/man} + + make \ + TOPDIR=${D} OPTIMIZE="${CFLAGS}" INSTALLMODULE="" \ + install || die "Failed to install svgalib!" + if ! use build && kernel-mod_modules_supported + then + cd ${S}/kernel/svgalib_helper + if [[ `KV_to_int ${KV}` -lt `KV_to_int 2.6.6` ]] ; then + env -u ARCH \ + make -f Makefile.alt TOPDIR=${D} \ + INCLUDEDIR="${ROOT}/usr/src/linux/include" \ + modules_install || die "Failed to install svgalib module!" + else + insinto /lib/modules/${KV}/kernel/misc + doins svgalib_helper.ko + fi + cd ${S} + fi + + insinto /usr/include + doins gl/vgagl.h + dolib.a staticlib/libvga.a + dolib.a gl/libvgagl.a + dolib.a threeDKit/lib3dkit.a + dolib.so gl/libvgagl.so.${PV} + dosym libvgagl.so.${PV} /usr/lib/libvgagl.so + preplib + + insinto /usr/include + doins src/vga.h gl/vgagl.h src/mouse/vgamouse.h src/joystick/vgajoystick.h + doins src/keyboard/vgakeyboard.h + + dodir /etc/modules.d + echo "probeall /dev/svga svgalib_helper" > ${D}/etc/modules.d/svgalib + + if [ -e ${ROOT}/dev/.devfsd ] ; then + dodir /etc/devfs.d + newins ${FILESDIR}/svgalib.devfs svgalib + elif [ -e ${ROOT}/dev/.udev ] ; then + dodir /etc/udev/permissions.d + echo "svga*:root:video:0660" > \ + ${D}/etc/udev/permissions.d/30-${PN}.permissions + fi + + exeinto /usr/lib/svgalib/demos + for x in ${S}/demos/* + do + [ -x "${x}" ] && doexe ${x} + done + + cd ${S}/threeDKit + exeinto /usr/lib/svgalib/threeDKit + local THREED_PROGS="plane wrapdemo" + doexe ${THREED_PROGS} + + cd ${S} + dodoc 0-README + cd ${S}/doc + dodoc CHANGES DESIGN TODO + docinto txt + dodoc Driver-programming-HOWTO README.* add_driver svgalib.lsm + + mv ${D}/usr/man/* ${D}/usr/share/man + rmdir ${D}/usr/man +} + +pkg_postinst() { + if [ -e ${ROOT}/dev/.devfsd ]; then + ebegin "Restarting devfsd to reread devfs rules" + killall -HUP devfsd + eend $? + elif [ -e ${ROOT}/dev/.udev ]; then + ebegin "Restarting udev to reread udev rules" + udevstart + eend $? + fi + + [ "${ROOT}" = "/" ] && /sbin/modules-update &> /dev/null + einfo "When upgrading your kernel you'll need to rebuild the kernel module." +} |