@# Install the DKMS source.
@# We only want the files needed to build the modules
install -D -t '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/scripts' \
- '$(CURDIR)/scripts/enum-extract.pl'
+ '$(CURDIR)/scripts/enum-extract.pl' \
+ '$(CURDIR)/scripts/dkms.postbuild'
$(foreach file,$(DKMSFILES),mv '$(CURDIR)/$(NAME)-$(DEB_VERSION_UPSTREAM)/$(file)' '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)' || exit 1;)
@# Hellish awk line:
@# * Deletes from configure.ac the parts not needed for building the kernel module
cd '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)'; ./autogen.sh
rm -fr '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/autom4te.cache'
- @# This shunt allows DKMS to install the Module.symvers and zfs_config.h
- @# files to the ${dkms_tree} area through the POST_INSTALL directive.
- printf '#!/bin/sh\ncp "$$@"\n' > '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/cp'
- chmod 755 '$(CURDIR)/debian/tmp/usr/src/$(NAME)-$(DEB_VERSION_UPSTREAM)/cp'
-
mkdir -p $(CURDIR)/debian/tmp/usr/lib
for i in `ls $(CURDIR)/debian/tmp/lib/*.so`; do \
ln -s /lib/`readlink $${i}` $(CURDIR)/debian/tmp/usr/lib/`basename $${i}`; \
chmod a-x '$(CURDIR)/debian/tmp/usr/share/bash-completion/completions/zfs'
override_dh_dkms:
- dh_dkms -V $(DEB_VERSION_UPSTREAM)
+ '$(CURDIR)/scripts/dkms.mkconf' -n $(NAME) -v $(DEB_VERSION_UPSTREAM) -f '$(CURDIR)/scripts/zfs-dkms.dkms'
+ dh_dkms
+ rm -f '$(CURDIR)/scripts/zfs-dkms.dkms'
override_dh_makeshlibs:
dh_makeshlibs -a -V
-BUILD_DEPENDS[0]="spl"
-AUTOINSTALL="yes"
-PACKAGE_NAME="zfs"
-PACKAGE_VERSION="#MODULE_VERSION#"
-PRE_BUILD="configure
- --prefix=/usr
- --with-config=kernel
- --with-linux=$(
- case `lsb_release -is` in
- (Debian|Devuan)
- if [[ -e ${kernel_source_dir/%build/source} ]]
- then
- echo ${kernel_source_dir/%build/source}
- else
- # A kpkg exception for Proxmox 2.0
- echo ${kernel_source_dir}
- fi
- ;;
- (*)
- echo ${kernel_source_dir}
- ;;
- esac
- )
- --with-linux-obj=${kernel_source_dir}
- --with-spl=${source_tree}/spl-${PACKAGE_VERSION}
- --with-spl-obj=${dkms_tree}/spl/${PACKAGE_VERSION}/${kernelver}/${arch}
- $(
- [[ -r /etc/default/zfs ]] \
- && source /etc/default/zfs \
- && shopt -q -s extglob \
- && \
- {
- if [[ ${ZFS_DKMS_ENABLE_DEBUG,,} == @(y|yes) ]]
- then
- echo --enable-debug
- fi
- if [[ ${ZFS_DKMS_ENABLE_DEBUG_DMU_TX,,} == @(y|yes) ]]
- then
- echo --enable-debug-dmu-tx
- fi
- }
- )
- --with-spl-timeout=600
-"
-POST_BUILD="cp
- ${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build/zfs_config.h
- ${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build/module/Module.symvers
- ${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/${kernelver}/${arch}/
-"
-REMAKE_INITRD="$(
- if [ -e /usr/share/initramfs-tools/hooks/zfs \
- -o -e /usr/share/dracut/modules.d/90zfs ]
- then
- echo -n yes
- else
- echo -n no
- fi
-)"
-MAKE[0]="make"
-STRIP[0]="$(
- [[ -r /etc/default/zfs ]] \
- && source /etc/default/zfs \
- && shopt -q -s extglob \
- && [[ ${ZFS_DKMS_DISABLE_STRIP,,} == @(y|yes) ]] \
- && echo -n no
-)"
-STRIP[1]="${STRIP[0]}"
-STRIP[2]="${STRIP[0]}"
-STRIP[3]="${STRIP[0]}"
-STRIP[4]="${STRIP[0]}"
-STRIP[5]="${STRIP[0]}"
-STRIP[6]="${STRIP[0]}"
-BUILT_MODULE_NAME[0]="zavl"
-BUILT_MODULE_LOCATION[0]="module/avl/"
-DEST_MODULE_LOCATION[0]="/extra/zfs/zavl"
-BUILT_MODULE_NAME[1]="zcommon"
-BUILT_MODULE_LOCATION[1]="module/zcommon/"
-DEST_MODULE_LOCATION[1]="/extra/zfs/zcommon"
-BUILT_MODULE_NAME[2]="znvpair"
-BUILT_MODULE_LOCATION[2]="module/nvpair/"
-DEST_MODULE_LOCATION[2]="/extra/zfs/znvpair"
-BUILT_MODULE_NAME[3]="zpios"
-BUILT_MODULE_LOCATION[3]="module/zpios/"
-DEST_MODULE_LOCATION[3]="/extra/zfs/zpios"
-BUILT_MODULE_NAME[4]="zunicode"
-BUILT_MODULE_LOCATION[4]="module/unicode/"
-DEST_MODULE_LOCATION[4]="/extra/zfs/zunicode"
-BUILT_MODULE_NAME[5]="zfs"
-BUILT_MODULE_LOCATION[5]="module/zfs/"
-DEST_MODULE_LOCATION[5]="/extra/zfs/zfs"
-BUILT_MODULE_NAME[6]="icp"
-BUILT_MODULE_LOCATION[6]="module/icp/"
-DEST_MODULE_LOCATION[6]="/extra/zfs/icp"
+scripts/zfs-dkms.dkms