]>
Commit | Line | Data |
---|---|---|
36e8abee | 1 | #!/bin/sh |
2ee4a18b | 2 | |
36e8abee | 3 | set -ef |
2ee4a18b ED |
4 | |
5 | usage() | |
6 | { | |
7 | echo "usage: $0 <kernel source tree>" >&2 | |
8 | exit 1 | |
9 | } | |
10 | ||
11 | [ "$#" -eq 1 ] || usage | |
36e8abee | 12 | KERNEL_DIR="$1" |
2ee4a18b | 13 | |
2ee4a18b ED |
14 | if ! [ -e 'zfs_config.h' ] |
15 | then | |
36e8abee | 16 | echo "$0: you did not run configure, or you're not in the ZFS source directory." |
17 | echo "$0: run configure with --with-linux=$KERNEL_DIR and --enable-linux-builtin." | |
18 | ||
2ee4a18b | 19 | exit 1 |
36e8abee | 20 | fi >&2 |
2ee4a18b | 21 | |
36e8abee | 22 | make clean ||: |
109d2c93 | 23 | make gitrev |
2ee4a18b ED |
24 | |
25 | rm -rf "$KERNEL_DIR/include/zfs" "$KERNEL_DIR/fs/zfs" | |
36e8abee | 26 | cp -R include "$KERNEL_DIR/include/zfs" |
27 | cp -R module "$KERNEL_DIR/fs/zfs" | |
93ce2b4c | 28 | cp zfs_config.h "$KERNEL_DIR/include/zfs/" |
2ee4a18b | 29 | |
36e8abee | 30 | cat > "$KERNEL_DIR/fs/zfs/Kconfig" <<EOF |
2ee4a18b | 31 | config ZFS |
c90ea655 | 32 | tristate "ZFS filesystem support" |
9a512dca RY |
33 | depends on EFI_PARTITION |
34 | select ZLIB_INFLATE | |
35 | select ZLIB_DEFLATE | |
2ee4a18b | 36 | help |
d0249a4b | 37 | This is the ZFS filesystem from the OpenZFS project. |
2ee4a18b | 38 | |
d0249a4b | 39 | See https://github.com/openzfs/zfs |
2ee4a18b ED |
40 | |
41 | To compile this file system support as a module, choose M here. | |
42 | ||
43 | If unsure, say N. | |
44 | EOF | |
45 | ||
841fd303 AZ |
46 | sed -i '/source "fs\/ext2\/Kconfig\"/i\source "fs/zfs/Kconfig"' "$KERNEL_DIR/fs/Kconfig" |
47 | echo 'obj-$(CONFIG_ZFS) += zfs/' >> "$KERNEL_DIR/fs/Makefile" | |
2ee4a18b | 48 | |
36e8abee | 49 | echo "$0: done. now you can build the kernel with ZFS support." >&2 |
50 | echo "$0: make sure you enable ZFS support (CONFIG_ZFS) before building." >&2 |