Skip to contentSkip to conversation

Replace module-init-tools by kmod

PATCH New Thomas Petazzoni 2 participants 6 messages Aug 20, 2013 – Aug 21, 2013

lore
Share & tools
lore
#0 lore raw

cover Replace module-init-tools by kmod

Hello,

Here is a set of three patches that replace module-init-tools by kmod, since module-init-tools has been deprecated upstream.

kmod is already packaged, but we had a host variant (in patch 1) so that the Linux kernel build logic can use it (patch 2), and finally we remove the module-init-tools package and add the corresponding Config.in.legacy entries (patch 3).

This is intended for 2013.11.

Thomas

Thomas Petazzoni (3):
kmod: allow to build a host variant
linux: use kmod instead of module-init-tools
module-init-tools: remove package

 Config.in.legacy                                   | 11 +++++
 linux/linux.mk                                     |  2 +-
 package/Config.in                                  |  3 --
 package/kmod/kmod.mk                               |  9 +++++
 package/module-init-tools/Config.in                |  9 -----
 ...nit-tools-3.15-add-manpages-config-option.patch | 47 ----------------------
 package/module-init-tools/module-init-tools.mk     | 28 -------------
 7 files changed, 21 insertions(+), 88 deletions(-)
 delete mode 100644 package/module-init-tools/Config.in
 delete mode 100644 package/module-init-tools/module-init-tools-3.15-add-manpages-config-option.patch
 delete mode 100644 package/module-init-tools/module-init-tools.mk
Signature · 1 line
1.8.1.2
#1 lore raw

PATCH 1/3 kmod: allow to build a host variant

Since module-init-tools is deprecated, we now want to use kmod instead for the installation of modules during the kernel build process. In order to do this, we need to be able to build a host variant of kmod, which is want this patch allows to do.

---
 package/kmod/kmod.mk | 9 +++++++++
 1 file changed, 9 insertions(+)
package/kmod/kmod.mk +9 -0
index 72a24af..8951a56 100644
@@ -53,4 +53,13 @@ else
 KMOD_CONF_OPT += --disable-tools
 endif
 
+define HOST_KMOD_INSTALL_TOOLS
+	mkdir -p $(HOST_DIR)/sbin/
+	for i in depmod insmod lsmod modinfo modprobe rmmod; \
+	do ln -sf ../usr/bin/kmod $(HOST_DIR)/sbin/$$i; done
+endef
+
+HOST_KMOD_POST_INSTALL_HOOKS += HOST_KMOD_INSTALL_TOOLS
+
 $(eval $(autotools-package))
+$(eval $(host-autotools-package))
Signature · 1 line
1.8.1.2
#2 lore raw

PATCH 1/3 kmod: allow to build a host variant

Quoted 15 lines · Thomas Petazzoni

Since module-init-tools is deprecated, we now want to use kmod instead for the installation of modules during the kernel build process. In order to do this, we need to be able to build a host variant of kmod, which is want this patch allows to do.

---
  package/kmod/kmod.mk | 9 +++++++++
  1 file changed, 9 insertions(+)
package/kmod/kmod.mk +0 -0
index 72a24af..8951a56 100644

package/kmod/kmod.mk else · line 59

Quoted 7 lines
package/kmod/kmod.mk +4 -0
@@ -53,4 +53,13 @@ else
  KMOD_CONF_OPT += --disable-tools
  endif
 
+define HOST_KMOD_INSTALL_TOOLS
+	mkdir -p $(HOST_DIR)/sbin/
+	for i in depmod insmod lsmod modinfo modprobe rmmod; \
+	do ln -sf ../usr/bin/kmod $(HOST_DIR)/sbin/$$i; done

Even though this is cut&paste of the above, I would indent it properly
here (and maybe also above).

Maybe for the host tools, only include depmod. The others _really_
shouldn't be used.

Regards,
Arnout

Quoted 7 lines
package/kmod/kmod.mk +5 -0
+endef
+
+HOST_KMOD_POST_INSTALL_HOOKS += HOST_KMOD_INSTALL_TOOLS
+
  $(eval $(autotools-package))
+$(eval $(host-autotools-package))
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#3 lore raw

PATCH 2/3 linux: use kmod instead of module-init-tools

In reply to Thomas Petazzoni
---
 linux/linux.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
linux/linux.mk +1 -1
index 578d535..025fd51 100644
@@ -35,7 +35,7 @@ endif
 LINUX_PATCHES = $(call qstrip,$(BR2_LINUX_KERNEL_PATCH))
 
 LINUX_INSTALL_IMAGES = YES
-LINUX_DEPENDENCIES  += host-module-init-tools host-lzop
+LINUX_DEPENDENCIES  += host-kmod host-lzop
 
 ifeq ($(BR2_LINUX_KERNEL_UBOOT_IMAGE),y)
 	LINUX_DEPENDENCIES += host-uboot-tools
Signature · 1 line
1.8.1.2
#4 lore raw

PATCH 3/3 module-init-tools: remove package

In reply to Thomas Petazzoni

This commit removes the module-init-tools package and adds the relevant Config.in.legacy entries to ease the migration for users.

---
 Config.in.legacy                                   | 11 +++++
 package/Config.in                                  |  3 --
 package/module-init-tools/Config.in                |  9 -----
 ...nit-tools-3.15-add-manpages-config-option.patch | 47 ----------------------
 package/module-init-tools/module-init-tools.mk     | 28 -------------
 5 files changed, 11 insertions(+), 87 deletions(-)
 delete mode 100644 package/module-init-tools/Config.in
 delete mode 100644 package/module-init-tools/module-init-tools-3.15-add-manpages-config-option.patch
 delete mode 100644 package/module-init-tools/module-init-tools.mk
