From 4b46c1f6e891b1ddd5968536440b888661fade3e Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 31 Aug 2005 10:45:47 +0000 Subject: Initial population git-svn-id: https://svn.o-hand.com/repos/poky@1 311d38ba-8fff-0310-9ca6-ca027cbcb966 --- .../update-modules-1.0/openmn/update-modules | 3 + .../update-modules-1.0/update-modules | 188 +++++++++++++++++++++ 2 files changed, 191 insertions(+) create mode 100755 openembedded/packages/update-modules/update-modules-1.0/openmn/update-modules create mode 100755 openembedded/packages/update-modules/update-modules-1.0/update-modules (limited to 'openembedded/packages/update-modules/update-modules-1.0') diff --git a/openembedded/packages/update-modules/update-modules-1.0/openmn/update-modules b/openembedded/packages/update-modules/update-modules-1.0/openmn/update-modules new file mode 100755 index 000000000..976161f14 --- /dev/null +++ b/openembedded/packages/update-modules/update-modules-1.0/openmn/update-modules @@ -0,0 +1,3 @@ +#!/bin/sh +depmod -ae +exit 0 diff --git a/openembedded/packages/update-modules/update-modules-1.0/update-modules b/openembedded/packages/update-modules/update-modules-1.0/update-modules new file mode 100755 index 000000000..2f817c5ee --- /dev/null +++ b/openembedded/packages/update-modules/update-modules-1.0/update-modules @@ -0,0 +1,188 @@ +#!/bin/sh +# +# This is the update-modules script for Debian GNU/Linux. +# Copyright 1998-2001 Wichert Akkerman +# Licensed under the GNU GPL, version 2 +# + +MODCONFFILE=/etc/modules.conf +MODCONFTMPFILE="${MODCONFFILE}.$$" +MODULESFILE=/etc/modules +MODULESTMPFILE="${MODULESFILE}.$$" + +ARCHDIR=/etc/modutils/arch +CPUDIR=/etc/modutils/cpu +HEADER="### This file is automatically generated by update-modules" + +set -e + +if [ "$1" = "force" ] ; then + force=1 +else + force= +fi + +# Reset the sorting order since we depend on it +LC_COLLATE=C +export LC_COLLATE + +depdir() +{ + dep=`grep '[[:space:]]*depfile' "${MODCONFFILE}" | tail -n 1 | sed -e 's/depfile=//' -e 's,/[^/]*$,,'` + if [ -z "$dep" ] ; then + dep="/lib/modules/`uname -r`" + fi + + echo $dep +} + +arch() { + local model=`uname -m` + case $model in + i[0-9]86) model=i386; ;; + sun4u) model=sparc64; ;; + arm*) model=arm; ;; + ppc) model=powerpc; ;; + esac + echo $model +} + +archmodel() { + local arch=`arch` + local model="" + if [ $arch = "m68k" ]; then + if [ -f /proc/hardware ]; then + model=`sed -ne 's/^Model:[[:space:]]*//p' /proc/hardware` + case $model in + Atari*) model="atari"; ;; + Amiga*) model="amiga"; ;; + Macintosh*) model="mac"; ;; + Motorola*) model="MVME"; ;; + *) model="generic"; ;; + esac + model=".${model}" + else + echo "/proc/hardware does not exist, assuming general m68k system" + model=".generic" + fi + elif [ $arch = "powerpc" ]; then + if [ -f /proc/cpuinfo ]; then + model=`sed -ne 's/^machine[[:space:]]*:[[:space:]]*//p' /proc/cpuinfo` + case $model in + Amiga*) model="apus"; ;; + Power*) model="pmac"; ;; + *) model="generic"; ;; + esac + model=".${model}" + else + echo "/proc/cpuinfo does not exist, assuming general powerpc system" + model=".generic" + fi + fi + echo "${arch}${model}" +} + +checkoverwrite() { + local cfgfile="$1" + + if [ -f "$cfgfile" ]; then + if ! sed -ne 1p "$cfgfile" | grep -q "^$HEADER" ; then + echo "Error: the current $cfgfile is not automatically generated." >&2 + if [ -z "$force" ]; then + echo "Use \"update-modules force\" to force (re)generation." + exit 1 + else + echo "force specified, (re)generating file anyway." + fi + fi + fi +} + +createfile() { + cat < "$1" +$HEADER" +# +# Please do not edit this file directly. If you want to change or add +# anything please take a look at the files in /etc/modutils and read +# the manpage for update-modules. +# +EOF +} + +addfile() { + local src="$1" + local tgt="$2" + + echo "### update-modules: start processing $src" >> "$tgt" + if [ -x "$src" ]; then + if ! "$src" >> "$tgt" ; then + echo "Error while executing $src, aborting" >&2 + exit 1 + fi + else + cat "$src" >> "$tgt" + fi + cat <> "$tgt" + +### update-modules: end processing $cfg + +EOF +} + + +checkoverwrite "$MODCONFFILE" + +if [ 0 -ne "`id -u`" ]; then + echo "You have to be root to do this." >&2 + exit 2 +fi + +model=`archmodel` +oldmodel=$model + +while [ ! -f "${ARCHDIR}/${model}" ]; do + oldmodel=$model + model=`echo $oldmodel | sed -e 's/\.[^.]\+//'` + if [ "$model" = "$oldmodel" ]; then + break + fi + echo "Configuration for $oldmodel not found, trying $model" +done + +CONF="${ARCHDIR}/${model}" + +if [ ! -f "$CONF" ]; then + ## echo "Architecture-specific modutils configuration not found, using defaults" + CONF="${ARCHDIR}/generic" +fi + +[ -e "$MODCONFFILE" ] && cp -f "$MODCONFFILE" "${MODCONFFILE}.old" + +createfile "$MODCONFTMPFILE" +createfile "$MODULESTMPFILE" + +for cfg in /etc/modutils/* $CONF ; do + if [ -f "$cfg" ]; then # this check is necesarry to skip /etc/modutils/archs + if echo $cfg | grep -q '\.dpkg-[a-z]*\|~$' ; then + true + elif echo $cfg | grep -q '\.conf$' ; then + addfile "$cfg" "$MODCONFTMPFILE" + else + addfile "$cfg" "$MODULESTMPFILE" + fi + fi +done + +mv "$MODCONFTMPFILE" "$MODCONFFILE" +mv "$MODULESTMPFILE" "$MODULESFILE" + +# We also call depmod here to stop insmod from complaining that modules.conf +# is more recent then modules.dep +# +if [ -d "`depdir`" -a -f /proc/modules ] +then + depmod -a || true +fi + +exit 0 + -- cgit v1.2.3