116038816SMartin Matuska#!/bin/sh 2eda14cbcSMatt Macy 316038816SMartin Matuskaset -ef 4eda14cbcSMatt Macy 5eda14cbcSMatt Macyusage() 6eda14cbcSMatt Macy{ 7eda14cbcSMatt Macy echo "usage: $0 <kernel source tree>" >&2 8eda14cbcSMatt Macy exit 1 9eda14cbcSMatt Macy} 10eda14cbcSMatt Macy 11eda14cbcSMatt Macy[ "$#" -eq 1 ] || usage 1216038816SMartin MatuskaKERNEL_DIR="$1" 13eda14cbcSMatt Macy 14eda14cbcSMatt Macyif ! [ -e 'zfs_config.h' ] 15eda14cbcSMatt Macythen 1616038816SMartin Matuska echo "$0: you did not run configure, or you're not in the ZFS source directory." 1716038816SMartin Matuska echo "$0: run configure with --with-linux=$KERNEL_DIR and --enable-linux-builtin." 18eda14cbcSMatt Macy 1916038816SMartin Matuska exit 1 2016038816SMartin Matuskafi >&2 2116038816SMartin Matuska 2216038816SMartin Matuskamake clean ||: 23eda14cbcSMatt Macymake gitrev 24eda14cbcSMatt Macy 25eda14cbcSMatt Macyrm -rf "$KERNEL_DIR/include/zfs" "$KERNEL_DIR/fs/zfs" 2616038816SMartin Matuskacp -R include "$KERNEL_DIR/include/zfs" 2716038816SMartin Matuskacp -R module "$KERNEL_DIR/fs/zfs" 28eda14cbcSMatt Macycp zfs_config.h "$KERNEL_DIR/include/zfs/" 29eda14cbcSMatt Macy 3016038816SMartin Matuskacat > "$KERNEL_DIR/fs/zfs/Kconfig" <<EOF 31eda14cbcSMatt Macyconfig ZFS 32eda14cbcSMatt Macy tristate "ZFS filesystem support" 33eda14cbcSMatt Macy depends on EFI_PARTITION 34eda14cbcSMatt Macy select ZLIB_INFLATE 35eda14cbcSMatt Macy select ZLIB_DEFLATE 36eda14cbcSMatt Macy help 37180f8225SMatt Macy This is the ZFS filesystem from the OpenZFS project. 38eda14cbcSMatt Macy 39180f8225SMatt Macy See https://github.com/openzfs/zfs 40eda14cbcSMatt Macy 41eda14cbcSMatt Macy To compile this file system support as a module, choose M here. 42eda14cbcSMatt Macy 43eda14cbcSMatt Macy If unsure, say N. 44eda14cbcSMatt MacyEOF 45eda14cbcSMatt Macy 46*716fd348SMartin Matuskased -i '/source "fs\/ext2\/Kconfig\"/i\source "fs/zfs/Kconfig"' "$KERNEL_DIR/fs/Kconfig" 47*716fd348SMartin Matuskaecho 'obj-$(CONFIG_ZFS) += zfs/' >> "$KERNEL_DIR/fs/Makefile" 48eda14cbcSMatt Macy 4916038816SMartin Matuskaecho "$0: done. now you can build the kernel with ZFS support." >&2 50eda14cbcSMatt Macyecho "$0: make sure you enable ZFS support (CONFIG_ZFS) before building." >&2 51