summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schlemmer <azarah@gentoo.org>2003-04-26 12:23:35 +0000
committerMartin Schlemmer <azarah@gentoo.org>2003-04-26 12:23:35 +0000
commitee081b18a6eb30f1582c2769aff2bbcbddd10fe8 (patch)
tree008ff78858a115d760291fdd154aa5ccd203ba95 /sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild
parentverson bump (diff)
downloadgentoo-2-ee081b18a6eb30f1582c2769aff2bbcbddd10fe8.tar.gz
gentoo-2-ee081b18a6eb30f1582c2769aff2bbcbddd10fe8.tar.bz2
gentoo-2-ee081b18a6eb30f1582c2769aff2bbcbddd10fe8.zip
new version
Diffstat (limited to 'sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild')
-rw-r--r--sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild162
1 files changed, 162 insertions, 0 deletions
diff --git a/sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild b/sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild
new file mode 100644
index 000000000000..5eafdf0c394b
--- /dev/null
+++ b/sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/module-init-tools-0.9.11a.ebuild,v 1.1 2003/04/26 12:23:14 azarah Exp $
+
+# This ebuild includes backwards compatability for stable 2.4 kernels
+IUSE=""
+
+inherit flag-o-matic
+inherit eutils
+
+MYP="${P/_pre1/-pre}"
+S="${WORKDIR}/${MYP}"
+MODUTILS_PV="2.4.25"
+DESCRIPTION="Kernel module tools for the development kernel >=2.5.48"
+SRC_URI="http://www.kernel.org/pub/linux/kernel/people/rusty/modules/${MYP}.tar.bz2
+ http://www.kernel.org/pub/linux/utils/kernel/modutils/v2.4/modutils-${MODUTILS_PV}.tar.bz2"
+HOMEPAGE="http://www.kernel.org/pub/linux/kernel/people/rusty/modules"
+
+KEYWORDS="~x86 ~ppc ~sparc ~alpha ~mips ~arm"
+LICENSE="GPL-2"
+SLOT="0"
+
+DEPEND="virtual/glibc"
+PROVIDE="virtual/modutils"
+
+src_unpack() {
+ unpack ${A}
+
+ # With the b0rked modutils, "modprobe hid" does work. But if something
+ # (like hotplug) tries to auto-load hid (because another module needs it,
+ # via the kernel module auto-loader) and keybdev.o or mousedev.o don't
+ # exist, then the "above" clause fails and the hid module never gets
+ # loaded, and then things like USB will fail. Thus we remove it all
+ # together.
+ #
+ # <drobbins@gentoo.org> (26 Mar 2003)
+ cd ${WORKDIR}/modutils-${MODUTILS_PV}
+ epatch ${FILESDIR}/modutils-2.4.22-no-above-below.patch
+
+ # A hack to have absolutely no output if:
+ #
+ # 1) we have no logging enabled
+ #
+ # 2) our config file is /etc/modprobe.devfs or /etc/modules.devfs
+ #
+ # 3) with the module name starting with '/dev/'.
+ #
+ # Rasionale: This is what modprobe from modutils does.
+ #
+ # <azarah@gentoo.org> (17 Mar 2003)
+ cd ${S}; epatch ${FILESDIR}/${PN}-0.9.11-be-quiet-for-devfsd.patch
+}
+
+src_compile() {
+ local myconf=
+
+ filter-flags -fPIC
+
+ einfo "Building modutils..."
+ cd ${WORKDIR}/modutils-${MODUTILS_PV}
+
+ econf \
+ --disable-strip \
+ --prefix=/ \
+ --enable-insmod-static \
+ --disable-zlib \
+ ${myconf}
+
+ emake || die "emake modutils failed"
+ einfo "Building module-init-tools..."
+ cd ${S}
+
+ econf \
+ --prefix=/ \
+ ${myconf}
+
+ emake || die "emake module-init-tools failed"
+}
+
+src_install () {
+
+ cd ${WORKDIR}/modutils-${MODUTILS_PV}
+ einstall prefix="${D}"
+
+ docinto modutils-${MODUTILS_PV}
+ dodoc COPYING CREDITS ChangeLog NEWS README TODO
+
+ cd ${S}
+ # This copies the old version of modutils to *.old so it still works
+ # with kernels <= 2.4; new versions will execve() the .old version if
+ # a 2.4 kernel is running...
+ # This code was borrowed from the module-init-tools Makefile
+ local runme
+ local f
+ for f in lsmod modprobe rmmod depmod insmod modinfo
+ do
+ if [ -L ${D}/sbin/${f} ]
+ then
+ einfo "Moving symlink $f to ${f}.old"
+ #runme = the target of the symlink with a .old tagged on.
+ runme=`ls -l ${D}/sbin/${f} | sed 's/.* -> //'`.old
+ [ ! -e ${D}/sbin/${runme} ] || einfo "${D}/sbin/${runme} not found"
+ ln -snf $runme ${D}/sbin/${f} || die
+ elif [ -e ${D}/sbin/${f} ]
+ then
+ einfo "Moving executable $f to ${f}.old"
+ fi
+ mv -f ${D}/sbin/${f} ${D}/sbin/${f}.old;
+ done
+ # Move the man pages as well. We only do this for the man pages of the
+ # tools that module-init-tools will replace.
+ for f in ${D}/usr/share/man/man8/{lsmod,modprobe,rmmod,depmod,insmod}.8
+ do
+ mv -f ${f} ${f%\.*}.old.${f##*\.}
+ done
+
+ einstall prefix=${D}
+
+ # Install compat symlink
+ dosym ../bin/lsmod /sbin/lsmod
+ dosym ../sbin/insmod.old /bin/lsmod.old
+ # Install the modules.conf2modprobe.conf tool, so we can update
+ # modprobe.conf.
+ into /
+ dosbin ${S}/generate-modprobe.conf
+ # Create the new modprobe.conf
+ dodir /etc
+ rm -f ${D}/etc/modprobe.conf
+ if [ ! -f ${ROOT}/etc/modprobe.devfs ]
+ then
+ # Support file for the devfs hack .. needed else modprobe borks.
+ # Baselayout-1.8.6.3 or there abouts will have a modules-update that
+ # will correctly generate /etc/modprobe.devfs ....
+ echo "### This file is automatically generated by modules-update" \
+ > ${D}/etc/modprobe.devfs
+ else
+ # This is dynamic, so we do not want this in the package ...
+ rm -f ${D}/etc/modprobe.devfs
+ fi
+
+ doman *.[1-8]
+ docinto /
+ dodoc AUTHORS COPYING ChangeLog INSTALL NEWS README TODO
+}
+
+pkg_postinst() {
+ if [ "${ROOT}" = "/" ]
+ then
+ einfo "Updating config files..."
+ if [ -x /sbin/modules-update ]
+ then
+ /sbin/modules-update
+ elif [ -x /sbin/update-modules ]
+ then
+ /sbin/update-modules
+ elif [ -x /usr/sbin/update-modules ]
+ then
+ /usr/sbin/update-modules
+ fi
+ fi
+}
+