kernel/package.bbclass: Handle kernel module stripping centrally
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
parent
708db1ef52
commit
d3630f8174
|
@ -218,15 +218,13 @@ EXPORT_FUNCTIONS do_compile do_install do_configure
|
||||||
|
|
||||||
# kernel-base becomes kernel-${KERNEL_VERSION}
|
# kernel-base becomes kernel-${KERNEL_VERSION}
|
||||||
# kernel-image becomes kernel-image-${KERNEL_VERISON}
|
# kernel-image becomes kernel-image-${KERNEL_VERISON}
|
||||||
PACKAGES = "kernel kernel-base kernel-image kernel-dev kernel-vmlinux kernel-misc kernel-dbg"
|
PACKAGES = "kernel kernel-base kernel-image kernel-dev kernel-vmlinux kernel-misc"
|
||||||
FILES = ""
|
FILES = ""
|
||||||
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
|
FILES_kernel-image = "/boot/${KERNEL_IMAGETYPE}*"
|
||||||
FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
|
FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config*"
|
||||||
FILES_kernel-vmlinux = "/boot/vmlinux*"
|
FILES_kernel-vmlinux = "/boot/vmlinux*"
|
||||||
# misc is a package to contain files we need in staging
|
# misc is a package to contain files we need in staging
|
||||||
FILES_kernel-misc = "/kernel/include/config /kernel/scripts /kernel/drivers/crypto /kernel/drivers/media"
|
FILES_kernel-misc = "/kernel/include/config /kernel/scripts /kernel/drivers/crypto /kernel/drivers/media"
|
||||||
# We don't care about dbg files for the kernel but split them out here to keep the packaging clean
|
|
||||||
FILES_kernel-dbg = "/lib/modules/${KERNEL_VERSION}/kernel/*/*/.debug /lib/modules/${KERNEL_VERSION}/kernel/*/.debug /lib/modules/${KERNEL_VERSION}/kernel/*/*/*/.debug"
|
|
||||||
RDEPENDS_kernel = "kernel-base"
|
RDEPENDS_kernel = "kernel-base"
|
||||||
# Allow machines to override this dependency if kernel image files are
|
# Allow machines to override this dependency if kernel image files are
|
||||||
# not wanted in images as standard
|
# not wanted in images as standard
|
||||||
|
|
|
@ -1,22 +0,0 @@
|
||||||
#DEPENDS_append = " module-strip"
|
|
||||||
|
|
||||||
do_strip_modules () {
|
|
||||||
for p in ${PACKAGES}; do
|
|
||||||
if test -e ${WORKDIR}/install/$p/lib/modules; then
|
|
||||||
modules="`find ${WORKDIR}/install/$p/lib/modules -name \*${KERNEL_OBJECT_SUFFIX}`"
|
|
||||||
if [ -n "$modules" ]; then
|
|
||||||
for module in $modules ; do
|
|
||||||
if ! [ -d "$module" ] ; then
|
|
||||||
${STRIP} -v -g $module
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
# NM="${STAGING_BINDIR_NATIVE}/${HOST_PREFIX}nm" OBJCOPY="${STAGING_BINDIR_NATIVE}/${HOST_PREFIX}objcopy" strip_module $modules
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
python do_package_append () {
|
|
||||||
if (bb.data.getVar('INHIBIT_PACKAGE_STRIP', d, 1) != '1'):
|
|
||||||
bb.build.exec_func('do_strip_modules', d)
|
|
||||||
}
|
|
|
@ -155,6 +155,10 @@ def runstrip(file, d):
|
||||||
strip = bb.data.getVar("STRIP", d, True)
|
strip = bb.data.getVar("STRIP", d, True)
|
||||||
objcopy = bb.data.getVar("OBJCOPY", d, True)
|
objcopy = bb.data.getVar("OBJCOPY", d, True)
|
||||||
|
|
||||||
|
# Handle kernel modules specifically - .debug directories here are pointless
|
||||||
|
if file.find("/lib/modules/") != -1 and file.endswith(".ko"):
|
||||||
|
return os.system("%s'%s' -g --remove-section=.comment --remove-section=.note '%s'" % (pathprefix, strip, file))
|
||||||
|
|
||||||
newmode = None
|
newmode = None
|
||||||
if not os.access(file, os.W_OK):
|
if not os.access(file, os.W_OK):
|
||||||
origmode = os.stat(file)[stat.ST_MODE]
|
origmode = os.stat(file)[stat.ST_MODE]
|
||||||
|
|
|
@ -24,7 +24,7 @@ COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips)"
|
||||||
|
|
||||||
LINUX_VERSION = "v2.6.34"
|
LINUX_VERSION = "v2.6.34"
|
||||||
LINUX_VERSION_EXTENSION = "-wr-${LINUX_KERNEL_TYPE}"
|
LINUX_VERSION_EXTENSION = "-wr-${LINUX_KERNEL_TYPE}"
|
||||||
PR = "r4"
|
PR = "r5"
|
||||||
|
|
||||||
S = "${WORKDIR}/linux"
|
S = "${WORKDIR}/linux"
|
||||||
B = "${WORKDIR}/linux-${WRMACHINE}-${LINUX_KERNEL_TYPE}-build"
|
B = "${WORKDIR}/linux-${WRMACHINE}-${LINUX_KERNEL_TYPE}-build"
|
||||||
|
|
Loading…
Reference in New Issue