]> git.proxmox.com Git - mirror_zfs.git/blob - scripts/dkms.mkconf
Support Debian DKMS builds
[mirror_zfs.git] / scripts / dkms.mkconf
1 #!/bin/sh
2
3 PROG=$0
4
5 pkgcfg=/etc/sysconfig/zfs
6
7 while getopts "n:v:c:f:" opt; do
8 case $opt in
9 n) pkgname=$OPTARG ;;
10 v) pkgver=$OPTARG ;;
11 c) pkgcfg=$OPTARG ;;
12 f) filename=$OPTARG ;;
13 esac
14 done
15
16 if [ -z "${pkgname}" -o -z "${pkgver}" -o -z "${filename}" ]; then
17 echo "Usage: $PROG -n <pkgname> -v <pkgver> -c <pkgcfg> -f <filename>"
18 exit 1
19 fi
20
21 cat >${filename} <<EOF
22 PACKAGE_NAME="${pkgname}"
23 PACKAGE_VERSION="${pkgver}"
24 PACKAGE_CONFIG="${pkgcfg}"
25 PRE_BUILD="configure
26 --prefix=/usr
27 --with-config=kernel
28 --with-linux=\$(
29 case \`lsb_release -is\` in
30 (Debian|Devuan)
31 if [[ -e \${kernel_source_dir/%build/source} ]]
32 then
33 echo \${kernel_source_dir/%build/source}
34 else
35 # A kpkg exception for Proxmox 2.0
36 echo \${kernel_source_dir}
37 fi
38 ;;
39 (*)
40 echo \${kernel_source_dir}
41 ;;
42 esac
43 )
44 --with-linux-obj=\${kernel_source_dir}
45 --with-spl=\${source_tree}/spl-\${PACKAGE_VERSION}
46 --with-spl-obj=\${dkms_tree}/spl/\${PACKAGE_VERSION}/\${kernelver}/\${arch}
47 --with-spl-timeout=300
48 \$(
49 [[ -n \"\${ICP_ROOT}\" ]] && \\
50 {
51 echo --with-qat=\"\${ICP_ROOT}\"
52 }
53 )
54 \$(
55 [[ -r \${PACKAGE_CONFIG} ]] \\
56 && source \${PACKAGE_CONFIG} \\
57 && shopt -q -s extglob \\
58 && \\
59 {
60 if [[ \${ZFS_DKMS_ENABLE_DEBUG,,} == @(y|yes) ]]
61 then
62 echo --enable-debug
63 fi
64 }
65 )
66 "
67 POST_BUILD="scripts/dkms.postbuild
68 -n \${PACKAGE_NAME}
69 -v \${PACKAGE_VERSION}
70 -a \${arch}
71 -k \${kernelver}
72 -t \${dkms_tree}
73 "
74 BUILD_DEPENDS[0]="spl"
75 AUTOINSTALL="yes"
76 REMAKE_INITRD="no"
77 MAKE[0]="make"
78 STRIP[0]="\$(
79 [[ -r \${PACKAGE_CONFIG} ]] \\
80 && source \${PACKAGE_CONFIG} \\
81 && shopt -q -s extglob \\
82 && [[ \${ZFS_DKMS_DISABLE_STRIP,,} == @(y|yes) ]] \\
83 && echo -n no
84 )"
85 STRIP[1]="\${STRIP[0]}"
86 STRIP[2]="\${STRIP[0]}"
87 STRIP[3]="\${STRIP[0]}"
88 STRIP[4]="\${STRIP[0]}"
89 STRIP[5]="\${STRIP[0]}"
90 STRIP[6]="\${STRIP[0]}"
91 BUILT_MODULE_NAME[0]="zavl"
92 BUILT_MODULE_LOCATION[0]="module/avl/"
93 DEST_MODULE_LOCATION[0]="/extra/avl/avl"
94 BUILT_MODULE_NAME[1]="znvpair"
95 BUILT_MODULE_LOCATION[1]="module/nvpair/"
96 DEST_MODULE_LOCATION[1]="/extra/nvpair/znvpair"
97 BUILT_MODULE_NAME[2]="zunicode"
98 BUILT_MODULE_LOCATION[2]="module/unicode/"
99 DEST_MODULE_LOCATION[2]="/extra/unicode/zunicode"
100 BUILT_MODULE_NAME[3]="zcommon"
101 BUILT_MODULE_LOCATION[3]="module/zcommon/"
102 DEST_MODULE_LOCATION[3]="/extra/zcommon/zcommon"
103 BUILT_MODULE_NAME[4]="zfs"
104 BUILT_MODULE_LOCATION[4]="module/zfs/"
105 DEST_MODULE_LOCATION[4]="/extra/zfs/zfs"
106 BUILT_MODULE_NAME[5]="icp"
107 BUILT_MODULE_LOCATION[5]="module/icp/"
108 DEST_MODULE_LOCATION[5]="/extra/icp/icp"
109 BUILT_MODULE_NAME[6]="zlua"
110 BUILT_MODULE_LOCATION[6]="module/lua/"
111 DEST_MODULE_LOCATION[6]="/extra/lua/zlua"
112 EOF