forked from mirrors/nixpkgs
- zfs 0.6.0-rc11, spl 0.6.0-rc11
This commit is contained in:
parent
ccad09d3b9
commit
e7f3ff803e
|
@ -34,6 +34,12 @@
|
|||
url = https://fedoraproject.org/wiki/Licensing/BSD;
|
||||
};
|
||||
|
||||
cddl = {
|
||||
shortName = "CDDL";
|
||||
fullName = "Common Development Distribution License ";
|
||||
url = http://www.opensolaris.org/os/licensing/cddllicense.txt;
|
||||
};
|
||||
|
||||
cpl10 = {
|
||||
shortName = "CPL 1.0";
|
||||
fullName = "Common Public License version 1.0";
|
||||
|
|
39
pkgs/os-specific/linux/spl/default.nix
Normal file
39
pkgs/os-specific/linux/spl/default.nix
Normal file
|
@ -0,0 +1,39 @@
|
|||
{ stdenv, fetchurl, kernel, perl, autoconf, automake, libtool, coreutils, gawk }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "spl-0.6.0-rc11";
|
||||
src = fetchurl {
|
||||
url = http://github.com/downloads/zfsonlinux/spl/spl-0.6.0-rc11.tar.gz;
|
||||
sha256 = "0brsrr9hvzlpx7a26nn8rw9k2kh9s75hmxp6h087hi64hzxysf8g";
|
||||
};
|
||||
|
||||
patches = [ ./install_prefix.patch ./install_prefix_2.patch ./module_prefix.patch ];
|
||||
|
||||
buildInputs = [ perl kernel autoconf automake libtool ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated";
|
||||
|
||||
preConfigure = ''
|
||||
./autogen.sh
|
||||
|
||||
substituteInPlace ./module/spl/spl-generic.c --replace /usr/bin/hostid hostid
|
||||
substituteInPlace ./module/spl/spl-module.c --replace /bin/mknod mknod
|
||||
|
||||
substituteInPlace ./module/spl/spl-generic.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:${gawk}:/bin"
|
||||
substituteInPlace ./module/spl/spl-module.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
|
||||
substituteInPlace ./module/splat/splat-vnode.c --replace "PATH=/sbin:/usr/sbin:/bin:/usr/bin" "PATH=${coreutils}:/bin"
|
||||
'';
|
||||
|
||||
configureFlags = ''
|
||||
--with-linux=${kernel}/lib/modules/${kernel.version}/build
|
||||
--with-linux-obj=${kernel}/lib/modules/${kernel.version}/build
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
|
||||
homepage = http://zfsonlinux.org/;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.cddl;
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
};
|
||||
}
|
19
pkgs/os-specific/linux/spl/install_prefix.patch
Normal file
19
pkgs/os-specific/linux/spl/install_prefix.patch
Normal file
|
@ -0,0 +1,19 @@
|
|||
*** spl-0.6.0-rc10/Makefile.am.old Fri Aug 17 14:49:16 2012
|
||||
--- spl-0.6.0-rc10/Makefile.am Fri Aug 17 14:51:06 2012
|
||||
***************
|
||||
*** 32,38 ****
|
||||
if CONFIG_KERNEL
|
||||
install-data-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
|
||||
for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
|
||||
$(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
done
|
||||
--- 32,38 ----
|
||||
if CONFIG_KERNEL
|
||||
install-data-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
|
||||
for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
|
||||
$(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
done
|
32
pkgs/os-specific/linux/spl/install_prefix_2.patch
Normal file
32
pkgs/os-specific/linux/spl/install_prefix_2.patch
Normal file
|
@ -0,0 +1,32 @@
|
|||
*** git-export/include/Makefile.am Tue Mar 6 00:05:28 2012
|
||||
--- git-export/include/Makefile.am.new Tue Mar 6 00:04:46 2012
|
||||
***************
|
||||
*** 16,22 ****
|
||||
|
||||
install-data-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
|
||||
instfiles=`find . -name '*.h'`; \
|
||||
for instfile in $$instfiles; do \
|
||||
$(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
--- 16,22 ----
|
||||
|
||||
install-data-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
|
||||
instfiles=`find . -name '*.h'`; \
|
||||
for instfile in $$instfiles; do \
|
||||
$(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
***************
|
||||
*** 24,28 ****
|
||||
|
||||
uninstall-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
|
||||
$(RM) -R $$instdest
|
||||
--- 24,28 ----
|
||||
|
||||
uninstall-local:
|
||||
release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
|
||||
! instdest=$(DESTDIR)/@libexecdir@/spl/$(LINUX_VERSION); \
|
||||
$(RM) -R $$instdest
|
33
pkgs/os-specific/linux/spl/module_prefix.patch
Normal file
33
pkgs/os-specific/linux/spl/module_prefix.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
*** git-export/module/Makefile.in Wed Dec 31 16:00:01 1969
|
||||
--- git-export/module/Makefile.in.new Sat Jan 28 21:42:06 2012
|
||||
***************
|
||||
*** 17,30 ****
|
||||
modules_install:
|
||||
@# Install the kernel modules
|
||||
$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
|
||||
! INSTALL_MOD_PATH=$(DESTDIR) \
|
||||
INSTALL_MOD_DIR=addon/spl $@
|
||||
@# Remove extraneous build products when packaging
|
||||
! if [ -n "$(DESTDIR)" ]; then \
|
||||
! find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \
|
||||
-name 'modules.*' | xargs $(RM); \
|
||||
fi
|
||||
! sysmap=$(DESTDIR)/boot/System.map-@LINUX_VERSION@; \
|
||||
if [ -f $$sysmap ]; then \
|
||||
depmod -ae -F $$sysmap @LINUX_VERSION@; \
|
||||
fi
|
||||
--- 17,30 ----
|
||||
modules_install:
|
||||
@# Install the kernel modules
|
||||
$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
|
||||
! INSTALL_MOD_PATH=@prefix@ \
|
||||
INSTALL_MOD_DIR=addon/spl $@
|
||||
@# Remove extraneous build products when packaging
|
||||
! if [ -n "@prefix@" ]; then \
|
||||
! find @prefix@/lib/modules/@LINUX_VERSION@ \
|
||||
-name 'modules.*' | xargs $(RM); \
|
||||
fi
|
||||
! sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \
|
||||
if [ -f $$sysmap ]; then \
|
||||
depmod -ae -F $$sysmap @LINUX_VERSION@; \
|
||||
fi
|
24
pkgs/os-specific/linux/spl/spl-0.6.0.nix
Normal file
24
pkgs/os-specific/linux/spl/spl-0.6.0.nix
Normal file
|
@ -0,0 +1,24 @@
|
|||
{ stdenv, fetchgit, kernel, linuxHeaders, perl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "spl-0.6.0-rc4";
|
||||
src = fetchgit {
|
||||
url = git://github.com/behlendorf/spl.git;
|
||||
rev = "dde6b7b137f56894a457";
|
||||
sha256 = "c402517a647de0c22a69588219aa214f96d1cf9d2f8751b99c5a2795898c726b";
|
||||
};
|
||||
|
||||
patches = [ ./install_prefix.patch ./module_prefix.patch ];
|
||||
|
||||
buildInputs = [ perl kernel linuxHeaders ];
|
||||
|
||||
configureFlags = [ "--with-linux=${kernel}/lib/modules/${kernel.version}/build"
|
||||
"--with-linux-obj=${kernel}/lib/modules/${kernel.version}/build" ];
|
||||
|
||||
meta = {
|
||||
description = "Kernel module driver for solaris porting layer (needed by in-kernel zfs)";
|
||||
homepage = http://zfsonlinux.org/;
|
||||
license = "CDDL";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
34
pkgs/os-specific/linux/zfs/default.nix
Normal file
34
pkgs/os-specific/linux/zfs/default.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{ stdenv, fetchurl, kernel, spl, perl, zlib, libuuid, coreutils, utillinux }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "zfs-0.6.0-rc11";
|
||||
src = fetchurl {
|
||||
url = http://github.com/downloads/zfsonlinux/zfs/zfs-0.6.0-rc11.tar.gz;
|
||||
sha256 = "0wx0srn2k31j9xdk3nvk7l847r0diyb7ph6hd006ax9l5p9zj0a7";
|
||||
};
|
||||
|
||||
patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ./no_absolute_paths_to_coreutils.patch ];
|
||||
|
||||
buildInputs = [ kernel spl perl zlib libuuid coreutils ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${kernel}/lib/modules/${kernel.modDirVersion}/build/include/generated";
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace ./module/zfs/zfs_ctldir.c --replace "umount -t zfs" "${utillinux}/bin/umount -t zfs"
|
||||
substituteInPlace ./module/zfs/zfs_ctldir.c --replace "mount -t zfs" "${utillinux}/bin/mount -t zfs"
|
||||
'';
|
||||
|
||||
configureFlags = ''
|
||||
--with-linux=${kernel}/lib/modules/${kernel.version}/build
|
||||
--with-linux-obj=${kernel}/lib/modules/${kernel.version}/build
|
||||
--with-spl=${spl}/libexec/spl/${kernel.version}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Native ZFS for Linux";
|
||||
homepage = http://zfsonlinux.org/;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = stdenv.lib.licenses.cddl;
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
};
|
||||
}
|
140
pkgs/os-specific/linux/zfs/kerneldir_path.patch
Normal file
140
pkgs/os-specific/linux/zfs/kerneldir_path.patch
Normal file
|
@ -0,0 +1,140 @@
|
|||
diff -rc zfs-0.6.0-rc10.old/Makefile.in zfs-0.6.0-rc10/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/Makefile.in Tue Aug 14 12:35:34 2012
|
||||
--- zfs-0.6.0-rc10/Makefile.in Fri Aug 17 15:21:18 2012
|
||||
***************
|
||||
*** 1121,1127 ****
|
||||
|
||||
@CONFIG_KERNEL_TRUE@install-data-local:
|
||||
@CONFIG_KERNEL_TRUE@ release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \
|
||||
! @CONFIG_KERNEL_TRUE@ instdest=$(DESTDIR)/usr/src/zfs-$$release/$(LINUX_VERSION); \
|
||||
@CONFIG_KERNEL_TRUE@ for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
|
||||
@CONFIG_KERNEL_TRUE@ $(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
@CONFIG_KERNEL_TRUE@ done
|
||||
--- 1121,1127 ----
|
||||
|
||||
@CONFIG_KERNEL_TRUE@install-data-local:
|
||||
@CONFIG_KERNEL_TRUE@ release=$(ZFS_META_VERSION)-$(ZFS_META_RELEASE); \
|
||||
! @CONFIG_KERNEL_TRUE@ instdest=$(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION); \
|
||||
@CONFIG_KERNEL_TRUE@ for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
|
||||
@CONFIG_KERNEL_TRUE@ $(INSTALL) -D $$instfile $$instdest/$$instfile; \
|
||||
@CONFIG_KERNEL_TRUE@ done
|
||||
diff -rc zfs-0.6.0-rc10.old/include/Makefile.in zfs-0.6.0-rc10/include/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/Makefile.in Fri Aug 17 15:20:50 2012
|
||||
***************
|
||||
*** 402,408 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
--- 402,408 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
diff -rc zfs-0.6.0-rc10.old/include/linux/Makefile.in zfs-0.6.0-rc10/include/linux/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/linux/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/linux/Makefile.in Fri Aug 17 15:20:53 2012
|
||||
***************
|
||||
*** 337,343 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/linux
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
||||
--- 337,343 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/linux
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/linux
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
||||
diff -rc zfs-0.6.0-rc10.old/include/sys/Makefile.in zfs-0.6.0-rc10/include/sys/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/sys/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/sys/Makefile.in Fri Aug 17 15:20:57 2012
|
||||
***************
|
||||
*** 590,596 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
--- 590,596 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
diff -rc zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in zfs-0.6.0-rc10/include/sys/fm/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/sys/fm/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/sys/fm/Makefile.in Fri Aug 17 15:21:00 2012
|
||||
***************
|
||||
*** 374,380 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
--- 374,380 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-recursive
|
||||
|
||||
diff -rc zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/sys/fm/fs/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/sys/fm/fs/Makefile.in Fri Aug 17 15:21:03 2012
|
||||
***************
|
||||
*** 332,338 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fm/fs
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
||||
--- 332,338 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fm/fs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fm/fs
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
||||
diff -rc zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in zfs-0.6.0-rc10/include/sys/fs/Makefile.in
|
||||
*** zfs-0.6.0-rc10.old/include/sys/fs/Makefile.in Tue Aug 14 12:35:32 2012
|
||||
--- zfs-0.6.0-rc10/include/sys/fs/Makefile.in Fri Aug 17 15:21:06 2012
|
||||
***************
|
||||
*** 332,338 ****
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = /usr/src/zfs-$(ZFS_META_VERSION)-$(ZFS_META_RELEASE)/$(LINUX_VERSION)/sys/fs
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
||||
--- 332,338 ----
|
||||
EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
|
||||
@CONFIG_USER_TRUE@libzfsdir = $(includedir)/libzfs/sys/fs
|
||||
@CONFIG_USER_TRUE@libzfs_HEADERS = $(COMMON_H) $(USER_H)
|
||||
! @CONFIG_KERNEL_TRUE@kerneldir = $(DESTDIR)/@libexecdir@/zfs/$(LINUX_VERSION)/sys/fs
|
||||
@CONFIG_KERNEL_TRUE@kernel_HEADERS = $(COMMON_H) $(KERNEL_H)
|
||||
all: all-am
|
||||
|
70
pkgs/os-specific/linux/zfs/module_perm_prefix.patch
Normal file
70
pkgs/os-specific/linux/zfs/module_perm_prefix.patch
Normal file
|
@ -0,0 +1,70 @@
|
|||
*** git-export/module/Makefile.in.orig Wed Dec 31 16:00:01 1969
|
||||
--- git-export/module/Makefile.in Tue Mar 6 00:23:07 2012
|
||||
***************
|
||||
*** 11,19 ****
|
||||
@# installed devel headers, or they may be in the module
|
||||
@# subdirectory when building against the spl source tree.
|
||||
@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp @SPL_OBJ@/@SPL_SYMBOLS@ .; \
|
||||
elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
|
||||
else \
|
||||
echo -e "\n" \
|
||||
"*** Missing spl symbols ensure you have built the spl:\n" \
|
||||
--- 11,21 ----
|
||||
@# installed devel headers, or they may be in the module
|
||||
@# subdirectory when building against the spl source tree.
|
||||
@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
|
||||
! chmod +w @SPL_SYMBOLS@ .; \
|
||||
elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
|
||||
! chmod +w @SPL_SYMBOLS@ .; \
|
||||
else \
|
||||
echo -e "\n" \
|
||||
"*** Missing spl symbols ensure you have built the spl:\n" \
|
||||
***************
|
||||
*** 35,55 ****
|
||||
modules_install:
|
||||
@# Install the kernel modules
|
||||
$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
|
||||
! INSTALL_MOD_PATH=$(DESTDIR) \
|
||||
INSTALL_MOD_DIR=addon/zfs $@
|
||||
@# Remove extraneous build products when packaging
|
||||
! if [ -n "$(DESTDIR)" ]; then \
|
||||
! find $(DESTDIR)/lib/modules/@LINUX_VERSION@ \
|
||||
-name 'modules.*' | xargs $(RM); \
|
||||
fi
|
||||
! sysmap=$(DESTDIR)/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
|
||||
|
||||
distdir:
|
||||
|
||||
--- 37,57 ----
|
||||
modules_install:
|
||||
@# Install the kernel modules
|
||||
$(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` \
|
||||
! INSTALL_MOD_PATH=@prefix@ \
|
||||
INSTALL_MOD_DIR=addon/zfs $@
|
||||
@# Remove extraneous build products when packaging
|
||||
! if [ -n "@prefix@" ]; then \
|
||||
! find @prefix@/lib/modules/@LINUX_VERSION@ \
|
||||
-name 'modules.*' | xargs $(RM); \
|
||||
fi
|
||||
! sysmap=@prefix@/boot/System.map-@LINUX_VERSION@; \
|
||||
if [ -f $$sysmap ]; then \
|
||||
depmod -ae -F $$sysmap @LINUX_VERSION@; \
|
||||
fi
|
||||
|
||||
modules_uninstall:
|
||||
@# Uninstall the kernel modules
|
||||
! $(RM) -R @prefix@/lib/modules/@LINUX_VERSION@/addon/zfs
|
||||
|
||||
distdir:
|
||||
|
24
pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch
Normal file
24
pkgs/os-specific/linux/zfs/mount_zfs_prefix.patch
Normal file
|
@ -0,0 +1,24 @@
|
|||
*** zfs-0.6.0-rc4.old/cmd/mount_zfs/Makefile.in Thu May 5 15:12:25 2011
|
||||
--- zfs-0.6.0-rc4/cmd/mount_zfs/Makefile.in Fri Jun 3 16:42:41 2011
|
||||
***************
|
||||
*** 285,296 ****
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
!
|
||||
! #
|
||||
! # Ignore the prefix for the mount helper. It must be installed in /sbin/
|
||||
! # because this path is hardcoded in the mount(8) for security reasons.
|
||||
! #
|
||||
! sbindir = /sbin
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
--- 285,291 ----
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
! sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
|
@ -0,0 +1,25 @@
|
|||
*** git-export/module/Makefile.in.old Tue Mar 6 01:04:48 2012
|
||||
--- git-export/module/Makefile.in Tue Mar 6 01:04:59 2012
|
||||
***************
|
||||
*** 11,20 ****
|
||||
@# installed devel headers, or they may be in the module
|
||||
@# subdirectory when building against the spl source tree.
|
||||
@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
|
||||
chmod +w @SPL_SYMBOLS@ .; \
|
||||
elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
|
||||
! /bin/cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
|
||||
chmod +w @SPL_SYMBOLS@ .; \
|
||||
else \
|
||||
echo -e "\n" \
|
||||
--- 11,20 ----
|
||||
@# installed devel headers, or they may be in the module
|
||||
@# subdirectory when building against the spl source tree.
|
||||
@if [ -f @SPL_OBJ@/@SPL_SYMBOLS@ ]; then \
|
||||
! cp -f @SPL_OBJ@/@SPL_SYMBOLS@ .; \
|
||||
chmod +w @SPL_SYMBOLS@ .; \
|
||||
elif [ -f @SPL_OBJ@/module/@SPL_SYMBOLS@ ]; then \
|
||||
! cp -f @SPL_OBJ@/module/@SPL_SYMBOLS@ .; \
|
||||
chmod +w @SPL_SYMBOLS@ .; \
|
||||
else \
|
||||
echo -e "\n" \
|
23
pkgs/os-specific/linux/zfs/zfs-0.6.0.nix
Normal file
23
pkgs/os-specific/linux/zfs/zfs-0.6.0.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{ stdenv, fetchgit, kernel, linuxHeaders, spl, perl, zlib, libuuid }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "zfs-0.6.0-rc4";
|
||||
src = fetchgit {
|
||||
url = git://github.com/behlendorf/zfs.git;
|
||||
rev = "3613204cd7e3ab1ae658";
|
||||
sha256 = "217ca162b1b0178dd2e3acc543d3c0cce3a7be7e884a9118ffa0a84d3cbc73f5";
|
||||
};
|
||||
|
||||
patches = [ ./module_perm_prefix.patch ./mount_zfs_prefix.patch ./kerneldir_path.patch ];
|
||||
|
||||
buildInputs = [ kernel linuxHeaders spl perl zlib libuuid];
|
||||
|
||||
configureFlags = " --with-linux=${kernel}/lib/modules/${kernel.version}/build --with-linux-obj=${kernel}/lib/modules/${kernel.version}/build --with-spl=${spl}/libexec/spl-0.6.0/${kernel.version}";
|
||||
|
||||
meta = {
|
||||
description = "Native ZFS for Linux";
|
||||
homepage = http://zfsonlinux.org/;
|
||||
license = "CDDL";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
|
@ -5964,6 +5964,8 @@ let
|
|||
|
||||
perf = callPackage ../os-specific/linux/kernel/perf.nix { };
|
||||
|
||||
spl = callPackage ../os-specific/linux/spl/default.nix { };
|
||||
|
||||
sysprof = callPackage ../development/tools/profiling/sysprof {
|
||||
inherit (gnome) libglade;
|
||||
};
|
||||
|
@ -5983,6 +5985,8 @@ let
|
|||
};
|
||||
|
||||
virtualboxGuestAdditions = callPackage ../applications/virtualization/virtualbox/guest-additions { };
|
||||
|
||||
zfs = callPackage ../os-specific/linux/zfs/default.nix { };
|
||||
};
|
||||
|
||||
# Build the kernel modules for the some of the kernels.
|
||||
|
|
Loading…
Reference in a new issue