# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
-# $Id$
FS_MENU:=Filesystems
$(eval $(call KernelPackage,fs-ext3))
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,2.6.28)),1)
+ EXT4_NAME:=ext4dev
+else
+ EXT4_NAME:=ext4
+endif
+
+define KernelPackage/fs-ext4
+ SUBMENU:=$(FS_MENU)
+ TITLE:=EXT4 filesystem support
+ KCONFIG:= \
+ CONFIG_EXT4DEV_COMPAT=y \
+ CONFIG_EXT4_FS_XATTR=y \
+ CONFIG_EXT4_FS_POSIX_ACL=y \
+ CONFIG_EXT4_FS_SECURITY=y \
+ CONFIG_EXT4_FS \
+ CONFIG_JBD2
+ DEPENDS:= @LINUX_2_6 +kmod-crc16 $(if $(DUMP)$(CONFIG_FS_MBCACHE),+kmod-fs-mbcache)
+ FILES:= \
+ $(LINUX_DIR)/fs/ext4/$(EXT4_NAME).$(LINUX_KMOD_SUFFIX) \
+ $(LINUX_DIR)/fs/jbd2/jbd2.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD:=$(call AutoLoad,30,jbd2 $(EXT4_NAME))
+endef
+
+define KernelPackage/fs-ext4/description
+ Kernel module for EXT4 filesystem support
+endef
+
+$(eval $(call KernelPackage,fs-ext4))
+
+
define KernelPackage/fs-hfs
SUBMENU:=$(FS_MENU)
AUTOLOAD:=$(call AutoLoad,30,sunrpc lockd)
endef
+define KernelPackage/fs-nfs-common/2.6
+ KCONFIG+=CONFIG_SUNRPC_GSS
+ FILES+=$(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD=$(call AutoLoad,30,sunrpc lockd auth_rpcgss)
+endef
+
$(eval $(call KernelPackage,fs-nfs-common))
$(eval $(call KernelPackage,fs-nfs))
+define KernelPackage/fs-exportfs
+ SUBMENU:=$(FS_MENU)
+ TITLE:=exportfs kernel server support
+ KCONFIG:=CONFIG_EXPORTFS
+ FILES=$(LINUX_DIR)/fs/exportfs/exportfs.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD:=$(call AutoLoad,20,exportfs)
+endef
+
+define KernelPackage/fs-exportfs/description
+ Kernel module for exportfs. Needed for some other modules.
+endef
+
+$(eval $(call KernelPackage,fs-exportfs))
+
+
define KernelPackage/fs-nfsd
SUBMENU:=$(FS_MENU)
TITLE:=NFS kernel server support
- DEPENDS:=kmod-fs-nfs-common
+ DEPENDS:=kmod-fs-nfs-common +kmod-fs-exportfs
KCONFIG:=CONFIG_NFSD
FILES:=$(LINUX_DIR)/fs/nfsd/nfsd.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,40,nfsd)
endef
-define KernelPackage/fs-nfsd/2.6
- KCONFIG+=CONFIG_EXPORTFS \
- CONFIG_SUNRPC_GSS
- FILES+=$(LINUX_DIR)/fs/exportfs/exportfs.$(LINUX_KMOD_SUFFIX) \
- $(LINUX_DIR)/net/sunrpc/auth_gss/auth_rpcgss.$(LINUX_KMOD_SUFFIX)
- AUTOLOAD+=$(call AutoLoad,40,auth_rpcgss exportfs nfsd)
-endef
-
define KernelPackage/fs-nfsd/description
Kernel module for NFS kernel server support
endef
$(eval $(call KernelPackage,fs-reiserfs))
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.28)),1)
+ VFAT_DIR:=fat
+endif
+VFAT_DIR?=vfat
define KernelPackage/fs-vfat
SUBMENU:=$(FS_MENU)
CONFIG_VFAT_FS
FILES:= \
$(LINUX_DIR)/fs/fat/fat.$(LINUX_KMOD_SUFFIX) \
- $(LINUX_DIR)/fs/$(if $(CONFIG_LINUX_2_6_28),fat,vfat)/vfat.$(LINUX_KMOD_SUFFIX)
+ $(LINUX_DIR)/fs/$(VFAT_DIR)/vfat.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,30,fat vfat)
$(call KernelPackage/nls/Depends)
endef
SUBMENU:=$(FS_MENU)
TITLE:=XFS filesystem support
KCONFIG:=CONFIG_XFS_FS
+ DEPENDS:= +kmod-fs-exportfs
FILES:=$(LINUX_DIR)/fs/xfs/xfs.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,30,xfs)
endef