target-finalize: avoid stripping kernel modules with incorrect permissions
If a kernel module is installed with incorrect permissions (0755 iso 0644), it would get stripped in a way that would render the kernel module broken. While the incorrect permissions are a developer error, it is a minor change to prevent this mistake from causing incorrectly stripped modules. This was reported with bug #6992: https://bugs.busybox.net/show_bug.cgi?id=6992 Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
9c3eb1d33d
commit
066359166f
9
Makefile
9
Makefile
@ -507,7 +507,14 @@ ifneq (,$(call qstrip,$(BR2_STRIP_EXCLUDE_DIRS)))
|
||||
STRIP_FIND_CMD += \( $(call finddirclauses,$(TARGET_DIR),$(call qstrip,$(BR2_STRIP_EXCLUDE_DIRS))) \) -prune -o
|
||||
endif
|
||||
STRIP_FIND_CMD += -type f \( -perm /111 -o -name '*.so*' \)
|
||||
STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print
|
||||
# file exclusions:
|
||||
# - libpthread.so: a non-stripped libpthread shared library is needed for
|
||||
# proper debugging of pthread programs using gdb.
|
||||
# - kernel modules (*.ko): do not function properly when stripped like normal
|
||||
# applications and libraries. Normally kernel modules are already excluded
|
||||
# by the executable permission check above, so the explicit exclusion is only
|
||||
# done for kernel modules with incorrect permissions.
|
||||
STRIP_FIND_CMD += -not \( $(call findfileclauses,libpthread*.so* *.ko $(call qstrip,$(BR2_STRIP_EXCLUDE_FILES))) \) -print
|
||||
|
||||
$(TARGETS_ROOTFS): target-finalize
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user