When merging e.g. /usr/portage/net-misc/nforce-net/nforce-net-1.0.0261-r2.ebuild, the following error crops up, although everything seems to work fine: * /usr/src/linux is a symbolic link * Determining the real directory of the Linux kernel source code basename: zu wenige Argumente ,,basename --help" gibt weitere Informationen. (which basically translated to not enough arguments to basename) Patch to /usr/portage/eclass/kernel-mod.eclass appended --- kernel-mod.eclass.original 2003-12-07 11:39:33.299841576 +0100 +++ kernel-mod.eclass 2003-12-07 11:39:36.291386792 +0100 @@ -39,7 +39,7 @@ eerror "Directory '${KERNEL_DIR}' cannot be found" die fi - KV_DIR="`basename $KV_DIR`" + KV_DIR="`basename $KERNEL_DIR`" # now, we need to break that down into versions
this change is not correct, what's the output of: ls -ld /usr/src/linux | awk '{print $11}'
Sorry? wollschaf root # ls -ld /usr/src/linux | awk '{print $11}' i.e. No output - empty wollschaf root # ls -ld /usr/src/linux lrwxrwxrwx 1 root root 23 2003-12-03 18:24 /usr/src/linux -> linux-2.6.0-test10-mm1/
$11 would be empty : $10 contains the path to which /usr/src/linux resolves example : ls -ld /usr/src/linux lrwxrwxrwx 1 root root 12 2003-11-29 12:41 /usr/src/linux -> linux-2.4.23 ls -ld /usr/src/linux | awk '{print $10}' linux-2.4.23
here $11 contains the path to which it resolves to
what's your coreutils version?
try this: ls -ld --full-time /usr/src/linux | awk '{ print $11 }'
wollschaf root # basename --version basename (GNU coreutils) 5.0.91 wollschaf root # ls -ld --full-time /usr/src/linux | awk '{ print $11 }' linux-2.6.0-test10-mm1/ But, well, I'm actually quite confused now.. So $KV_DIR is correct after all?
ls -ld --full-time /usr/src/linux | awk '{ print $11 }' linux-2.4.23 emerge -s "^coreutils$" Searching... [ Results for search key : ^coreutils$ ] [ Applications found : 1 ] * sys-apps/coreutils Latest version available: 5.0.91-r1 Latest version installed: 5.0.91-r1
yes, KV_DIR is correct, it will be set above: KV_DIR="`ls -ld ${KERNEL_DIR} | awk '{ print $9 }'`" but there seems to be a change in the behaviour of ls in the new coreutils, my ls ouputs: lrwxrwxrwx 1 root root 23 Dec 5 18:24 /usr/src/linux -> linux-2.6.0-test10-mm1/ whereas your's outputs: lrwxrwxrwx 1 root root 23 2003-12-03 18:24 /usr/src/linux -> linux-2.6.0-test10-mm1/ this can be fixed with the --full-time option
So I found a bug, just didn't quite understand what went wrong? Bugger :)
correct ;)