/usr/portage/eclass/check-kernel.eclass uses awk & sed in global scope Look here: get_KV_info() { check_version_h # Get the kernel version of sources in /usr/src/linux ... export KV_full="$(awk '/UTS_RELEASE/ { gsub("\"", "", $3); print $3 }' \ "${ROOT}/usr/src/linux/include/linux/version.h")" export KV_major="$(echo "${KV_full}" | cut -d. -f1)" export KV_minor="$(echo "${KV_full}" | cut -d. -f2)" export KV_micro="$(echo "${KV_full}" | cut -d. -f3 | sed -e 's:[^0-9].*::')" } The use of awk and sed in this eclass causes portage to complain about a QA violation for any ebuild inheriting this eclass.
*cough* versionator *cough*
*cough* linux-info *cough* !!
Could someone be a little less terse please?
my apologies :) basically, check-kernel.eclass should die an 'orrible death, in favour of linux-info. What I think I'll do is have it shout out loud warnings in the eclass, ill send a mail to -dev, and try to get this killed off. Can I ask what packages present you with this error?
I have a private ebuild for some internal software here at work. The QA errors were getting annoying, and I finally did some investigation on their origin. This ebuild needs to do kernel version detection somehow, and I didn't know that check-kernel was taboo :) I'll look into linux-info.eclass.
I think I can safely say that we aren't going to put effort into fixing check-kernel, and other bugs exist to track linux-info/mod migration.