diff --git a/boot/grub/Config.in b/boot/grub/Config.in index c3a729f7df..3ae8448161 100644 --- a/boot/grub/Config.in +++ b/boot/grub/Config.in @@ -45,19 +45,47 @@ config BR2_TARGET_GRUB_SPLASH A splashimage is a 14-color indexed .xpm picture which is displayed as background for the grub menu. -config BR2_TARGET_GRUB_FS_SUPPORT - string "Filesystem to support" - default "ext2fs fat" - help - Space separated list of filesystems to support. Possible - values are ext2fs, fat, ffs, ufs2, minix, reiserfs, vstafs, - jfs, xfs and iso9660. - config BR2_TARGET_GRUB_DISKLESS bool "diskless support" help enable diskless support +menu "filesystem drivers" + +config BR2_TARGET_GRUB_FS_EXT2 + bool "ext2" + default y + help + Enable support for the ext2 filesystem in Grub + +config BR2_TARGET_GRUB_FS_FAT + bool "FAT" + default y + help + Enable support for the FAT filesystem in Grub. + +config BR2_TARGET_GRUB_FS_ISO9660 + bool "ISO9660" + help + Enable support for the ISO9660 filesystem in Grub. + +config BR2_TARGET_GRUB_FS_JFS + bool "IBM JFS" + help + Enable support for the JFS filesystem in Grub. + +config BR2_TARGET_GRUB_FS_REISERFS + bool "ReiserFS" + help + Enable support for the ReiserFS filesystem in Grub. + +config BR2_TARGET_GRUB_FS_XFS + bool "SGI XFS" + help + Enable support for the XFS filesystem in Grub. + +endmenu + menu "network drivers" config BR2_TARGET_GRUB_3c595 diff --git a/boot/grub/grub.mk b/boot/grub/grub.mk index eb066af76c..43121ff7a4 100644 --- a/boot/grub/grub.mk +++ b/boot/grub/grub.mk @@ -46,18 +46,20 @@ GRUB_CONFIG-$(BR2_TARGET_GRUB_undi) += --enable-undi GRUB_CONFIG-$(BR2_TARGET_GRUB_via_rhine) += --enable-via-rhine GRUB_CONFIG-$(BR2_TARGET_GRUB_w89c840) += --enable-w89c840 -GRUB_POSSIBLE_FILESYSTEMS = ext2fs fat ffs ufs2 minix \ - reiserfs vstafs jfs xfs iso9660 -GRUB_SELECTED_FILESYSTEMS = $(call qstrip,$(BR2_TARGET_GRUB_FS_SUPPORT)) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_EXT2),--enable-ext2fs,--disable-ext2fs) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_FAT),--enable-fat,--disable-fat) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_ISO9660),--enable-iso9660,--disable-iso9660) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_JFS),--enable-jfs,--disable-jfs) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_REISERFS),--enable-reiserfs,--disable-reiserfs) +GRUB_CONFIG-y += $(if $(BR2_TARGET_GRUB_FS_XFS),--enable-xfs,--disable-xfs) +GRUB_CONFIG-y += --disable-ffs --disable-ufs2 --disable-minix --disable-vstafs -# Calculate the list of stage 1.5 files to install. They are prefixed -# by the filesystem name, except for ext2fs, where the stage 1.5 is -# prefixed by e2fs. -GRUB_STAGE_1_5_TO_INSTALL = $(subst ext2fs,e2fs,$(GRUB_SELECTED_FILESYSTEMS)) - -GRUB_CONFIG-y = \ - $(foreach fs,$(GRUB_POSSIBLE_FILESYSTEMS),\ - $(if $(filter $(fs),$(GRUB_SELECTED_FILESYSTEMS)),--enable-$(fs),--disable-$(fs))) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_EXT2),e2fs) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_FAT),fat) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_ISO9660),iso9660) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_JFS),jfs) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_REISERFS),reiserfs) +GRUB_STAGE_1_5_TO_INSTALL += $(if $(BR2_TARGET_GRUB_FS_XFS),xfs) define GRUB_DEBIAN_PATCHES # Apply the patches from the Debian patch