Config.in.legacy +11 -0
index 763f16c..ac6f088 100644
@@ -45,6 +45,17 @@ comment "build, or run, in unpredictable ways.               "
 endif
 
 ###############################################################################
+comment "Legacy options removed in 2013.11"
+
+config BR2_PACKAGE_MODULE_INIT_TOOLS
+	bool "module-init-tools replaced by kmod"
+	select BR2_PACKAGE_KMOD
+	select BR2_PACKAGE_KMOD_TOOLS
+	help
+	  The 'module-init-tools' package has been removed, since it
+	  has been depracated upstream and replaced by 'kmod'.
+
+###############################################################################
 comment "Legacy options removed in 2013.08"
 
 config BR2_ARM_OABI
package/Config.in +0 -3
index 7069d77..4ef8430 100644
@@ -896,9 +896,6 @@ source "package/cpuload/Config.in"
 source "package/htop/Config.in"
 source "package/keyutils/Config.in"
 source "package/kmod/Config.in"
-if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
-source "package/module-init-tools/Config.in"
-endif
 source "package/monit/Config.in"
 source "package/ncdu/Config.in"
 source "package/numactl/Config.in"
package/module-init-tools/Config.in deleted +0 -9
deleted file mode 100644
index 77e3bce..0000000
@@ -1,9 +0,0 @@
-config BR2_PACKAGE_MODULE_INIT_TOOLS
-	bool "module-init-tools"
-	help
-	  The module-init-tools package contains a set of programs for
-	  loading, inserting, and removing kernel modules for Linux
-	  (versions 2.5.48 and above). It serves the same function that
-	  the "modutils" package serves for Linux 2.4.
-
-	  http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/
package/module-init-tools/module-init-tools-3.15-add-manpages-config-option.patch deleted +0 -47

47 lines not on this page · raw message

package/module-init-tools/module-init-tools.mk deleted +0 -28
deleted file mode 100644
index 88abec4..0000000
@@ -1,28 +0,0 @@
-################################################################################
-#
-# module-init-tools
-#
-################################################################################
-
-MODULE_INIT_TOOLS_VERSION = 3.15
-MODULE_INIT_TOOLS_SOURCE = module-init-tools-$(MODULE_INIT_TOOLS_VERSION).tar.bz2
-MODULE_INIT_TOOLS_SITE = $(BR2_KERNEL_MIRROR)/linux/utils/kernel/module-init-tools/
-MODULE_INIT_TOOLS_LICENSE = GPLv2+
-MODULE_INIT_TOOLS_LICENSE_FILES = COPYING
-
-MODULE_INIT_TOOLS_CONF_ENV = ac_cv_prog_DOCBOOKTOMAN=''
-MODULE_INIT_TOOLS_CONF_OPT = \
-	--disable-static-utils \
-	--disable-builddir \
-	--program-transform-name=''
-
-# module-init-tools-3.15-add-manpages-config-option.patch is modifying
-# configure.ac and Makefile.am
-MODULE_INIT_TOOLS_AUTORECONF = YES
-HOST_MODULE_INIT_TOOLS_AUTORECONF = YES
-HOST_MODULE_INIT_TOOLS_CONF_ENV = ac_cv_prog_DOCBOOKTOMAN=''
-HOST_MODULE_INIT_TOOLS_CONF_OPT = --disable-static-utils
-
-$(eval $(autotools-package))
-$(eval $(host-autotools-package))
-
Signature · 1 line
1.8.1.2
#5 lore raw

PATCH 3/3 module-init-tools: remove package

Quoted 20 lines · Thomas Petazzoni

This commit removes the module-init-tools package and adds the relevant Config.in.legacy entries to ease the migration for users.

---
  Config.in.legacy                                   | 11 +++++
  package/Config.in                                  |  3 --
  package/module-init-tools/Config.in                |  9 -----
  ...nit-tools-3.15-add-manpages-config-option.patch | 47 ----------------------
  package/module-init-tools/module-init-tools.mk     | 28 -------------
  5 files changed, 11 insertions(+), 87 deletions(-)

delete mode 100644 package/module-init-tools/Config.in
delete mode 100644 package/module-init-tools/module-init-tools-3.15-add-manpages-config-option.patch delete mode 100644 package/module-init-tools/module-init-tools.mk

Config.in.legacy +0 -0
index 763f16c..ac6f088 100644

Config.in.legacy comment "build, or run, in unpredictable ways. " · line 53

Quoted 9 lines
Config.in.legacy +6 -0
@@ -45,6 +45,17 @@ comment "build, or run, in unpredictable ways.               "
  endif
 
  ###############################################################################
+comment "Legacy options removed in 2013.11"
+
+config BR2_PACKAGE_MODULE_INIT_TOOLS
+	bool "module-init-tools replaced by kmod"
+	select BR2_PACKAGE_KMOD
+	select BR2_PACKAGE_KMOD_TOOLS

Up to now, we've always selected BR2_LEGACY even if it is just a symbol
rename.

Config.in.legacy comment "build, or run, in unpredictable ways. " · line 56

Quoted 3 lines
Config.in.legacy +3 -0
+	help
+	  The 'module-init-tools' package has been removed, since it
+	  has been depracated upstream and replaced by 'kmod'.

deprecated

Regards,
Arnout

Quoted 4 lines
Config.in.legacy +2 -0
+
+###############################################################################
  comment "Legacy options removed in 2013.08"
 
Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F