From: Brian Behlendorf Date: Tue, 12 Feb 2013 23:56:02 +0000 (-0800) Subject: Add KMODDIR to install target X-Git-Tag: spl-0.6.1~10^2~3 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0298f3d67ff4971513ff848d640ca431a983de43;p=spl Add KMODDIR to install target Provide a mechanism to control the directory name the modules are installed in. The kernel privdes INSTALL_MOD_DIR for this but it was hardcoded to be 'addon/spl'. Add a KMODDIR variable which can be passed to 'make install' to override the default directory name. While we're here change the default from 'addon/spl' to 'extra' which is the kernel.org default. Signed-off-by: Brian Behlendorf --- diff --git a/module/Makefile.in b/module/Makefile.in index d291951..49bdaa8 100644 --- a/module/Makefile.in +++ b/module/Makefile.in @@ -1,7 +1,7 @@ subdir-m += spl subdir-m += splat -INSTALL=/usr/bin/install +INSTALL_MOD_DIR ?= extra SPL_MODULE_CFLAGS = -I@abs_top_srcdir@/include SPL_MODULE_CFLAGS += -include @abs_top_builddir@/spl_config.h @@ -15,27 +15,30 @@ clean: @# is defined. This indicates that kernel modules should be built. @CONFIG_KERNEL_TRUE@ $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ $@ - if [ -f '@LINUX_SYMBOLS@' ]; then $(RM) '@LINUX_SYMBOLS@'; fi + if [ -f @LINUX_SYMBOLS@ ]; then $(RM) @LINUX_SYMBOLS@; fi if [ -f Module.markers ]; then $(RM) Module.markers; fi modules_install: @# Install the kernel modules - $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \ - INSTALL_MOD_PATH=$(DESTDIR) \ - INSTALL_MOD_DIR=addon/spl $@ + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` $@ \ + INSTALL_MOD_PATH=$(DESTDIR)$(INSTALL_MOD_PATH) \ + INSTALL_MOD_DIR=$(INSTALL_MOD_DIR) @# Remove extraneous build products when packaging - if [ -n "$(DESTDIR)" ]; then \ - find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \ - -name 'modules.*' | xargs $(RM); \ + kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \ + if [ -n $$kmoddir ]; then \ + find $$kmoddir -name 'modules.*' | xargs $(RM); \ fi - sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \ + sysmap=$(DESTDIR)$(INSTALL_MOD_PATH)/boot/System.map-@LINUX_VERSION@; \ if [ -f $$sysmap ]; then \ depmod -ae -F $$sysmap @LINUX_VERSION@; \ fi modules_uninstall: @# Uninstall the kernel modules - $(RM) -R $(DESTDIR)/lib/modules/@LINUX_VERSION@/addon/spl + kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@ + list='$(subdir-m)'; for subdir in $$list; do \ + $(RM) -R $$kmoddir/$(INSTALL_MOD_DIR)/$$subdir; \ + done distdir: list='$(subdir-m)'; for subdir in $$list; do \