From 49547ea2ab173e60c274f2cf8fba3fc49158df1a Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 3 May 2020 15:10:01 +0200 Subject: [PATCH] package/kmod: add compression support for the host variant The kernel may install compressed modules. At the end of the build, we then run depmod, to generate modules.dep and a few assorted files, so that loading modules works properly on the target (loading by alias, loading dependencies...) However, depmod needs support for compressed modules, or it would generate empty modules.dep et al. Uconditionally adding support for gz and xz, and the required deps, was deemed too much of a burden [0], so we add options to enable either or both compression. [0] http://lists.busybox.net/pipermail/buildroot/2018-April/218410.html Yegor Yefremov Cc: Signed-off-by: Yann E. MORIN Cc: Thomas Petazzoni Cc: Lucian Buga Tested-by: Matt Weber Signed-off-by: Thomas Petazzoni --- package/kmod/Config.in.host | 10 ++++++++++ package/kmod/kmod.mk | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/package/kmod/Config.in.host b/package/kmod/Config.in.host index ea99a790f6..9dbbcea782 100644 --- a/package/kmod/Config.in.host +++ b/package/kmod/Config.in.host @@ -4,3 +4,13 @@ config BR2_PACKAGE_HOST_KMOD kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases. + +if BR2_PACKAGE_HOST_KMOD + +config BR2_PACKAGE_HOST_KMOD_GZ + bool "support gzip-compressed modules" + +config BR2_PACKAGE_HOST_KMOD_XZ + bool "support xz-compressed modules" + +endif diff --git a/package/kmod/kmod.mk b/package/kmod/kmod.mk index b27447192c..69615452cf 100644 --- a/package/kmod/kmod.mk +++ b/package/kmod/kmod.mk @@ -82,6 +82,20 @@ else KMOD_CONF_OPTS += --disable-tools endif +ifeq ($(BR2_PACKAGE_HOST_KMOD_GZ),y) +HOST_KMOD_DEPENDENCIES += host-zlib +HOST_KMOD_CONF_OPTS += --with-zlib +else +HOST_KMOD_CONF_OPTS += --without-zlib +endif + +ifeq ($(BR2_PACKAGE_HOST_KMOD_XZ),y) +HOST_KMOD_DEPENDENCIES += host-xz +HOST_KMOD_CONF_OPTS += --with-xz +else +HOST_KMOD_CONF_OPTS += --without-xz +endif + # We only install depmod, since that's the only tool used for the # host. define HOST_KMOD_INSTALL_TOOLS -- 2.30.2