summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2010-09-04 10:43:02 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2010-09-04 10:43:02 +0000
commite87b38ad1f42b554bd7bc7d160c954f4056b03fe (patch)
tree49f6f5e34246bd6ab1b0e2e7d624458651211733 /sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild
parentAutomated update of use.local.desc (diff)
downloadgentoo-2-e87b38ad1f42b554bd7bc7d160c954f4056b03fe.tar.gz
gentoo-2-e87b38ad1f42b554bd7bc7d160c954f4056b03fe.tar.bz2
gentoo-2-e87b38ad1f42b554bd7bc7d160c954f4056b03fe.zip
Install /etc/modprobe.d/usb-load-ehci-first.conf that will ensure ehci is loaded before uhci or ohci wrt #260139. Thanks to Szymon Zygmunt, Martin Mokrejš, Pacho Ramos and Mike Frysinger.
(Portage version: 2.2_rc69/cvs/Linux x86_64)
Diffstat (limited to 'sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild')
-rw-r--r--sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild97
1 files changed, 97 insertions, 0 deletions
diff --git a/sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild b/sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild
new file mode 100644
index 000000000000..d823044f0923
--- /dev/null
+++ b/sys-apps/module-init-tools/module-init-tools-3.12-r1.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2010 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.12-r1.ebuild,v 1.1 2010/09/04 10:43:02 ssuominen Exp $
+
+inherit eutils flag-o-matic
+
+DESCRIPTION="tools for managing linux kernel modules"
+HOMEPAGE="http://modules.wiki.kernel.org/"
+SRC_URI="mirror://kernel/linux/utils/kernel/module-init-tools/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="static"
+
+DEPEND="sys-libs/zlib
+ >=sys-apps/baselayout-2.0.1
+ !virtual/modutils"
+PROVIDE="virtual/modutils"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ touch *.5 *.8 # dont regen manpages
+}
+
+src_compile() {
+ mkdir build && cd build #290207
+ use static && append-ldflags -static
+ ECONF_SOURCE=.. \
+ econf \
+ --prefix=/ \
+ --enable-zlib \
+ --enable-zlib-dynamic \
+ --disable-static-utils
+ emake || die
+}
+
+src_test() {
+ ./tests/runtests || die
+}
+
+src_install() {
+ emake -C build install DESTDIR="${D}" || die
+ dodoc AUTHORS ChangeLog NEWS README TODO
+
+ into /
+ newsbin "${FILESDIR}"/update-modules-3.5.sh update-modules || die
+ doman "${FILESDIR}"/update-modules.8 || die
+
+ cat <<-EOF > "${T}"/usb-load-ehci-first.conf
+ install ohci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe --ignore-install ohci_hcd \$CMDLINE_OPTS
+ install uhci_hcd /sbin/modprobe ehci_hcd ; /sbin/modprobe --ignore-install uhci_hcd \$CMDLINE_OPTS
+ EOF
+
+ insinto /etc/modprobe.d
+ doins "${T}"/usb-load-ehci-first.conf || die #260139
+}
+
+pkg_postinst() {
+ # cheat to keep users happy
+ if grep -qs modules-update "${ROOT}"/etc/init.d/modules ; then
+ sed -i 's:modules-update:update-modules:' "${ROOT}"/etc/init.d/modules
+ fi
+
+ # For files that were upgraded but not renamed via their ebuild to
+ # have a proper .conf extension, rename them so etc-update tools can
+ # take care of things. #274942
+ local i f cfg
+ eshopts_push -s nullglob
+ for f in "${ROOT}"etc/modprobe.d/* ; do
+ # The .conf files need no upgrading unless a non-.conf exists,
+ # so skip this until later ...
+ [[ ${f} == *.conf ]] && continue
+ # If a .conf doesn't exist, then a package needs updating, or
+ # the user created it, or it's orphaned. Either way, we don't
+ # really know, so leave it alone.
+ [[ ! -f ${f}.conf ]] && continue
+
+ i=0
+ while :; do
+ cfg=$(printf "%s/._cfg%04d_%s.conf" "${f%/*}" ${i} "${f##*/}")
+ [[ ! -e ${cfg} ]] && break
+ ((i++))
+ done
+ elog "Updating ${f}; please run 'etc-update'"
+ mv "${f}.conf" "${cfg}"
+ mv "${f}" "${f}.conf"
+ done
+ # Whine about any non-.conf files that are left
+ for f in "${ROOT}"etc/modprobe.d/* ; do
+ [[ ${f} == *.conf ]] && continue
+ ewarn "The '${f}' file needs to be upgraded to end with a '.conf'."
+ ewarn "Either upgrade the package that owns it, or manually rename it."
+ done
+ eshopts_pop
+}