diff options
Diffstat (limited to 'sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild')
-rw-r--r-- | sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild | 127 |
1 files changed, 65 insertions, 62 deletions
diff --git a/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild b/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild index 239ef91f250b..63876b5f726a 100644 --- a/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild +++ b/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild,v 1.9 2004/10/03 06:40:46 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/module-init-tools-3.0-r2.ebuild,v 1.10 2004/10/03 09:44:09 vapier Exp $ # This ebuild includes backwards compatability for stable 2.4 kernels @@ -13,12 +13,12 @@ DESCRIPTION="Kernel module tools for the development kernel >=2.5.48" HOMEPAGE="http://www.kernel.org/pub/linux/kernel/people/rusty/modules" SRC_URI="mirror://kernel/linux/kernel/people/rusty/modules/${MYP}.tar.bz2 mirror://kernel/linux/kernel/people/rusty/modules/old/${MYP}.tar.bz2 - mirror://kernel/linux/utils/kernel/modutils/v2.4/modutils-${MODUTILS_PV}.tar.bz2" + !no-old-linux? ( mirror://kernel/linux/utils/kernel/modutils/v2.4/modutils-${MODUTILS_PV}.tar.bz2 )" LICENSE="GPL-2" SLOT="0" KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 s390 sparc x86" -IUSE="" +IUSE="no-old-linux" DEPEND="virtual/libc sys-libs/zlib @@ -36,8 +36,10 @@ src_unpack() { # together. # # <drobbins@gentoo.org> (26 Mar 2003) - cd ${WORKDIR}/modutils-${MODUTILS_PV} - epatch ${FILESDIR}/modutils-2.4.22-no-above-below.patch + if ! use no-old-linux ; then + cd ${WORKDIR}/modutils-${MODUTILS_PV} + epatch ${FILESDIR}/modutils-2.4.22-no-above-below.patch + fi # Support legacy .o modules cd ${S}; epatch ${FILESDIR}/${PN}-0.9.15-legacy-modext-support.patch @@ -55,26 +57,27 @@ src_unpack() { cd ${S} gnuconfig_update - cp config.{guess,sub} ${WORKDIR}/modutils-${MODUTILS_PV}/ + if ! use no-old-linux ; then + cp config.{guess,sub} ${WORKDIR}/modutils-${MODUTILS_PV}/ + fi } src_compile() { filter-flags -fPIC - einfo "Building modutils..." - cd ${WORKDIR}/modutils-${MODUTILS_PV} - econf \ - --disable-strip \ - --prefix=/ \ - --enable-insmod-static \ - --disable-zlib \ - || die "econf failed" - local mymake="" - if [ "${ARCH}" = "hppa" ] - then - mymake="ARCH=hppa" + if ! use no-old-linux ; then + einfo "Building modutils..." + cd ${WORKDIR}/modutils-${MODUTILS_PV} + econf \ + --disable-strip \ + --prefix=/ \ + --enable-insmod-static \ + --disable-zlib \ + || die "econf failed" + local mymake="" + [ "${ARCH}" = "hppa" ] && mymake="ARCH=hppa" + emake ${mymake} || die "emake modutils failed" fi - emake ${mymake} || die "emake modutils failed" einfo "Building module-init-tools..." cd ${S} @@ -86,56 +89,56 @@ src_compile() { } src_install() { - local mymake="" - if [ "${ARCH}" = "hppa" ] - then - mymake="ARCH=hppa" + if ! use no-old-linux ; then + local mymake="" + [ "${ARCH}" = "hppa" ] && mymake="ARCH=hppa" + cd ${WORKDIR}/modutils-${MODUTILS_PV} + einstall prefix="${D}" ${mymake} + + docinto modutils-${MODUTILS_PV} + dodoc 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 insmod.static 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" + dosym $runme /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 + # Fix the ksyms links #35601 + for f in ksyms kallsyms ; do + dosym insmod.old /sbin/${f} + dosym insmod.static.old /sbin/${f}.static + done fi - cd ${WORKDIR}/modutils-${MODUTILS_PV} - einstall prefix="${D}" ${mymake} - - docinto modutils-${MODUTILS_PV} - dodoc 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 insmod.static 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" - dosym $runme /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 - # Fix the ksyms links #35601 - for f in ksyms kallsyms ; do - dosym insmod.old /sbin/${f} - dosym insmod.static.old /sbin/${f}.static - done - einstall prefix=${D} # Install compat symlink dosym ../bin/lsmod /sbin/lsmod - dosym ../sbin/insmod.old /bin/lsmod.old + use no-old-linux || dosym ../sbin/insmod.old /bin/lsmod.old # Install the modules.conf2modprobe.conf tool, so we can update # modprobe.conf. into / |