| 1 | # Copyright 1999-2004 Gentoo Foundation |
1 | # Copyright 1999-2004 Gentoo Foundation |
| 2 | # Distributed under the terms of the GNU General Public License v2 |
2 | # Distributed under the terms of the GNU General Public License v2 |
| 3 | # $Header: /var/cvsroot/gentoo-x86/eclass/linux-mod.eclass,v 1.71 2007/02/05 14:51:07 dsd Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/linux-mod.eclass,v 1.75 2007/10/03 12:53:10 phreak Exp $ |
| 4 | |
4 | |
| 5 | # Description: This eclass is used to interface with linux-info in such a way |
5 | # Description: This eclass is used to interface with linux-info in such a way |
| 6 | # to provide the functionality required and initial functions |
6 | # to provide the functionality required and initial functions |
| 7 | # required to install external modules against a kernel source |
7 | # required to install external modules against a kernel source |
| 8 | # tree. |
8 | # tree. |
| 9 | # |
9 | # |
| 10 | # Maintainer: John Mylchreest <johnm@gentoo.org>, Stefan Schweizer <genstef@gentoo.org> |
10 | # Author(s): John Mylchreest <johnm@gentoo.org>, |
| 11 | # Copyright 2004 Gentoo Linux |
11 | # Stefan Schweizer <genstef@gentoo.org> |
|
|
12 | # Maintainer: kernel-misc@gentoo.org |
| 12 | # |
13 | # |
| 13 | # Please direct your bugs to the current eclass maintainer :) |
14 | # Please direct your bugs to the current eclass maintainer :) |
| 14 | |
15 | |
| 15 | # A Couple of env vars are available to effect usage of this eclass |
16 | # A Couple of env vars are available to effect usage of this eclass |
| 16 | # These are as follows: |
17 | # These are as follows: |
| … | |
… | |
| 181 | } |
182 | } |
| 182 | |
183 | |
| 183 | update_modules() { |
184 | update_modules() { |
| 184 | debug-print-function ${FUNCNAME} $* |
185 | debug-print-function ${FUNCNAME} $* |
| 185 | |
186 | |
| 186 | if [ -x /sbin/modules-update ] && \ |
187 | if [ -x /sbin/update-modules ] && \ |
| 187 | grep -v -e "^#" -e "^$" ${D}/etc/modules.d/* >/dev/null 2>&1; then |
188 | grep -v -e "^#" -e "^$" ${D}/etc/modules.d/* >/dev/null 2>&1; then |
| 188 | ebegin "Updating modules.conf" |
189 | ebegin "Updating modules.conf" |
| 189 | /sbin/modules-update |
190 | /sbin/update-modules |
|
|
191 | eend $? |
|
|
192 | elif [ -x /sbin/update-modules ] && \ |
|
|
193 | grep -v -e "^#" -e "^$" ${D}/etc/modules.d/* >/dev/null 2>&1; then |
|
|
194 | ebegin "Updating modules.conf" |
|
|
195 | /sbin/update-modules |
| 190 | eend $? |
196 | eend $? |
| 191 | fi |
197 | fi |
| 192 | } |
198 | } |
| 193 | |
199 | |
| 194 | move_old_moduledb() { |
200 | move_old_moduledb() { |
| … | |
… | |
| 214 | |
220 | |
| 215 | if [[ ! -f ${MODULEDB_DIR}/moduledb ]]; then |
221 | if [[ ! -f ${MODULEDB_DIR}/moduledb ]]; then |
| 216 | [[ ! -d ${MODULEDB_DIR} ]] && mkdir -p ${MODULEDB_DIR} |
222 | [[ ! -d ${MODULEDB_DIR} ]] && mkdir -p ${MODULEDB_DIR} |
| 217 | touch ${MODULEDB_DIR}/moduledb |
223 | touch ${MODULEDB_DIR}/moduledb |
| 218 | fi |
224 | fi |
|
|
225 | |
| 219 | if [[ -z $(grep ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb) ]]; then |
226 | if ! grep -qs ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb ; then |
| 220 | einfo "Adding module to moduledb." |
227 | einfo "Adding module to moduledb." |
| 221 | echo "a:1:${CATEGORY}/${PN}-${PVR}" >> ${MODULEDB_DIR}/moduledb |
228 | echo "a:1:${CATEGORY}/${PN}-${PVR}" >> ${MODULEDB_DIR}/moduledb |
| 222 | fi |
229 | fi |
| 223 | } |
230 | } |
| 224 | |
231 | |
| … | |
… | |
| 226 | debug-print-function ${FUNCNAME} $* |
233 | debug-print-function ${FUNCNAME} $* |
| 227 | |
234 | |
| 228 | local MODULEDB_DIR=${ROOT}/var/lib/module-rebuild/ |
235 | local MODULEDB_DIR=${ROOT}/var/lib/module-rebuild/ |
| 229 | move_old_moduledb |
236 | move_old_moduledb |
| 230 | |
237 | |
| 231 | if [[ -n $(grep ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb) ]]; then |
238 | if grep -qs ${CATEGORY}/${PN}-${PVR} ${MODULEDB_DIR}/moduledb ; then |
| 232 | einfo "Removing ${CATEGORY}/${PN}-${PVR} from moduledb." |
239 | einfo "Removing ${CATEGORY}/${PN}-${PVR} from moduledb." |
| 233 | sed -i -e "/.*${CATEGORY}\/${PN}-${PVR}.*/d" ${MODULEDB_DIR}/moduledb |
240 | sed -i -e "/.*${CATEGORY}\/${PN}-${PVR}.*/d" ${MODULEDB_DIR}/moduledb |
| 234 | fi |
241 | fi |
| 235 | } |
242 | } |
| 236 | |
243 | |