| 1 | # Copyright 1999-2006 Gentoo Foundation |
1 | # Copyright 1999-2006 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-info.eclass,v 1.40 2006/02/16 21:46:50 exg Exp $ |
3 | # $Header: /var/cvsroot/gentoo-x86/eclass/linux-info.eclass,v 1.41 2006/03/03 22:03:35 johnm Exp $ |
| 4 | # |
4 | # |
| 5 | # Description: This eclass is used as a central eclass for accessing kernel |
5 | # Description: This eclass is used as a central eclass for accessing kernel |
| 6 | # related information for sources already installed. |
6 | # related information for sources already installed. |
| 7 | # It is vital for linux-mod to function correctly, and is split |
7 | # It is vital for linux-mod to function correctly, and is split |
| 8 | # out so that any ebuild behaviour "templates" are abstracted out |
8 | # out so that any ebuild behaviour "templates" are abstracted out |
| … | |
… | |
| 290 | qeinfo "Found kernel object directory:" |
290 | qeinfo "Found kernel object directory:" |
| 291 | qeinfo " ${KV_OUT_DIR}" |
291 | qeinfo " ${KV_OUT_DIR}" |
| 292 | |
292 | |
| 293 | KV_LOCAL="$(get_localversion ${KV_OUT_DIR})" |
293 | KV_LOCAL="$(get_localversion ${KV_OUT_DIR})" |
| 294 | fi |
294 | fi |
| 295 | # and if we STILL haven't got it, then we better just set it to KV_DIR |
295 | # and if we STILL have not got it, then we better just set it to KV_DIR |
| 296 | KV_OUT_DIR="${KV_OUT_DIR:-${KV_DIR}}" |
296 | KV_OUT_DIR="${KV_OUT_DIR:-${KV_DIR}}" |
| 297 | |
|
|
| 298 | KV_LOCAL="${KV_LOCAL}$(get_localversion ${KV_DIR})" |
|
|
| 299 | KV_LOCAL="${KV_LOCAL}$(linux_chkconfig_string LOCALVERSION)" |
|
|
| 300 | KV_LOCAL="${KV_LOCAL//\"/}" |
|
|
| 301 | |
|
|
| 302 | # And we should set KV_FULL to the full expanded version |
|
|
| 303 | KV_FULL="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}${KV_LOCAL}" |
|
|
| 304 | |
|
|
| 305 | qeinfo "Found sources for kernel version:" |
|
|
| 306 | qeinfo " ${KV_FULL}" |
|
|
| 307 | |
297 | |
| 308 | if [ ! -s "${KV_OUT_DIR}/.config" ] |
298 | if [ ! -s "${KV_OUT_DIR}/.config" ] |
| 309 | then |
299 | then |
| 310 | qeerror "Could not find a usable .config in the kernel source directory." |
300 | qeerror "Could not find a usable .config in the kernel source directory." |
| 311 | qeerror "Please ensure that ${KERNEL_DIR} points to a configured set of Linux sources." |
301 | qeerror "Please ensure that ${KERNEL_DIR} points to a configured set of Linux sources." |
| 312 | qeerror "If you are using KBUILD_OUTPUT, please set the environment var so that" |
302 | qeerror "If you are using KBUILD_OUTPUT, please set the environment var so that" |
| 313 | qeerror "it points to the necessary object directory so that it might find .config." |
303 | qeerror "it points to the necessary object directory so that it might find .config." |
| 314 | return 1 |
304 | return 1 |
| 315 | fi |
305 | fi |
|
|
306 | |
|
|
307 | KV_LOCAL="${KV_LOCAL}$(get_localversion ${KV_DIR})" |
|
|
308 | KV_LOCAL="${KV_LOCAL}$(linux_chkconfig_string LOCALVERSION)" |
|
|
309 | KV_LOCAL="${KV_LOCAL//\"/}" |
|
|
310 | |
|
|
311 | # And we should set KV_FULL to the full expanded version |
|
|
312 | KV_FULL="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}${KV_LOCAL}" |
|
|
313 | |
|
|
314 | qeinfo "Found sources for kernel version:" |
|
|
315 | qeinfo " ${KV_FULL}" |
| 316 | |
316 | |
| 317 | return 0 |
317 | return 0 |
| 318 | } |
318 | } |
| 319 | |
319 | |
| 320 | get_running_version() { |
320 | get_running_version() { |