X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=module%2FMakefile.in;h=4c6d381681494a41378ebd6782a2e0401d87e1d2;hb=802e7b5feb0135483de119eac1da192404eb5bb7;hp=78e48147ae8525b865e01909cd8bb0bac0294737;hpb=6283f55ea1b91e680386388c17d14b89e344fa8d;p=zfs.git diff --git a/module/Makefile.in b/module/Makefile.in index 78e4814..4c6d381 100644 --- a/module/Makefile.in +++ b/module/Makefile.in @@ -5,6 +5,13 @@ subdir-m += zcommon subdir-m += zfs subdir-m += zpios +INSTALL_MOD_DIR ?= extra + +ZFS_MODULE_CFLAGS += -include @SPL_OBJ@/spl_config.h +ZFS_MODULE_CFLAGS += -include @abs_top_builddir@/zfs_config.h +ZFS_MODULE_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +export ZFS_MODULE_CFLAGS + modules: @# Make the exported SPL symbols available to these modules. @# They may be in the root of SPL_OBJ when building against @@ -21,28 +28,38 @@ modules: "*** - @SPL_OBJ@/module/@SPL_SYMBOLS@\n"; \ exit 1; \ fi - $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ $@ + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ CONFIG_ZFS=m $@ clean: - $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ $@ + @# Only cleanup the kernel build directories when CONFIG_KERNEL + @# is defined. This indicates that kernel modules should be built. +@CONFIG_KERNEL_TRUE@ $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ $@ + if [ -f @SPL_SYMBOLS@ ]; then $(RM) @SPL_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/zfs $@ - find $(DESTDIR)/lib/modules/ -name 'modules.*' | xargs $(RM) - sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \ + $(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 + kmoddir=$(DESTDIR)$(INSTALL_MOD_PATH)/lib/modules/@LINUX_VERSION@; \ + if [ -n $$kmoddir ]; then \ + find $$kmoddir -name 'modules.*' | xargs $(RM); \ + fi + 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/zfs + 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: