Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Apr 2013 20:40:01 GMT
From:      Juergen Lock <nox@jelal.kn-bremen.de>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/170417: Update port: sysutils/grub2 to 2.00
Message-ID:  <201304082040.r38Ke17Y067344@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/170417; it has been noted by GNATS.

From: Juergen Lock <nox@jelal.kn-bremen.de>
To: bug-followup@freebsd.org
Cc: Norihiko Murase <mur1080224@inter7.jp>, Rick <rick@sloservers.com>,
        Tom Judge <tom@tomjudge.com>,
        Christian Mangin <christian.mangin@gmail.com>, dkeav04@gmail.com,
        Richard Yao <ryao@gentoo.org>, Beeblebrox <zaphod@berentweb.com>,
        "\"Sam Fourman Jr.\"" <sfourman@gmail.com>
Subject: Re: ports/170417: Update port: sysutils/grub2 to 2.00
Date: Mon, 8 Apr 2013 22:34:13 +0200

 --XsQoSWH+UP9D9v3l
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 Turned out my previous update often won't build outside tb due to
 spurious autotools invocations, I hope I have now fixed that; and
 I have added the gentoo zfs flags patch - which has the side effect
 of libzfs now being picked up even w/o the zfs knob or using system
 sources so maybe the zfs knob isn't even needed anymore.
 
  Please give this update a good testing (booting from zfs also w/o
 the zfs knob as well as booting from ufs or otherwise) - the port
 is now unmaintained so if it works properly I guess I can commit
 the update after the ports freeze...
 
  Patch also at:
 
 	http://people.freebsd.org/~nox/tmp/grub-2.00-006-zfs.patch
 
  Note:  A gpt boot partition needs to have the bios-boot(?) uuid
 (_not_ freebsd-boot) to be able to install grub2 into it, e.g.
 
 	# gpart modify -i 1 -t \!21686148-6449-6E6F-744E-656564454649 ada0
 
 and you may need to disable the geom anti-foot-shooting feature too,
 or at least if one of the partitions is mounted:
 
 	# sysctl kern.geom.debugflags=16
 
 --XsQoSWH+UP9D9v3l
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="grub-2.00-006-zfs.patch.txt"
 Content-Transfer-Encoding: quoted-printable
 
 Index: Makefile
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/Makefile,v
 retrieving revision 1.9
 diff -u -p -r1.9 Makefile
 --- Makefile	17 Nov 2012 06:01:33 -0000	1.9
 +++ Makefile	6 Apr 2013 21:44:18 -0000
 @@ -2,39 +2,92 @@
  # $FreeBSD: ports/sysutils/grub2/Makefile,v 1.9 2012/11/17 06:01:33 svnexp=
  Exp $
 =20
  PORTNAME=3D	grub2
 -PORTVERSION=3D	1.98
 -PORTREVISION=3D	1
 +PORTVERSION=3D	2.00
  CATEGORIES=3D	sysutils
 -MASTER_SITES=3D	ftp://alpha.gnu.org/gnu/grub/
 +MASTER_SITES=3D	GNU/grub
  DISTNAME=3D	grub-${PORTVERSION}
 =20
  MAINTAINER=3D	ports@FreeBSD.org
  COMMENT=3D	Multiboot boot loader
 =20
 -CONFLICTS=3D	grub-0*
 +LICENSE=3D	GPLv3
 =20
 -GNU_CONFIGURE=3D		yes
 -USE_GMAKE=3D		yes
 -USES=3D			bison
 -USE_GETTEXT=3D		yes
 -ONLY_FOR_ARCHS=3D		i386 amd64
 +BUILD_DEPENDS=3D	${LOCALBASE}/bin/flex:${PORTSDIR}/textproc/flex \
 +		help2man:${PORTSDIR}/misc/help2man
 =20
 -INFO=3D		grub
 +CONFLICTS=3D	grub-0*
 +USE_XZ=3D		yes
 +USE_GCC=3D	4.6+
 +USE_AUTOTOOLS=3D	automake aclocal autoconf
 +ACLOCAL_ARGS=3D	-Im4
 +GNU_CONFIGURE=3D	yes
 +USE_GMAKE=3D	yes
 +USES=3D		bison
 +USE_GETTEXT=3D	yes
 +ONLY_FOR_ARCHS=3D	i386 amd64
 +INFO=3D		grub grub-dev
 +
 +CONFIGURE_ARGS=3D	--disable-werror --localedir=3D${PREFIX}/share/locale
 +CONFIGURE_ENV=3D	CPP=3D"${CC} -E" \
 +		LEX=3D${LOCALBASE}/bin/flex
 =20
 -OPTIONS_DEFINE=3D	MKFONT
 +OPTIONS_DEFINE=3D	MKFONT FUSE ZFS
  MKFONT_DESC=3D	Build grub-mkfont (require freetype2)
 +FUSE_DESC=3D	Build grub-mount (require FUSE)
 +ZFS_DESC=3D	ZFS support (requires system sources for libzfs.h)
 =20
 -.include <bsd.port.options.mk>
 +MAN1=3D		grub-editenv.1 grub-mklayout.1 grub-mkpasswd-pbkdf2.1 \
 +		grub-fstest.1 grub-script-check.1 grub-kbdcomp.1 \
 +		grub-mkstandalone.1 grub-mkrelpath.1 grub-mkrescue.1 \
 +		grub-menulst2cfg.1 grub-mkimage.1
 +MAN8=3D		grub-reboot.8 grub-set-default.8 grub-probe.8 \
 +		grub-mkconfig.8 grub-bios-setup.8 grub-mknetdir.8 \
 +		grub-install.8 grub-sparc64-setup.8 grub-ofpathname.8
 +
 +.include <bsd.port.pre.mk>
 +
 +.if ${ARCH} !=3D "amd64"
 +EFIEMU=3D		"@comment "
 +.endif
 +
 +PLIST_SUB+=3D	EFIEMU=3D${EFIEMU}
 =20
  .if ${PORT_OPTIONS:MMKFONT}
  LIB_DEPENDS+=3D	freetype.9:${PORTSDIR}/print/freetype2
 +BUILD_DEPENDS+=3D	${LOCALBASE}/lib/X11/fonts/dejavu/DejaVuSans.ttf:${PORTS=
 DIR}/x11-fonts/dejavu
 +MAN1+=3D		grub-mkfont.1
  .else
  MKFONT=3D		"@comment "
  .endif
 =20
  PLIST_SUB+=3D	MKFONT=3D${MKFONT}
 =20
 +.if ${PORT_OPTIONS:MFUSE}
 +LIB_DEPENDS+=3D	fuse:${PORTSDIR}/sysutils/fusefs-libs
 +CONFIGURE_ARGS+=3D	--enable-grub-mount
 +MAN1+=3D		grub-mount.1
 +.else
 +CONFIGURE_ARGS+=3D	--disable-grub-mount
 +FUSE=3D		"@comment "
 +.endif
 +
 +PLIST_SUB+=3D	FUSE=3D${FUSE}
 +
 +.if ${PORT_OPTIONS:MZFS}
 +CPATH=3D	${SRC_BASE}/sys/cddl/compat/opensolaris:${SRC_BASE}/cddl/compat/o=
 pensolaris/include:${SRC_BASE}/cddl/compat/opensolaris/lib/libumem:${SRC_BA=
 SE}/cddl/contrib/opensolaris/lib/libnvpair:${SRC_BASE}/cddl/contrib/opensol=
 aris/lib/libuutil/common:${SRC_BASE}/cddl/contrib/opensolaris/lib/libzfs/co=
 mmon:${SRC_BASE}/cddl/contrib/opensolaris/lib/libzpool/common:${SRC_BASE}/s=
 ys/cddl/contrib/opensolaris/uts/common/fs/zfs:${SRC_BASE}/sys/cddl/contrib/=
 opensolaris/uts/common:${SRC_BASE}/sys/cddl/contrib/opensolaris/uts/common/=
 sys:${SRC_BASE}/sys/cddl/contrib/opensolaris/common/zfs:${SRC_BASE}/cddl/co=
 ntrib/opensolaris/head:${SRC_BASE}/cddl/lib/libumem
 +CFLAGS+=3D	-DB_FALSE=3D0 -DB_TRUE=3D1
 +CONFIGURE_ENV+=3D	CPATH=3D${CPATH}
 +MAKE_ENV+=3D	CPATH=3D${CPATH}
 +.endif
 +
 +post-patch:
 +	@${LN} -s ${LOCALBASE}/lib/X11/fonts/dejavu/DejaVuSans.ttf ${WRKSRC}
 +	@${TOUCH} -t 200001010000 ${WRKSRC}/Makefile.util.def
 +
 +post-configure:
 +	@${LN} -sf /usr/include/machine /usr/include/sys /usr/include/x86 ${WRKSR=
 C}/grub-core
 +
  post-install:
  	@${CAT} ${PKGMESSAGE}
 =20
 -.include <bsd.port.mk>
 +.include <bsd.port.post.mk>
 Index: distinfo
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/distinfo,v
 retrieving revision 1.2
 diff -u -p -r1.2 distinfo
 --- distinfo	19 Mar 2011 12:32:33 -0000	1.2
 +++ distinfo	16 Sep 2012 11:27:30 -0000
 @@ -1,2 +1,2 @@
 -SHA256 (grub-1.98.tar.gz) =3D bef2c1892e052967b65aab6aa62ac702c0e50ef88485=
 06eacf3c0b2f5007c614
 -SIZE (grub-1.98.tar.gz) =3D 2449386
 +SHA256 (grub-2.00.tar.xz) =3D 784ec38e7edc32239ad75b8e66df04dc8bfb26d88681=
 bc9f627133a6eb85c458
 +SIZE (grub-2.00.tar.xz) =3D 5136412
 Index: pkg-message
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/pkg-message,v
 retrieving revision 1.1
 diff -u -p -r1.1 pkg-message
 --- pkg-message	11 Jun 2010 11:06:20 -0000	1.1
 +++ pkg-message	16 Sep 2012 13:51:55 -0000
 @@ -4,7 +4,7 @@ use 'grub-install <drive-to-install>' co
 =20
  A typical menu entry in /boot/grub/grub.cfg for FreeBSD:
  menuentry "FreeBSD" {
 -	set root(hd0,1,a)
 +	set root=3D"(hd0,msdos1,bsd1)"
  	kfreebsd /boot/loader
  }
  Or use grub-mkconfig to create the config file.
 Index: pkg-plist
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/pkg-plist,v
 retrieving revision 1.1
 diff -u -p -r1.1 pkg-plist
 --- pkg-plist	11 Jun 2010 11:06:20 -0000	1.1
 +++ pkg-plist	29 Mar 2013 01:22:05 -0000
 @@ -1,220 +1,562 @@
 -bin/grub-mkimage
 -bin/grub-mkelfimage
 -bin/grub-fstest
 -bin/grub-mkisofs
 +%%FUSE%%bin/grub-mount
  %%MKFONT%%bin/grub-mkfont
 -bin/grub-mkrelpath
 -bin/grub-bin2h
 -bin/grub-script-check
 +%%MKFONT%%share/grub/themes/starfield/dejavu_10.pf2
 +%%MKFONT%%share/grub/themes/starfield/dejavu_12.pf2
 +%%MKFONT%%share/grub/themes/starfield/dejavu_bold_14.pf2
 +%%MKFONT%%share/grub/themes/starfield/dejavu_14.pf2
 +%%MKFONT%%share/grub/themes/starfield/dejavu_16.pf2
 +%%MKFONT%%share/grub/themes/starfield/blob_w.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_c.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_e.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_ne.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_n.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_nw.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_se.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_s.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_sw.png
 +%%MKFONT%%share/grub/themes/starfield/boot_menu_w.png
 +%%MKFONT%%share/grub/themes/starfield/slider_c.png
 +%%MKFONT%%share/grub/themes/starfield/slider_n.png
 +%%MKFONT%%share/grub/themes/starfield/slider_s.png
 +%%MKFONT%%share/grub/themes/starfield/starfield.png
 +%%MKFONT%%share/grub/themes/starfield/README
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_c.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_e.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_ne.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_n.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_nw.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_se.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_s.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_sw.png
 +%%MKFONT%%share/grub/themes/starfield/terminal_box_w.png
 +%%MKFONT%%share/grub/themes/starfield/theme.txt
 +%%MKFONT%%share/grub/themes/starfield/COPYING.CC-BY-SA-3.0
  bin/grub-editenv
 +bin/grub-fstest
 +bin/grub-kbdcomp
 +bin/grub-menulst2cfg
 +bin/grub-mkimage
 +bin/grub-mklayout
  bin/grub-mkpasswd-pbkdf2
 +bin/grub-mkrelpath
 +bin/grub-mkstandalone
  bin/grub-mkrescue
 +bin/grub-script-check
  etc/grub.d/00_header
  etc/grub.d/30_os-prober
  etc/grub.d/40_custom
 +etc/grub.d/41_custom
  etc/grub.d/10_kfreebsd
  etc/grub.d/README
 +etc/bash_completion.d/grub
 +lib/grub/i386-pc/acpi.mod
 +lib/grub/i386-pc/acpi.module
 +lib/grub/i386-pc/adler32.mod
 +lib/grub/i386-pc/adler32.module
 +lib/grub/i386-pc/affs.mod
 +lib/grub/i386-pc/affs.module
 +lib/grub/i386-pc/afs.mod
 +lib/grub/i386-pc/afs.module
 +lib/grub/i386-pc/ahci.mod
 +lib/grub/i386-pc/ahci.module
 +lib/grub/i386-pc/all_video.mod
 +lib/grub/i386-pc/all_video.module
 +lib/grub/i386-pc/aout.mod
 +lib/grub/i386-pc/aout.module
 +lib/grub/i386-pc/at_keyboard.mod
 +lib/grub/i386-pc/at_keyboard.module
 +lib/grub/i386-pc/ata.mod
 +lib/grub/i386-pc/ata.module
 +lib/grub/i386-pc/backtrace.mod
 +lib/grub/i386-pc/backtrace.module
 +lib/grub/i386-pc/bfs.mod
 +lib/grub/i386-pc/bfs.module
 +lib/grub/i386-pc/biosdisk.mod
 +lib/grub/i386-pc/biosdisk.module
 +lib/grub/i386-pc/bitmap.mod
 +lib/grub/i386-pc/bitmap.module
 +lib/grub/i386-pc/bitmap_scale.mod
 +lib/grub/i386-pc/bitmap_scale.module
 +lib/grub/i386-pc/blocklist.mod
 +lib/grub/i386-pc/blocklist.module
 +lib/grub/i386-pc/boot.image
  lib/grub/i386-pc/boot.img
 +lib/grub/i386-pc/boot.mod
 +lib/grub/i386-pc/boot.module
 +lib/grub/i386-pc/bsd.mod
 +lib/grub/i386-pc/bsd.module
 +lib/grub/i386-pc/btrfs.mod
 +lib/grub/i386-pc/btrfs.module
 +lib/grub/i386-pc/bufio.mod
 +lib/grub/i386-pc/bufio.module
 +lib/grub/i386-pc/cat.mod
 +lib/grub/i386-pc/cat.module
 +lib/grub/i386-pc/cdboot.image
  lib/grub/i386-pc/cdboot.img
 -lib/grub/i386-pc/diskboot.img
 -lib/grub/i386-pc/kernel.img
 -lib/grub/i386-pc/lnxboot.img
 -lib/grub/i386-pc/pxeboot.img
 -lib/grub/i386-pc/biosdisk.mod
  lib/grub/i386-pc/chain.mod
 -lib/grub/i386-pc/reboot.mod
 -lib/grub/i386-pc/halt.mod
 -lib/grub/i386-pc/vbe.mod
 -lib/grub/i386-pc/vbetest.mod
 -lib/grub/i386-pc/vbeinfo.mod
 -lib/grub/i386-pc/play.mod
 -lib/grub/i386-pc/serial.mod
 -lib/grub/i386-pc/vga.mod
 -lib/grub/i386-pc/memdisk.mod
 -lib/grub/i386-pc/pci.mod
 -lib/grub/i386-pc/lspci.mod
 -lib/grub/i386-pc/aout.mod
 -lib/grub/i386-pc/bsd.mod
 -lib/grub/i386-pc/pxe.mod
 -lib/grub/i386-pc/pxecmd.mod
 -lib/grub/i386-pc/datetime.mod
 -lib/grub/i386-pc/usb.mod
 +lib/grub/i386-pc/chain.module
 +lib/grub/i386-pc/cmostest.mod
 +lib/grub/i386-pc/cmostest.module
 +lib/grub/i386-pc/cmp.mod
 +lib/grub/i386-pc/cmp.module
 +lib/grub/i386-pc/command.lst
 +lib/grub/i386-pc/config.h
 +lib/grub/i386-pc/configfile.mod
 +lib/grub/i386-pc/configfile.module
 +lib/grub/i386-pc/cpio.mod
 +lib/grub/i386-pc/cpio.module
 +lib/grub/i386-pc/cpio_be.mod
 +lib/grub/i386-pc/cpio_be.module
 +lib/grub/i386-pc/cpuid.mod
 +lib/grub/i386-pc/cpuid.module
 +lib/grub/i386-pc/crc64.mod
 +lib/grub/i386-pc/crc64.module
 +lib/grub/i386-pc/crypto.lst
 +lib/grub/i386-pc/crypto.mod
 +lib/grub/i386-pc/crypto.module
 +lib/grub/i386-pc/cryptodisk.mod
 +lib/grub/i386-pc/cryptodisk.module
 +lib/grub/i386-pc/cs5536.mod
 +lib/grub/i386-pc/cs5536.module
  lib/grub/i386-pc/date.mod
 +lib/grub/i386-pc/date.module
  lib/grub/i386-pc/datehook.mod
 -lib/grub/i386-pc/lsmmap.mod
 -lib/grub/i386-pc/ata_pthru.mod
 -lib/grub/i386-pc/hdparm.mod
 -lib/grub/i386-pc/uhci.mod
 -lib/grub/i386-pc/ohci.mod
 -lib/grub/i386-pc/usbtest.mod
 -lib/grub/i386-pc/usbms.mod
 -lib/grub/i386-pc/usb_keyboard.mod
 -lib/grub/i386-pc/efiemu.mod
 -lib/grub/i386-pc/mmap.mod
 -lib/grub/i386-pc/acpi.mod
 +lib/grub/i386-pc/datehook.module
 +lib/grub/i386-pc/datetime.mod
 +lib/grub/i386-pc/datetime.module
 +lib/grub/i386-pc/diskboot.image
 +lib/grub/i386-pc/diskboot.img
 +lib/grub/i386-pc/diskfilter.mod
 +lib/grub/i386-pc/diskfilter.module
 +lib/grub/i386-pc/dm_nv.mod
 +lib/grub/i386-pc/dm_nv.module
  lib/grub/i386-pc/drivemap.mod
 -lib/grub/i386-pc/boot.mod
 -lib/grub/i386-pc/linux16.mod
 +lib/grub/i386-pc/drivemap.module
 +lib/grub/i386-pc/echo.mod
 +lib/grub/i386-pc/echo.module
 +lib/grub/i386-pc/efiemu.mod
 +lib/grub/i386-pc/efiemu.module
 +%%EFIEMU%%lib/grub/i386-pc/efiemu32.o
 +%%EFIEMU%%lib/grub/i386-pc/efiemu64.o
 +lib/grub/i386-pc/ehci.mod
 +lib/grub/i386-pc/ehci.module
 +lib/grub/i386-pc/elf.mod
 +lib/grub/i386-pc/elf.module
 +lib/grub/i386-pc/exfat.mod
 +lib/grub/i386-pc/exfat.module
 +lib/grub/i386-pc/exfctest.mod
 +lib/grub/i386-pc/exfctest.module
 +lib/grub/i386-pc/ext2.mod
 +lib/grub/i386-pc/ext2.module
 +lib/grub/i386-pc/extcmd.mod
 +lib/grub/i386-pc/extcmd.module
 +lib/grub/i386-pc/fat.mod
 +lib/grub/i386-pc/fat.module
 +lib/grub/i386-pc/font.mod
 +lib/grub/i386-pc/font.module
 +lib/grub/i386-pc/freedos.mod
 +lib/grub/i386-pc/freedos.module
 +lib/grub/i386-pc/fs.lst
 +lib/grub/i386-pc/fshelp.mod
 +lib/grub/i386-pc/fshelp.module
 +lib/grub/i386-pc/functional_test.mod
 +lib/grub/i386-pc/functional_test.module
 +lib/grub/i386-pc/gcry_arcfour.mod
 +lib/grub/i386-pc/gcry_arcfour.module
 +lib/grub/i386-pc/gcry_blowfish.mod
 +lib/grub/i386-pc/gcry_blowfish.module
 +lib/grub/i386-pc/gcry_camellia.mod
 +lib/grub/i386-pc/gcry_camellia.module
 +lib/grub/i386-pc/gcry_cast5.mod
 +lib/grub/i386-pc/gcry_cast5.module
 +lib/grub/i386-pc/gcry_crc.mod
 +lib/grub/i386-pc/gcry_crc.module
 +lib/grub/i386-pc/gcry_des.mod
 +lib/grub/i386-pc/gcry_des.module
 +lib/grub/i386-pc/gcry_md4.mod
 +lib/grub/i386-pc/gcry_md4.module
 +lib/grub/i386-pc/gcry_md5.mod
 +lib/grub/i386-pc/gcry_md5.module
 +lib/grub/i386-pc/gcry_rfc2268.mod
 +lib/grub/i386-pc/gcry_rfc2268.module
 +lib/grub/i386-pc/gcry_rijndael.mod
 +lib/grub/i386-pc/gcry_rijndael.module
 +lib/grub/i386-pc/gcry_rmd160.mod
 +lib/grub/i386-pc/gcry_rmd160.module
 +lib/grub/i386-pc/gcry_seed.mod
 +lib/grub/i386-pc/gcry_seed.module
 +lib/grub/i386-pc/gcry_serpent.mod
 +lib/grub/i386-pc/gcry_serpent.module
 +lib/grub/i386-pc/gcry_sha1.mod
 +lib/grub/i386-pc/gcry_sha1.module
 +lib/grub/i386-pc/gcry_sha256.mod
 +lib/grub/i386-pc/gcry_sha256.module
 +lib/grub/i386-pc/gcry_sha512.mod
 +lib/grub/i386-pc/gcry_sha512.module
 +lib/grub/i386-pc/gcry_tiger.mod
 +lib/grub/i386-pc/gcry_tiger.module
 +lib/grub/i386-pc/gcry_twofish.mod
 +lib/grub/i386-pc/gcry_twofish.module
 +lib/grub/i386-pc/gcry_whirlpool.mod
 +lib/grub/i386-pc/gcry_whirlpool.module
 +lib/grub/i386-pc/gdb.mod
 +lib/grub/i386-pc/gdb.module
 +lib/grub/i386-pc/gdb_grub
 +lib/grub/i386-pc/geli.mod
 +lib/grub/i386-pc/geli.module
 +lib/grub/i386-pc/gettext.mod
 +lib/grub/i386-pc/gettext.module
 +lib/grub/i386-pc/gfxmenu.mod
 +lib/grub/i386-pc/gfxmenu.module
 +lib/grub/i386-pc/gfxterm.mod
 +lib/grub/i386-pc/gfxterm.module
 +lib/grub/i386-pc/gmodule.pl
 +lib/grub/i386-pc/gptsync.mod
 +lib/grub/i386-pc/gptsync.module
 +lib/grub/i386-pc/gzio.mod
 +lib/grub/i386-pc/gzio.module
 +lib/grub/i386-pc/halt.mod
 +lib/grub/i386-pc/halt.module
 +lib/grub/i386-pc/hashsum.mod
 +lib/grub/i386-pc/hashsum.module
 +lib/grub/i386-pc/hdparm.mod
 +lib/grub/i386-pc/hdparm.module
 +lib/grub/i386-pc/hello.mod
 +lib/grub/i386-pc/hello.module
 +lib/grub/i386-pc/help.mod
 +lib/grub/i386-pc/help.module
 +lib/grub/i386-pc/hexdump.mod
 +lib/grub/i386-pc/hexdump.module
 +lib/grub/i386-pc/hfs.mod
 +lib/grub/i386-pc/hfs.module
 +lib/grub/i386-pc/hfsplus.mod
 +lib/grub/i386-pc/hfsplus.module
 +lib/grub/i386-pc/http.mod
 +lib/grub/i386-pc/http.module
 +lib/grub/i386-pc/iorw.mod
 +lib/grub/i386-pc/iorw.module
 +lib/grub/i386-pc/iso9660.mod
 +lib/grub/i386-pc/iso9660.module
 +lib/grub/i386-pc/jfs.mod
 +lib/grub/i386-pc/jfs.module
 +lib/grub/i386-pc/jpeg.mod
 +lib/grub/i386-pc/jpeg.module
 +lib/grub/i386-pc/kernel.exec
 +lib/grub/i386-pc/kernel.img
 +lib/grub/i386-pc/keylayouts.mod
 +lib/grub/i386-pc/keylayouts.module
 +lib/grub/i386-pc/keystatus.mod
 +lib/grub/i386-pc/keystatus.module
 +lib/grub/i386-pc/ldm.mod
 +lib/grub/i386-pc/ldm.module
 +lib/grub/i386-pc/legacycfg.mod
 +lib/grub/i386-pc/legacycfg.module
  lib/grub/i386-pc/linux.mod
 -lib/grub/i386-pc/xnu.mod
 -lib/grub/i386-pc/cpuid.mod
 -lib/grub/i386-pc/at_keyboard.mod
 -lib/grub/i386-pc/vga_text.mod
 -lib/grub/i386-pc/relocator.mod
 -lib/grub/i386-pc/ata.mod
 -lib/grub/i386-pc/setpci.mod
 +lib/grub/i386-pc/linux.module
 +lib/grub/i386-pc/linux16.mod
 +lib/grub/i386-pc/linux16.module
 +lib/grub/i386-pc/lnxboot.image
 +lib/grub/i386-pc/lnxboot.img
 +lib/grub/i386-pc/loadenv.mod
 +lib/grub/i386-pc/loadenv.module
 +lib/grub/i386-pc/loopback.mod
 +lib/grub/i386-pc/loopback.module
 +lib/grub/i386-pc/ls.mod
 +lib/grub/i386-pc/ls.module
 +lib/grub/i386-pc/lsacpi.mod
 +lib/grub/i386-pc/lsacpi.module
 +lib/grub/i386-pc/lsapm.mod
 +lib/grub/i386-pc/lsapm.module
 +lib/grub/i386-pc/lsmmap.mod
 +lib/grub/i386-pc/lsmmap.module
 +lib/grub/i386-pc/lspci.mod
 +lib/grub/i386-pc/lspci.module
 +lib/grub/i386-pc/luks.mod
 +lib/grub/i386-pc/luks.module
 +lib/grub/i386-pc/lvm.mod
 +lib/grub/i386-pc/lvm.module
 +lib/grub/i386-pc/lzma_decompress.image
 +lib/grub/i386-pc/lzma_decompress.img
 +lib/grub/i386-pc/lzopio.mod
 +lib/grub/i386-pc/lzopio.module
 +lib/grub/i386-pc/mdraid09.mod
 +lib/grub/i386-pc/mdraid09.module
 +lib/grub/i386-pc/mdraid09_be.mod
 +lib/grub/i386-pc/mdraid09_be.module
 +lib/grub/i386-pc/mdraid1x.mod
 +lib/grub/i386-pc/mdraid1x.module
 +lib/grub/i386-pc/memdisk.mod
 +lib/grub/i386-pc/memdisk.module
 +lib/grub/i386-pc/memrw.mod
 +lib/grub/i386-pc/memrw.module
 +lib/grub/i386-pc/minicmd.mod
 +lib/grub/i386-pc/minicmd.module
 +lib/grub/i386-pc/minix.mod
 +lib/grub/i386-pc/minix.module
 +lib/grub/i386-pc/minix2.mod
 +lib/grub/i386-pc/minix2.module
 +lib/grub/i386-pc/minix2_be.mod
 +lib/grub/i386-pc/minix2_be.module
 +lib/grub/i386-pc/minix3.mod
 +lib/grub/i386-pc/minix3.module
 +lib/grub/i386-pc/minix3_be.mod
 +lib/grub/i386-pc/minix3_be.module
 +lib/grub/i386-pc/minix_be.mod
 +lib/grub/i386-pc/minix_be.module
 +lib/grub/i386-pc/mmap.mod
 +lib/grub/i386-pc/mmap.module
 +lib/grub/i386-pc/moddep.lst
 +lib/grub/i386-pc/modinfo.sh
 +lib/grub/i386-pc/msdospart.mod
 +lib/grub/i386-pc/msdospart.module
  lib/grub/i386-pc/multiboot.mod
 +lib/grub/i386-pc/multiboot.module
  lib/grub/i386-pc/multiboot2.mod
 -lib/grub/i386-pc/fshelp.mod
 -lib/grub/i386-pc/fat.mod
 -lib/grub/i386-pc/ufs1.mod
 -lib/grub/i386-pc/ufs2.mod
 -lib/grub/i386-pc/ext2.mod
 +lib/grub/i386-pc/multiboot2.module
 +lib/grub/i386-pc/net.mod
 +lib/grub/i386-pc/net.module
 +lib/grub/i386-pc/newc.mod
 +lib/grub/i386-pc/newc.module
 +lib/grub/i386-pc/nilfs2.mod
 +lib/grub/i386-pc/nilfs2.module
 +lib/grub/i386-pc/normal.mod
 +lib/grub/i386-pc/normal.module
  lib/grub/i386-pc/ntfs.mod
 +lib/grub/i386-pc/ntfs.module
  lib/grub/i386-pc/ntfscomp.mod
 -lib/grub/i386-pc/minix.mod
 -lib/grub/i386-pc/hfs.mod
 -lib/grub/i386-pc/jfs.mod
 -lib/grub/i386-pc/iso9660.mod
 -lib/grub/i386-pc/xfs.mod
 -lib/grub/i386-pc/affs.mod
 -lib/grub/i386-pc/sfs.mod
 -lib/grub/i386-pc/hfsplus.mod
 -lib/grub/i386-pc/reiserfs.mod
 -lib/grub/i386-pc/cpio.mod
 -lib/grub/i386-pc/tar.mod
 -lib/grub/i386-pc/udf.mod
 -lib/grub/i386-pc/afs.mod
 -lib/grub/i386-pc/afs_be.mod
 -lib/grub/i386-pc/befs.mod
 -lib/grub/i386-pc/befs_be.mod
 +lib/grub/i386-pc/ntfscomp.module
 +lib/grub/i386-pc/ntldr.mod
 +lib/grub/i386-pc/ntldr.module
 +lib/grub/i386-pc/odc.mod
 +lib/grub/i386-pc/odc.module
 +lib/grub/i386-pc/ohci.mod
 +lib/grub/i386-pc/ohci.module
 +lib/grub/i386-pc/part_acorn.mod
 +lib/grub/i386-pc/part_acorn.module
  lib/grub/i386-pc/part_amiga.mod
 +lib/grub/i386-pc/part_amiga.module
  lib/grub/i386-pc/part_apple.mod
 +lib/grub/i386-pc/part_apple.module
 +lib/grub/i386-pc/part_bsd.mod
 +lib/grub/i386-pc/part_bsd.module
 +lib/grub/i386-pc/part_dvh.mod
 +lib/grub/i386-pc/part_dvh.module
 +lib/grub/i386-pc/part_gpt.mod
 +lib/grub/i386-pc/part_gpt.module
  lib/grub/i386-pc/part_msdos.mod
 +lib/grub/i386-pc/part_msdos.module
 +lib/grub/i386-pc/part_plan.mod
 +lib/grub/i386-pc/part_plan.module
  lib/grub/i386-pc/part_sun.mod
 -lib/grub/i386-pc/part_acorn.mod
 -lib/grub/i386-pc/part_gpt.mod
 -lib/grub/i386-pc/raid.mod
 +lib/grub/i386-pc/part_sun.module
 +lib/grub/i386-pc/part_sunpc.mod
 +lib/grub/i386-pc/part_sunpc.module
 +lib/grub/i386-pc/partmap.lst
 +lib/grub/i386-pc/parttool.lst
 +lib/grub/i386-pc/parttool.mod
 +lib/grub/i386-pc/parttool.module
 +lib/grub/i386-pc/password.mod
 +lib/grub/i386-pc/password.module
 +lib/grub/i386-pc/password_pbkdf2.mod
 +lib/grub/i386-pc/password_pbkdf2.module
 +lib/grub/i386-pc/pata.mod
 +lib/grub/i386-pc/pata.module
 +lib/grub/i386-pc/pbkdf2.mod
 +lib/grub/i386-pc/pbkdf2.module
 +lib/grub/i386-pc/pci.mod
 +lib/grub/i386-pc/pci.module
 +lib/grub/i386-pc/plan9.mod
 +lib/grub/i386-pc/plan9.module
 +lib/grub/i386-pc/play.mod
 +lib/grub/i386-pc/play.module
 +lib/grub/i386-pc/png.mod
 +lib/grub/i386-pc/png.module
 +lib/grub/i386-pc/priority_queue.mod
 +lib/grub/i386-pc/priority_queue.module
 +lib/grub/i386-pc/probe.mod
 +lib/grub/i386-pc/probe.module
 +lib/grub/i386-pc/pxe.mod
 +lib/grub/i386-pc/pxe.module
 +lib/grub/i386-pc/pxeboot.image
 +lib/grub/i386-pc/pxeboot.img
 +lib/grub/i386-pc/pxechain.mod
 +lib/grub/i386-pc/pxechain.module
  lib/grub/i386-pc/raid5rec.mod
 +lib/grub/i386-pc/raid5rec.module
  lib/grub/i386-pc/raid6rec.mod
 -lib/grub/i386-pc/mdraid.mod
 -lib/grub/i386-pc/dm_nv.mod
 -lib/grub/i386-pc/lvm.mod
 +lib/grub/i386-pc/raid6rec.module
 +lib/grub/i386-pc/read.mod
 +lib/grub/i386-pc/read.module
 +lib/grub/i386-pc/reboot.mod
 +lib/grub/i386-pc/reboot.module
 +lib/grub/i386-pc/regexp.mod
 +lib/grub/i386-pc/regexp.module
 +lib/grub/i386-pc/reiserfs.mod
 +lib/grub/i386-pc/reiserfs.module
 +lib/grub/i386-pc/relocator.mod
 +lib/grub/i386-pc/relocator.module
 +lib/grub/i386-pc/romfs.mod
 +lib/grub/i386-pc/romfs.module
  lib/grub/i386-pc/scsi.mod
 -lib/grub/i386-pc/minicmd.mod
 -lib/grub/i386-pc/extcmd.mod
 -lib/grub/i386-pc/hello.mod
 -lib/grub/i386-pc/handler.mod
 -lib/grub/i386-pc/ls.mod
 -lib/grub/i386-pc/cmp.mod
 -lib/grub/i386-pc/cat.mod
 -lib/grub/i386-pc/help.mod
 +lib/grub/i386-pc/scsi.module
  lib/grub/i386-pc/search.mod
 -lib/grub/i386-pc/loopback.mod
 -lib/grub/i386-pc/configfile.mod
 -lib/grub/i386-pc/echo.mod
 -lib/grub/i386-pc/terminfo.mod
 -lib/grub/i386-pc/test.mod
 -lib/grub/i386-pc/blocklist.mod
 -lib/grub/i386-pc/hexdump.mod
 -lib/grub/i386-pc/read.mod
 -lib/grub/i386-pc/sleep.mod
 -lib/grub/i386-pc/loadenv.mod
 -lib/grub/i386-pc/crc.mod
 -lib/grub/i386-pc/parttool.mod
 -lib/grub/i386-pc/msdospart.mod
 -lib/grub/i386-pc/memrw.mod
 -lib/grub/i386-pc/normal.mod
 -lib/grub/i386-pc/sh.mod
 -lib/grub/i386-pc/gptsync.mod
 -lib/grub/i386-pc/true.mod
 -lib/grub/i386-pc/probe.mod
 -lib/grub/i386-pc/password.mod
 -lib/grub/i386-pc/keystatus.mod
 -lib/grub/i386-pc/gfxmenu.mod
 +lib/grub/i386-pc/search.module
  lib/grub/i386-pc/search_fs_file.mod
 +lib/grub/i386-pc/search_fs_file.module
  lib/grub/i386-pc/search_fs_uuid.mod
 +lib/grub/i386-pc/search_fs_uuid.module
  lib/grub/i386-pc/search_label.mod
 +lib/grub/i386-pc/search_label.module
 +lib/grub/i386-pc/sendkey.mod
 +lib/grub/i386-pc/sendkey.module
 +lib/grub/i386-pc/serial.mod
 +lib/grub/i386-pc/serial.module
 +lib/grub/i386-pc/setjmp.mod
 +lib/grub/i386-pc/setjmp.module
 +lib/grub/i386-pc/setpci.mod
 +lib/grub/i386-pc/setpci.module
 +lib/grub/i386-pc/sfs.mod
 +lib/grub/i386-pc/sfs.module
 +lib/grub/i386-pc/sleep.mod
 +lib/grub/i386-pc/sleep.module
 +lib/grub/i386-pc/squash4.mod
 +lib/grub/i386-pc/squash4.module
 +lib/grub/i386-pc/tar.mod
 +lib/grub/i386-pc/tar.module
 +lib/grub/i386-pc/terminal.lst
 +lib/grub/i386-pc/terminal.mod
 +lib/grub/i386-pc/terminal.module
 +lib/grub/i386-pc/terminfo.mod
 +lib/grub/i386-pc/terminfo.module
 +lib/grub/i386-pc/test.mod
 +lib/grub/i386-pc/test.module
 +lib/grub/i386-pc/test_blockarg.mod
 +lib/grub/i386-pc/test_blockarg.module
 +lib/grub/i386-pc/testload.mod
 +lib/grub/i386-pc/testload.module
 +lib/grub/i386-pc/tftp.mod
 +lib/grub/i386-pc/tftp.module
 +lib/grub/i386-pc/tga.mod
 +lib/grub/i386-pc/tga.module
 +lib/grub/i386-pc/time.mod
 +lib/grub/i386-pc/time.module
 +lib/grub/i386-pc/trig.mod
 +lib/grub/i386-pc/trig.module
 +lib/grub/i386-pc/true.mod
 +lib/grub/i386-pc/true.module
 +lib/grub/i386-pc/udf.mod
 +lib/grub/i386-pc/udf.module
 +lib/grub/i386-pc/ufs1.mod
 +lib/grub/i386-pc/ufs1.module
 +lib/grub/i386-pc/ufs2.mod
 +lib/grub/i386-pc/ufs2.module
 +lib/grub/i386-pc/uhci.mod
 +lib/grub/i386-pc/uhci.module
 +lib/grub/i386-pc/usb.mod
 +lib/grub/i386-pc/usb.module
 +lib/grub/i386-pc/usb_keyboard.mod
 +lib/grub/i386-pc/usb_keyboard.module
 +lib/grub/i386-pc/usbms.mod
 +lib/grub/i386-pc/usbms.module
 +lib/grub/i386-pc/usbserial_common.mod
 +lib/grub/i386-pc/usbserial_common.module
 +lib/grub/i386-pc/usbserial_ftdi.mod
 +lib/grub/i386-pc/usbserial_ftdi.module
 +lib/grub/i386-pc/usbserial_pl2303.mod
 +lib/grub/i386-pc/usbserial_pl2303.module
 +lib/grub/i386-pc/usbtest.mod
 +lib/grub/i386-pc/usbtest.module
 +lib/grub/i386-pc/vbe.mod
 +lib/grub/i386-pc/vbe.module
 +lib/grub/i386-pc/vga.mod
 +lib/grub/i386-pc/vga.module
 +lib/grub/i386-pc/vga_text.mod
 +lib/grub/i386-pc/vga_text.module
 +lib/grub/i386-pc/video.lst
  lib/grub/i386-pc/video.mod
 +lib/grub/i386-pc/video.module
 +lib/grub/i386-pc/video_bochs.mod
 +lib/grub/i386-pc/video_bochs.module
 +lib/grub/i386-pc/video_cirrus.mod
 +lib/grub/i386-pc/video_cirrus.module
  lib/grub/i386-pc/video_fb.mod
 -lib/grub/i386-pc/bitmap.mod
 -lib/grub/i386-pc/bitmap_scale.mod
 -lib/grub/i386-pc/font.mod
 -lib/grub/i386-pc/gfxterm.mod
 +lib/grub/i386-pc/video_fb.module
 +lib/grub/i386-pc/videoinfo.mod
 +lib/grub/i386-pc/videoinfo.module
  lib/grub/i386-pc/videotest.mod
 -lib/grub/i386-pc/tga.mod
 -lib/grub/i386-pc/jpeg.mod
 -lib/grub/i386-pc/png.mod
 -lib/grub/i386-pc/gzio.mod
 -lib/grub/i386-pc/elf.mod
 -lib/grub/i386-pc/bufio.mod
 -lib/grub/i386-pc/gettext.mod
 +lib/grub/i386-pc/videotest.module
 +lib/grub/i386-pc/xfs.mod
 +lib/grub/i386-pc/xfs.module
 +lib/grub/i386-pc/xnu.mod
 +lib/grub/i386-pc/xnu.module
  lib/grub/i386-pc/xnu_uuid.mod
 -lib/grub/i386-pc/trig.mod
 -lib/grub/i386-pc/setjmp.mod
 -lib/grub/i386-pc/charset.mod
 -lib/grub/i386-pc/terminal.mod
 -lib/grub/i386-pc/crypto.mod
 -lib/grub/i386-pc/hashsum.mod
 -lib/grub/i386-pc/pbkdf2.mod
 -lib/grub/i386-pc/password_pbkdf2.mod
 -lib/grub/i386-pc/gcry_whirlpool.mod
 -lib/grub/i386-pc/gcry_tiger.mod
 -lib/grub/i386-pc/gcry_twofish.mod
 -lib/grub/i386-pc/gcry_sha512.mod
 -lib/grub/i386-pc/gcry_sha256.mod
 -lib/grub/i386-pc/gcry_sha1.mod
 -lib/grub/i386-pc/gcry_serpent.mod
 -lib/grub/i386-pc/gcry_seed.mod
 -lib/grub/i386-pc/gcry_rmd160.mod
 -lib/grub/i386-pc/gcry_rijndael.mod
 -lib/grub/i386-pc/gcry_rfc2268.mod
 -lib/grub/i386-pc/gcry_md5.mod
 -lib/grub/i386-pc/gcry_md4.mod
 -lib/grub/i386-pc/gcry_des.mod
 -lib/grub/i386-pc/gcry_crc.mod
 -lib/grub/i386-pc/gcry_cast5.mod
 -lib/grub/i386-pc/gcry_camellia.mod
 -lib/grub/i386-pc/gcry_blowfish.mod
 -lib/grub/i386-pc/gcry_arcfour.mod
 -lib/grub/i386-pc/functional_test.mod
 -lib/grub/i386-pc/example_functional_test.mod
 -lib/grub/i386-pc/moddep.lst
 -lib/grub/i386-pc/command.lst
 -lib/grub/i386-pc/fs.lst
 -lib/grub/i386-pc/partmap.lst
 -lib/grub/i386-pc/parttool.lst
 -lib/grub/i386-pc/handler.lst
 -lib/grub/i386-pc/video.lst
 -lib/grub/i386-pc/crypto.lst
 -lib/grub/i386-pc/terminal.lst
 -lib/grub/i386-pc/build_env.mk
 -lib/grub/i386-pc/config.h
 -lib/grub/i386-pc/grub_script.tab.h
 -lib/grub/grub-mkconfig_lib
 -lib/grub/update-grub_lib
 -sbin/grub-setup
 -sbin/grub-mkdevicemap
 +lib/grub/i386-pc/xnu_uuid.module
 +lib/grub/i386-pc/xzio.mod
 +lib/grub/i386-pc/xzio.module
 +lib/grub/i386-pc/zfs.mod
 +lib/grub/i386-pc/zfs.module
 +lib/grub/i386-pc/zfscrypt.mod
 +lib/grub/i386-pc/zfscrypt.module
 +lib/grub/i386-pc/zfsinfo.mod
 +lib/grub/i386-pc/zfsinfo.module
 +sbin/grub-bios-setup
  sbin/grub-probe
  sbin/grub-install
  sbin/grub-mkconfig
 +sbin/grub-mknetdir
 +sbin/grub-ofpathname
  sbin/grub-set-default
 +sbin/grub-sparc64-setup
  sbin/grub-reboot
 +share/grub/grub-mkconfig_lib
 +share/locale/ast/LC_MESSAGES/grub.mo
  share/locale/ca/LC_MESSAGES/grub.mo
 +share/locale/da/LC_MESSAGES/grub.mo
  share/locale/de/LC_MESSAGES/grub.mo
 +share/locale/de@hebrew/LC_MESSAGES/grub.mo
 +share/locale/de_CH/LC_MESSAGES/grub.mo
 +share/locale/en@arabic/LC_MESSAGES/grub.mo
 +share/locale/en@cyrillic/LC_MESSAGES/grub.mo
 +share/locale/en@greek/LC_MESSAGES/grub.mo
 +share/locale/en@hebrew/LC_MESSAGES/grub.mo
 +share/locale/en@piglatin/LC_MESSAGES/grub.mo
 +share/locale/en@quot/LC_MESSAGES/grub.mo
 +share/locale/eo/LC_MESSAGES/grub.mo
  share/locale/fi/LC_MESSAGES/grub.mo
  share/locale/fr/LC_MESSAGES/grub.mo
  share/locale/hu/LC_MESSAGES/grub.mo
  share/locale/id/LC_MESSAGES/grub.mo
  share/locale/it/LC_MESSAGES/grub.mo
 +share/locale/ja/LC_MESSAGES/grub.mo
  share/locale/nl/LC_MESSAGES/grub.mo
 +share/locale/pa/LC_MESSAGES/grub.mo
 +share/locale/pl/LC_MESSAGES/grub.mo
  share/locale/ru/LC_MESSAGES/grub.mo
  share/locale/sv/LC_MESSAGES/grub.mo
 +share/locale/uk/LC_MESSAGES/grub.mo
 +share/locale/vi/LC_MESSAGES/grub.mo
  share/locale/zh_CN/LC_MESSAGES/grub.mo
 -share/locale/ast/LC_MESSAGES/grub.mo
 +share/locale/zh_TW/LC_MESSAGES/grub.mo
  @dirrmtry share/locale/ast/LC_MESSAGES
  @dirrmtry share/locale/ast
 +@dirrmtry share/locale/de@hebrew/LC_MESSAGES
 +@dirrmtry share/locale/de@hebrew
 +@dirrmtry share/locale/de_CH/LC_MESSAGES
 +@dirrmtry share/locale/de_CH
 +@dirrmtry share/locale/en@arabic/LC_MESSAGES
 +@dirrmtry share/locale/en@arabic
 +@dirrmtry share/locale/en@cyrillic/LC_MESSAGES
 +@dirrmtry share/locale/en@cyrillic
 +@dirrmtry share/locale/en@greek/LC_MESSAGES
 +@dirrmtry share/locale/en@greek
 +@dirrmtry share/locale/en@hebrew/LC_MESSAGES
 +@dirrmtry share/locale/en@hebrew
 +@dirrmtry share/locale/en@piglatin/LC_MESSAGES
 +@dirrmtry share/locale/en@piglatin
 +%%MKFONT%%@dirrm share/grub/themes/starfield
 +%%MKFONT%%@dirrm share/grub/themes
  @dirrm share/grub
  @dirrm lib/grub/i386-pc
  @dirrm lib/grub
  @dirrmtry etc/grub.d
 +@dirrmtry etc/bash_completion.d
 Index: files/patch-bsd-partmap
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/files/patch-bsd-partmap,v
 retrieving revision 1.1
 diff -u -p -r1.1 patch-bsd-partmap
 --- files/patch-bsd-partmap	12 Dec 2010 01:11:24 -0000	1.1
 +++ files/patch-bsd-partmap	16 Sep 2012 11:27:30 -0000
 @@ -1,47 +0,0 @@
 ---- include/grub/msdos_partition.h	2010-03-06 20:51:37.000000000 +0000
 -+++ include/grub/msdos_partition.h	2010-11-17 18:22:29.000000000 +0000
 -@@ -57,6 +57,7 @@
 - #define GRUB_PC_PARTITION_BSD_LABEL_SECTOR	1
 - #define GRUB_PC_PARTITION_BSD_LABEL_MAGIC	0x82564557
 - #define GRUB_PC_PARTITION_BSD_MAX_ENTRIES	8
 -+#define GRUB_PC_PARTITION_BSD_RAW_PART		2
 -=20
 - /* BSD partition types.  */
 - #define GRUB_PC_PARTITION_BSD_TYPE_UNUSED	0
 ---- partmap/msdos.c	2010-03-06 20:51:37.000000000 +0000
 -+++ partmap/msdos.c	2010-11-17 18:26:26.000000000 +0000
 -@@ -176,6 +176,8 @@
 - 	      /* Check if this is a BSD partition.  */
 - 	      if (grub_msdos_partition_is_bsd (e->type))
 - 		{
 -+		  grub_uint32_t slice_offset =3D 0, raw_offset =3D 0;
 -+
 - 		  /* Check if the BSD label is within the DOS partition.  */
 - 		  if (p.len <=3D GRUB_PC_PARTITION_BSD_LABEL_SECTOR)
 - 		    {
 -@@ -200,6 +202,15 @@
 - 				    label.magic, p.index);
 - 		      continue;
 - 		    }
 -+
 -+		  /* Compensate for relative addressing in FreeBSD. */
 -+		  if (e->type =3D=3D GRUB_PC_PARTITION_TYPE_FREEBSD
 -+		      && GRUB_PC_PARTITION_BSD_RAW_PART < grub_cpu_to_le16 (label.num_p=
 artitions))
 -+		    {
 -+		      slice_offset =3D p.start;
 -+		      raw_offset =3D grub_le_to_cpu32 (label.entries[GRUB_PC_PARTITION_=
 BSD_RAW_PART].offset);
 -+		    }
 -+
 - 		  for (pcdata.bsd_part =3D 0;
 - 		       pcdata.bsd_part < grub_cpu_to_le16 (label.num_partitions);
 - 		       pcdata.bsd_part++)
 -@@ -207,7 +218,9 @@
 - 		      struct grub_msdos_partition_bsd_entry *be
 - 			=3D label.entries + pcdata.bsd_part;
 -=20
 -+		      if (grub_le_to_cpu32 (be->offset) < raw_offset)
 -+			  continue;
 --		      p.start =3D grub_le_to_cpu32 (be->offset);
 -+		      p.start =3D grub_le_to_cpu32 (be->offset) - raw_offset + slice_of=
 fset;
 - 		      p.len =3D grub_le_to_cpu32 (be->size);
 - 		      pcdata.bsd_type =3D be->fs_type;
 Index: files/patch-include-grub-gpt_partition.h
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/files/patch-include-grub-gpt_part=
 ition.h,v
 retrieving revision 1.1
 diff -u -p -r1.1 patch-include-grub-gpt_partition.h
 --- files/patch-include-grub-gpt_partition.h	12 Oct 2010 15:48:46 -0000	1.1
 +++ files/patch-include-grub-gpt_partition.h	16 Sep 2012 11:27:30 -0000
 @@ -1,20 +0,0 @@
 ---- include/grub/gpt_partition.h.orig	2010-03-06 12:51:37.000000000 -0800
 -+++ include/grub/gpt_partition.h	2010-10-10 02:57:26.000000000 -0700
 -@@ -40,6 +40,17 @@
 -     { 0x74, 0x4e, 0x65, 0x65, 0x64, 0x45, 0x46, 0x49 } \
 -   }
 -=20
 -+#define GRUB_GPT_PARTITION_TYPE_FREEBSD_BOOT \
 -+  { grub_cpu_to_le32 (0x83BD6B9D), grub_cpu_to_le16 (0x7F41), grub_cpu_to=
 _le16 (0x11DC), \
 -+    { 0xBE, 0x0B, 0x00, 0x15, 0x60, 0xB8, 0x4F, 0x0F } \
 -+  }
 -+ =20
 -+#define GRUB_GPT_PARTITION_TYPE_SOLARIS_BOOT \
 -+  { grub_cpu_to_le32 (0x6A82CB45), grub_cpu_to_le16 (0x1DD2), grub_cpu_to=
 _le16 (0x11B2), \
 -+    { 0x99, 0xA6, 0x08, 0x00, 0x20, 0x73, 0x66, 0x31 } \
 -+  }
 -+
 -+
 - struct grub_gpt_header
 - {
 -   grub_uint8_t magic[8];
 Index: files/patch-util-grub.d-10_kfreebsd.in
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/files/patch-util-grub.d-10_kfreeb=
 sd.in,v
 retrieving revision 1.1
 diff -u -p -r1.1 patch-util-grub.d-10_kfreebsd.in
 --- files/patch-util-grub.d-10_kfreebsd.in	11 Jun 2010 11:06:20 -0000	1.1
 +++ files/patch-util-grub.d-10_kfreebsd.in	16 Sep 2012 11:27:30 -0000
 @@ -1,14 +0,0 @@
 ---- util/grub.d/10_kfreebsd.in.orig	2010-06-11 14:37:42.000000000 +0400
 -+++ util/grub.d/10_kfreebsd.in	2010-06-11 14:37:59.000000000 +0400
 -@@ -46,9 +46,9 @@
 -   args=3D"$4"	# not used yet
 -   title=3D"$(gettext "%s, with kFreeBSD %s")"
 -   printf "menuentry \"${title}\" ${CLASS} {\n" "${os}" "${version}"
 --  save_default_entry | sed -e "s/^/\t/"
 -+  save_default_entry | sed -e "s/^/	/"
 -   if [ -z "${prepare_boot_cache}" ]; then
 --    prepare_boot_cache=3D"$(prepare_grub_to_access_device ${GRUB_DEVICE_B=
 OOT} | sed -e "s/^/\t/")"
 -+    prepare_boot_cache=3D"$(prepare_grub_to_access_device ${GRUB_DEVICE_B=
 OOT} | sed -e "s/^/	/")"
 -   fi
 -   printf '%s\n' "${prepare_boot_cache}"
 -   cat << EOF
 Index: files/patch-util-i386-pc-grub-setup.c
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /home/pcvs/ports/sysutils/grub2/files/patch-util-i386-pc-grub-set=
 up.c,v
 retrieving revision 1.1
 diff -u -p -r1.1 patch-util-i386-pc-grub-setup.c
 --- files/patch-util-i386-pc-grub-setup.c	12 Oct 2010 15:48:46 -0000	1.1
 +++ files/patch-util-i386-pc-grub-setup.c	16 Sep 2012 11:27:30 -0000
 @@ -1,23 +0,0 @@
 ---- util/i386/pc/grub-setup.c.orig	2010-03-06 12:51:37.000000000 -0800
 -+++ util/i386/pc/grub-setup.c	2010-10-10 02:56:55.000000000 -0700
 -@@ -38,7 +38,8 @@
 - #include <grub/util/getroot.h>
 -=20
 - static const grub_gpt_part_type_t grub_gpt_partition_type_bios_boot =3D G=
 RUB_GPT_PARTITION_TYPE_BIOS_BOOT;
 --
 -+static const grub_gpt_part_type_t grub_gpt_partition_type_freebsd_boot =
 =3D GRUB_GPT_PARTITION_TYPE_FREEBSD_BOOT;
 -+static const grub_gpt_part_type_t grub_gpt_partition_type_solaris_boot =
 =3D GRUB_GPT_PARTITION_TYPE_SOLARIS_BOOT;
 - #include <grub_setup_init.h>
 -=20
 - #include <stdio.h>
 -@@ -138,7 +139,9 @@
 -       struct grub_gpt_partentry *gptdata =3D p->data;
 -=20
 -       /* If there's an embed region, it is in a dedicated partition.  */
 --      if (! memcmp (&gptdata->type, &grub_gpt_partition_type_bios_boot, 1=
 6))
 -+      if (! memcmp (&gptdata->type, &grub_gpt_partition_type_bios_boot, 1=
 6) ||=20
 -+	      ! memcmp (&gptdata->type, &grub_gpt_partition_type_freebsd_boot, 1=
 6) ||
 -+		  ! memcmp (&gptdata->type, &grub_gpt_partition_type_solaris_boot, 16))
 - 	{
 - 	  embed_region.start =3D p->start;
 - 	  embed_region.end =3D p->start + p->len;
 Index: files/patch-Makefile.util.am
 @@ -0,0 +1,254 @@
 +--- Makefile.util.am.orig
 ++++ Makefile.util.am
 +@@ -185,7 +185,7 @@ endif
 +=20
 + if COND_emu
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -197,7 +197,7 @@ endif
 +=20
 + if COND_i386_pc
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -209,7 +209,7 @@ endif
 +=20
 + if COND_i386_efi
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -221,7 +221,7 @@ endif
 +=20
 + if COND_i386_qemu
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -233,7 +233,7 @@ endif
 +=20
 + if COND_i386_coreboot
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -245,7 +245,7 @@ endif
 +=20
 + if COND_i386_multiboot
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -257,7 +257,7 @@ endif
 +=20
 + if COND_i386_ieee1275
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -269,7 +269,7 @@ endif
 +=20
 + if COND_x86_64_efi
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -281,7 +281,7 @@ endif
 +=20
 + if COND_mips_loongson
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -293,7 +293,7 @@ endif
 +=20
 + if COND_sparc64_ieee1275
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -305,7 +305,7 @@ endif
 +=20
 + if COND_powerpc_ieee1275
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -317,7 +317,7 @@ endif
 +=20
 + if COND_mips_arc
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -329,7 +329,7 @@ endif
 +=20
 + if COND_ia64_efi
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -341,7 +341,7 @@ endif
 +=20
 + if COND_mips_qemu_mips
 + noinst_LIBRARIES +=3D libgrubmods.a
 +-libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/zfs_fletcher.c grub-core/lib=
 /envblk.c grub-core/lib/hexdump.c grub-core/lib/LzFind.c grub-core/lib/Lzma=
 Enc.c grub-core/lib/crc.c grub-core/lib/adler32.c grub-core/lib/crc64.c gru=
 b-core/normal/datetime.c grub-core/normal/misc.c grub-core/partmap/acorn.c =
 grub-core/partmap/amiga.c grub-core/partmap/apple.c grub-core/partmap/msdos=
 =2Ec grub-core/partmap/sun.c grub-core/partmap/plan.c grub-core/partmap/dvh=
 =2Ec grub-core/partmap/sunpc.c grub-core/partmap/bsdlabel.c grub-core/scrip=
 t/function.c grub-core/script/lexer.c grub-core/script/main.c grub-core/scr=
 ipt/script.c grub-core/script/argv.c grub-core/io/gzio.c grub-core/io/lzopi=
 o.c grub-core/kern/ia64/dl_helper.c grub-core/lib/minilzo/minilzo.c grub-co=
 re/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz_dec_lzma2.c grub-core/=
 lib/xzembed/xz_dec_stream.c=20
 ++libgrubmods_a_SOURCES +=3D grub-core/commands/blocklist.c grub-core/comma=
 nds/xnu_uuid.c grub-core/commands/testload.c grub-core/commands/ls.c grub-c=
 ore/disk/dmraid_nvidia.c grub-core/disk/loopback.c grub-core/disk/lvm.c gru=
 b-core/disk/mdraid_linux.c grub-core/disk/mdraid_linux_be.c grub-core/disk/=
 mdraid1x_linux.c grub-core/disk/raid5_recover.c grub-core/disk/raid6_recove=
 r.c grub-core/fs/affs.c grub-core/fs/afs.c grub-core/fs/bfs.c grub-core/fs/=
 btrfs.c grub-core/fs/cpio.c grub-core/fs/cpio_be.c grub-core/fs/odc.c grub-=
 core/fs/newc.c grub-core/fs/ext2.c grub-core/fs/fat.c grub-core/fs/exfat.c =
 grub-core/fs/fshelp.c grub-core/fs/hfs.c grub-core/fs/hfsplus.c grub-core/f=
 s/iso9660.c grub-core/fs/jfs.c grub-core/fs/minix.c grub-core/fs/minix2.c g=
 rub-core/fs/minix3.c grub-core/fs/minix_be.c grub-core/fs/minix2_be.c grub-=
 core/fs/minix3_be.c grub-core/fs/nilfs2.c grub-core/fs/ntfs.c grub-core/fs/=
 ntfscomp.c grub-core/fs/reiserfs.c grub-core/fs/romfs.c grub-core/fs/sfs.c =
 grub-core/fs/squash4.c grub-core/fs/tar.c grub-core/fs/udf.c grub-core/fs/u=
 fs2.c grub-core/fs/ufs.c grub-core/fs/xfs.c grub-core/fs/zfs/zfscrypt.c gru=
 b-core/fs/zfs/zfs.c grub-core/fs/zfs/zfsinfo.c grub-core/fs/zfs/zfs_lzjb.c =
 grub-core/fs/zfs/zfs_lz4.c grub-core/fs/zfs/zfs_sha256.c grub-core/fs/zfs/z=
 fs_fletcher.c grub-core/lib/envblk.c grub-core/lib/hexdump.c grub-core/lib/=
 LzFind.c grub-core/lib/LzmaEnc.c grub-core/lib/crc.c grub-core/lib/adler32.=
 c grub-core/lib/crc64.c grub-core/normal/datetime.c grub-core/normal/misc.c=
  grub-core/partmap/acorn.c grub-core/partmap/amiga.c grub-core/partmap/appl=
 e.c grub-core/partmap/msdos.c grub-core/partmap/sun.c grub-core/partmap/pla=
 n.c grub-core/partmap/dvh.c grub-core/partmap/sunpc.c grub-core/partmap/bsd=
 label.c grub-core/script/function.c grub-core/script/lexer.c grub-core/scri=
 pt/main.c grub-core/script/script.c grub-core/script/argv.c grub-core/io/gz=
 io.c grub-core/io/lzopio.c grub-core/kern/ia64/dl_helper.c grub-core/lib/mi=
 nilzo/minilzo.c grub-core/lib/xzembed/xz_dec_bcj.c grub-core/lib/xzembed/xz=
 _dec_lzma2.c grub-core/lib/xzembed/xz_dec_stream.c=20
 + nodist_libgrubmods_a_SOURCES +=3D grub_script.tab.c grub_script.yy.c libg=
 rub_a_init.c grub_script.yy.h grub_script.tab.h=20
 + libgrubmods_a_CFLAGS +=3D $(AM_CFLAGS) $(CFLAGS_LIBRARY) $(CFLAGS_POSIX) =
 -Wno-undef -Wno-error=3Dmissing-noreturn=20
 + libgrubmods_a_CPPFLAGS +=3D $(AM_CPPFLAGS) $(CPPFLAGS_LIBRARY) -I$(top_sr=
 cdir)/grub-core/lib/minilzo -I$(srcdir)/grub-core/lib/xzembed -DMINILZO_HAV=
 E_CONFIG_H=20
 +@@ -3361,7 +3361,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3386,7 +3386,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3411,7 +3411,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3436,7 +3436,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3461,7 +3461,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3486,7 +3486,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3511,7 +3511,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3536,7 +3536,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3561,7 +3561,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3586,7 +3586,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3611,7 +3611,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3636,7 +3636,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3661,7 +3661,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 +@@ -3686,7 +3686,7 @@ CLEANFILES +=3D grub-mount.1
 + endif
 + grub_mount_SOURCES  =3D util/grub-mount.c grub-core/kern/emu/hostfs.c gru=
 b-core/disk/host.c=20
 + nodist_grub_mount_SOURCES  =3D grub_fstest_init.c=20
 +-grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse=
 =20
 ++grub_mount_LDADD  =3D libgrubmods.a libgrubgcry.a libgrubkern.a grub-core=
 /gnulib/libgnu.a $(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEO=
 M) -lfuse=20
 + grub_mount_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_PROGRAM)=20
 + grub_mount_LDFLAGS  =3D $(AM_LDFLAGS) $(LDFLAGS_PROGRAM)=20
 + grub_mount_CPPFLAGS  =3D $(AM_CPPFLAGS) $(CPPFLAGS_PROGRAM)=20
 Index: files/patch-Makefile.util.def
 @@ -0,0 +1,11 @@
 +--- Makefile.util.def.orig
 ++++ Makefile.util.def
 +@@ -266,7 +266,7 @@ program =3D {
 +   ldadd =3D libgrubgcry.a;
 +   ldadd =3D libgrubkern.a;
 +   ldadd =3D grub-core/gnulib/libgnu.a;
 +-  ldadd =3D '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) -lfuse';
 ++  ldadd =3D '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)=
  -lfuse';
 +   condition =3D COND_GRUB_MOUNT;
 + };
 +=20
 Index: files/patch-configure.ac
 @@ -0,0 +1,35 @@
 +--- configure.ac.orig
 ++++ configure.ac
 +@@ -1044,19 +1044,19 @@ fi
 +=20
 + if test x"$libzfs_excuse" =3D x ; then
 +   # Only check for system headers if libzfs support has not been disabled.
 +-  AC_CHECK_HEADERS(libzfs.h libnvpair.h)
 ++  AC_CHECK_HEADERS(libzfs.h libnvpair.h, [], [], [typedef int boolean_t;])
 + fi
 +=20
 + if test x"$libzfs_excuse" =3D x ; then
 +   AC_CHECK_LIB([zfs], [libzfs_init],
 +                [],
 +-               [libzfs_excuse=3D"need zfs library"])
 ++               [libzfs_excuse=3D"need zfs library"], [-lavl -lnvpair -luu=
 til -lm])
 + fi
 +=20
 + if test x"$libzfs_excuse" =3D x ; then
 +   AC_CHECK_LIB([nvpair], [nvlist_print],
 +                [],
 +-               [libzfs_excuse=3D"need nvpair library"])
 ++               [libzfs_excuse=3D"need nvpair library"], [-lavl -lnvpair -=
 luutil -lm])
 + fi
 +=20
 + if test x"$enable_libzfs" =3D xyes && test x"$libzfs_excuse" !=3D x ; then
 +@@ -1069,6 +1069,9 @@ if test x"$libzfs_excuse" =3D x ; then
 +   AC_DEFINE([HAVE_LIBZFS], [1],
 +             [Define to 1 if you have the ZFS library.])
 +   LIBNVPAIR=3D"-lnvpair"
 ++  if test x$host_kernel =3D xkfreebsd; then
 ++    LIBNVPAIR=3D"$LIBNVPAIR -lavl -luutil -lm"
 ++  fi
 +   AC_DEFINE([HAVE_LIBNVPAIR], [1],
 +             [Define to 1 if you have the NVPAIR library.])
 + fi
 Index: files/patch-grub-2.00-zfs-feature-flag-support
 @@ -0,0 +1,1021 @@
 +From
 +
 +	http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-boot/grub/fil=
 es/grub-2.00-zfs-feature-flag-support.patch
 +
 +ZFS Feature Flag Support
 +
 +This is a monolithic version of the following commits:
 +
 +https://github.com/maxximino/grub2/commit/31a32560fd7948ae5ff5c63105d7c068=
 de7890c8
 +https://github.com/maxximino/grub2/commit/595d76e8ca0690a963f5533689de8db5=
 4ef07e75
 +https://github.com/maxximino/grub2/commit/58344034e40218b20500fa2936eb4d7d=
 019e1e88
 +https://github.com/maxximino/grub2/commit/f98cb078abab2c14bb0766b5a0ceb055=
 683dab81
 +https://github.com/maxximino/grub2/commit/f12806f43a969a654dee7bb89b2e8fd5=
 c42f0e2e
 +
 +A minor change was made to account for d8a0feb6 from upstream. This change
 +prevents a compile time failure that is caused by a change in the callback
 +interface used by mzap_interate().
 +
 +The initial feature flag support patches were written by Delphix while the=
  LZ4
 +support was written by Saso Kiselkov. The work porting this to GRUB2 was d=
 one
 +by Massimo Maggi, while the adaption to Gentoo's GRUB2 package was done by
 +Richard Yao.=20
 +
 +diff --git a/Makefile.util.def b/Makefile.util.def
 +index b80187c..1bf3038 100644
 +--- Makefile.util.def
 ++++ Makefile.util.def
 +@@ -95,6 +95,7 @@ library =3D {
 +   common =3D grub-core/fs/zfs/zfs.c;
 +   common =3D grub-core/fs/zfs/zfsinfo.c;
 +   common =3D grub-core/fs/zfs/zfs_lzjb.c;
 ++  common =3D grub-core/fs/zfs/zfs_lz4.c;
 +   common =3D grub-core/fs/zfs/zfs_sha256.c;
 +   common =3D grub-core/fs/zfs/zfs_fletcher.c;
 +   common =3D grub-core/lib/envblk.c;
 +diff --git a/grub-core/Makefile.core.def b/grub-core/Makefile.core.def
 +index 39e77a4..1550b90 100644
 +--- grub-core/Makefile.core.def
 ++++ grub-core/Makefile.core.def
 +@@ -1186,6 +1186,7 @@ module =3D {
 +   name =3D zfs;
 +   common =3D fs/zfs/zfs.c;
 +   common =3D fs/zfs/zfs_lzjb.c;
 ++  common =3D fs/zfs/zfs_lz4.c;
 +   common =3D fs/zfs/zfs_sha256.c;
 +   common =3D fs/zfs/zfs_fletcher.c;
 + };
 +diff --git a/grub-core/fs/zfs/zfs.c b/grub-core/fs/zfs/zfs.c
 +index ba0554a..de31e6c 100644
 +--- grub-core/fs/zfs/zfs.c
 ++++ grub-core/fs/zfs/zfs.c
 +@@ -2,6 +2,7 @@
 +  *  GRUB  --  GRand Unified Bootloader
 +  *  Copyright (C) 1999,2000,2001,2002,2003,2004,2009,2010,2011  Free Soft=
 ware Foundation, Inc.
 +  *  Copyright 2010  Sun Microsystems, Inc.
 ++ *  Copyright (c) 2012 by Delphix. All rights reserved.
 +  *
 +  *  GRUB is free software; you can redistribute it and/or modify
 +  *  it under the terms of the GNU General Public License as published by
 +@@ -153,11 +154,13 @@ ZAP_LEAF_ENTRY(zap_leaf_phys_t *l, int bs, int idx)
 +=20
 +=20
 + /*
 +- * Decompression Entry - lzjb
 ++ * Decompression Entry - lzjb & lz4
 +  */
 +=20
 + extern grub_err_t lzjb_decompress (void *, void *, grub_size_t, grub_size=
 _t);
 +=20
 ++extern grub_err_t lz4_decompress (void *, void *, grub_size_t, grub_size_=
 t);
 ++
 + typedef grub_err_t zfs_decomp_func_t (void *s_start, void *d_start,
 + 				      grub_size_t s_len, grub_size_t d_len);
 + typedef struct decomp_entry
 +@@ -263,6 +266,19 @@ grub_crypto_cipher_handle_t (*grub_zfs_load_key) (con=
 st struct grub_zfs_key *key
 + 						  grub_size_t keysize,
 + 						  grub_uint64_t salt,
 + 						  grub_uint64_t algo) =3D NULL;
 ++/*
 ++ * List of pool features that the grub implementation of ZFS supports for
 ++ * read. Note that features that are only required for write do not need
 ++ * to be listed here since grub opens pools in read-only mode.
 ++ */
 ++static const char *spa_feature_names[] =3D {
 ++	"org.illumos:lz4_compress",NULL
 ++};
 ++
 ++static int
 ++check_feature(const char *name, grub_uint64_t val);
 ++static int
 ++check_mos_features(dnode_phys_t *mosmdn_phys,grub_zfs_endian_t endian,str=
 uct grub_zfs_data* data );
 +=20
 + static grub_err_t=20
 + zlib_decompress (void *s, void *d,
 +@@ -322,6 +338,7 @@ static decomp_entry_t decomp_table[ZIO_COMPRESS_FUNCTI=
 ONS] =3D {
 +   {"gzip-8", zlib_decompress},  /* ZIO_COMPRESS_GZIP8 */
 +   {"gzip-9", zlib_decompress},  /* ZIO_COMPRESS_GZIP9 */
 +   {"zle", zle_decompress},      /* ZIO_COMPRESS_ZLE   */
 ++  {"lz4", lz4_decompress},      /* ZIO_COMPRESS_LZ4   */
 + };
 +=20
 + static grub_err_t zio_read_data (blkptr_t * bp, grub_zfs_endian_t endian,
 +@@ -482,15 +499,11 @@ uberblock_verify (uberblock_phys_t * ub, grub_uint64=
 _t offset,
 +=20
 +   if (grub_zfs_to_cpu64 (uber->ub_magic, GRUB_ZFS_LITTLE_ENDIAN)
 +       =3D=3D UBERBLOCK_MAGIC
 +-      && grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_LITTLE_ENDIAN) > 0=
 =20
 +-      && grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_LITTLE_ENDIAN)
 +-      <=3D SPA_VERSION)
 +-    endian =3D GRUB_ZFS_LITTLE_ENDIAN;
 ++      && SPA_VERSION_IS_SUPPORTED(grub_zfs_to_cpu64 (uber->ub_version, GR=
 UB_ZFS_LITTLE_ENDIAN)))
 ++     endian =3D GRUB_ZFS_LITTLE_ENDIAN;
 +=20
 +   if (grub_zfs_to_cpu64 (uber->ub_magic, GRUB_ZFS_BIG_ENDIAN) =3D=3D UBER=
 BLOCK_MAGIC
 +-      && grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_BIG_ENDIAN) > 0=20
 +-      && grub_zfs_to_cpu64 (uber->ub_version, GRUB_ZFS_BIG_ENDIAN)
 +-      <=3D SPA_VERSION)
 ++      && SPA_VERSION_IS_SUPPORTED(grub_zfs_to_cpu64 (uber->ub_version, GR=
 UB_ZFS_BIG_ENDIAN)))
 +     endian =3D GRUB_ZFS_BIG_ENDIAN;
 +=20
 +   if (endian =3D=3D GRUB_ZFS_UNKNOWN_ENDIAN)
 +@@ -764,6 +777,155 @@ fill_vdev_info (struct grub_zfs_data *data,
 + }
 +=20
 + /*
 ++ * For a given XDR packed nvlist, verify the first 4 bytes and move on.
 ++ *
 ++ * An XDR packed nvlist is encoded as (comments from nvs_xdr_create) :
 ++ *
 ++ *      encoding method/host endian     (4 bytes)
 ++ *      nvl_version                     (4 bytes)
 ++ *      nvl_nvflag                      (4 bytes)
 ++ *	encoded nvpairs:
 ++ *		encoded size of the nvpair      (4 bytes)
 ++ *		decoded size of the nvpair      (4 bytes)
 ++ *		name string size                (4 bytes)
 ++ *		name string data                (sizeof(NV_ALIGN4(string))
 ++ *		data type                       (4 bytes)
 ++ *		# of elements in the nvpair     (4 bytes)
 ++ *		data
 ++ *      2 zero's for the last nvpair
 ++ *		(end of the entire list)	(8 bytes)
 ++ *
 ++ */
 ++
 ++/*
 ++ * The nvlist_next_nvpair() function returns a handle to the next nvpair =
 in the
 ++ * list following nvpair. If nvpair is NULL, the first pair is returned. =
 If
 ++ * nvpair is the last pair in the nvlist, NULL is returned.
 ++ */
 ++static const char *
 ++nvlist_next_nvpair(const char *nvl, const char *nvpair)
 ++{
 ++	const char *nvp;
 ++	int encode_size;
 ++	int name_len;
 ++	if (nvl =3D=3D NULL)
 ++		return (NULL);
 ++
 ++	if (nvpair =3D=3D NULL) {
 ++		/* skip over header, nvl_version and nvl_nvflag */
 ++		nvpair =3D nvl + 4 * 3;
 ++	} else {
 ++		/* skip to the next nvpair */
 ++		encode_size =3D grub_be_to_cpu32 (grub_get_unaligned32(nvpair));
 ++		nvpair +=3D encode_size;
 ++	}
 ++	/* 8 bytes of 0 marks the end of the list */
 ++	if (*(grub_uint64_t*)nvpair =3D=3D 0)
 ++		return (NULL);
 ++	/*consistency checks*/
 ++	if (nvpair + 4 * 3 >=3D nvl + VDEV_PHYS_SIZE)
 ++	{
 ++	  grub_dprintf ("zfs", "nvlist overflow\n");
 ++	  grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist");
 ++	  return (NULL);
 ++	}
 ++	encode_size =3D grub_be_to_cpu32 (grub_get_unaligned32(nvpair));
 ++
 ++	nvp =3D nvpair + 4*2;
 ++	name_len =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++	nvp +=3D 4;
 ++
 ++	nvp =3D nvp + ((name_len + 3) & ~3); // align=20
 ++	if (nvp + 4 >=3D nvl + VDEV_PHYS_SIZE                       =20
 ++	    || encode_size < 0
 ++	    || nvp + 4 + encode_size > nvl + VDEV_PHYS_SIZE)      =20
 ++	{
 ++	  grub_dprintf ("zfs", "nvlist overflow\n");
 ++	  grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist");
 ++	  return (NULL);
 ++	}
 ++	 /* end consistency checks */
 ++
 ++	return (nvpair);
 ++}
 ++/*
 ++ * This function returns 0 on success and 1 on failure. On success, a str=
 ing
 ++ * containing the name of nvpair is saved in buf.
 ++ */
 ++static int
 ++nvpair_name(const char *nvp, char **buf, int* buflen)
 ++{
 ++	int len;
 ++
 ++	/* skip over encode/decode size */
 ++	nvp +=3D 4 * 2;
 ++
 ++	len =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++	nvp=3Dnvp+4;
 ++=09
 ++	*buf=3D(char*)nvp;
 ++	*buflen=3Dlen;
 ++
 ++	return (0);
 ++}
 ++/*
 ++ * This function retrieves the value of the nvpair in the form of enumera=
 ted
 ++ * type data_type_t.
 ++ */
 ++static int
 ++nvpair_type(const char *nvp)
 ++{
 ++	int name_len, type;
 ++
 ++	/* skip over encode/decode size */
 ++	nvp +=3D 4 * 2;
 ++
 ++	/* skip over name_len */
 ++	name_len =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++	nvp +=3D 4;
 ++
 ++	/* skip over name */
 ++	nvp =3D nvp + ((name_len + 3) & ~3); /* align */
 ++
 ++	type =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++
 ++	return (type);
 ++}
 ++static int
 ++nvpair_value(const char *nvp,char **val,
 ++		   grub_size_t *size_out, grub_size_t *nelm_out)
 ++{
 ++	int name_len,nelm,encode_size;
 ++
 ++	/* skip over encode/decode size */
 ++	encode_size =3D grub_be_to_cpu32 (grub_get_unaligned32(nvp));
 ++	nvp +=3D 8;
 ++
 ++	/* skip over name_len */
 ++	name_len =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++	nvp +=3D 4;
 ++
 ++	/* skip over name */
 ++	nvp =3D nvp + ((name_len + 3) & ~3); /* align */
 ++=09
 ++	/* skip over type */
 ++	nvp +=3D 4;
 ++	nelm =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvp));
 ++	nvp +=3D4;
 ++	if (nelm < 1)
 ++	{
 ++	  grub_error (GRUB_ERR_BAD_FS, "empty nvpair");
 ++	  return 0;
 ++	}
 ++	  *val =3D (char *) nvp;
 ++	  *size_out =3D encode_size;
 ++	  if (nelm_out)
 ++	    *nelm_out =3D nelm;
 ++	   =20
 ++	return 1;
 ++}
 ++
 ++/*
 +  * Check the disk label information and retrieve needed vdev name-value p=
 airs.
 +  *
 +  */
 +@@ -773,7 +935,7 @@ check_pool_label (struct grub_zfs_data *data,
 + 		  int *inserted)
 + {
 +   grub_uint64_t pool_state, txg =3D 0;
 +-  char *nvlist;
 ++  char *nvlist,*features;
 + #if 0
 +   char *nv;
 + #endif
 +@@ -837,13 +999,13 @@ check_pool_label (struct grub_zfs_data *data,
 +     }
 +   grub_dprintf ("zfs", "check 8 passed\n");
 +=20
 +-  if (version > SPA_VERSION)
 ++  if (!SPA_VERSION_IS_SUPPORTED(version))
 +     {
 +       grub_free (nvlist);
 +       return grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET,
 + 			 "too new version %llu > %llu",
 + 			 (unsigned long long) version,
 +-			 (unsigned long long) SPA_VERSION);
 ++			 (unsigned long long) SPA_VERSION_BEFORE_FEATURES);
 +     }
 +   grub_dprintf ("zfs", "check 9 passed\n");
 +=20
 +@@ -893,7 +1055,30 @@ check_pool_label (struct grub_zfs_data *data,
 +     grub_free (nv);
 +   }
 +   grub_dprintf ("zfs", "check 10 passed\n");
 +-
 ++  if ((features=3Dgrub_zfs_nvlist_lookup_nvlist(nvlist, ZPOOL_CONFIG_FEAT=
 URES_FOR_READ)))
 ++  {
 ++    const char *nvp=3DNULL;
 ++    char *name =3D grub_zalloc(51);
 ++    char *nameptr;
 ++    int namelen;
 ++    while ((nvp =3D nvlist_next_nvpair(features, nvp)) !=3D NULL)
 ++    {
 ++      nvpair_name(nvp, &nameptr,&namelen);
 ++      if(namelen > 50){namelen=3D50;}
 ++      grub_strncpy(name,nameptr,namelen);
 ++      name[namelen]=3D0;
 ++      grub_dprintf("zfs","namelen=3D%u str=3D%s\n",namelen,name);
 ++      if (check_feature(name,1) !=3D 0)
 ++      {
 ++	grub_dprintf("zfs","feature missing in check_pool_label:%s\n",name);
 ++	err=3D grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET," check_pool_label missi=
 ng feature '%s' for read",name);
 ++	grub_free(name);
 ++	return err;
 ++      }
 ++    }
 ++    grub_free(name);
 ++  }
 ++  grub_dprintf ("zfs", "check 12 passed (feature flags)\n");
 +   grub_free (nvlist);
 +=20
 +   return GRUB_ERR_NONE;
 +@@ -3034,34 +3219,14 @@ dnode_get_fullpath (const char *fullpath, struct s=
 ubvolume *subvol,
 +   return err;
 + }
 +=20
 +-/*
 +- * For a given XDR packed nvlist, verify the first 4 bytes and move on.
 +- *
 +- * An XDR packed nvlist is encoded as (comments from nvs_xdr_create) :
 +- *
 +- *      encoding method/host endian     (4 bytes)
 +- *      nvl_version                     (4 bytes)
 +- *      nvl_nvflag                      (4 bytes)
 +- *	encoded nvpairs:
 +- *		encoded size of the nvpair      (4 bytes)
 +- *		decoded size of the nvpair      (4 bytes)
 +- *		name string size                (4 bytes)
 +- *		name string data                (sizeof(NV_ALIGN4(string))
 +- *		data type                       (4 bytes)
 +- *		# of elements in the nvpair     (4 bytes)
 +- *		data
 +- *      2 zero's for the last nvpair
 +- *		(end of the entire list)	(8 bytes)
 +- *
 +- */
 +-
 + static int
 + nvlist_find_value (const char *nvlist_in, const char *name,
 + 		   int valtype, char **val,
 + 		   grub_size_t *size_out, grub_size_t *nelm_out)
 + {
 +-  int name_len, type, encode_size;
 +-  const char *nvpair, *nvp_name, *nvlist =3D nvlist_in;
 ++  int name_len, type ;
 ++  const char *nvpair=3DNULL,*nvlist=3Dnvlist_in;
 ++  char *nvp_name;
 +=20
 +   /* Verify if the 1st and 2nd byte in the nvlist are valid. */
 +   /* NOTE: independently of what endianness header announces all=20
 +@@ -3074,62 +3239,18 @@ nvlist_find_value (const char *nvlist_in, const ch=
 ar *name,
 +       return 0;
 +     }
 +=20
 +-  /* skip the header, nvl_version, and nvl_nvflag */
 +-  nvlist =3D nvlist + 4 * 3;
 +   /*
 +    * Loop thru the nvpair list
 +    * The XDR representation of an integer is in big-endian byte order.
 +    */
 +-  while ((encode_size =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvlist)=
 )))
 ++  while ((nvpair=3Dnvlist_next_nvpair(nvlist,nvpair)))
 +     {
 +-      int nelm;
 +-
 +-      if (nvlist + 4 * 4 >=3D nvlist_in + VDEV_PHYS_SIZE)
 +-	{
 +-	  grub_dprintf ("zfs", "nvlist overflow\n");
 +-	  grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist");
 +-	  return 0;
 +-	}
 +-
 +-      nvpair =3D nvlist + 4 * 2;	/* skip the encode/decode size */
 +-
 +-      name_len =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvpair));
 +-      nvpair +=3D 4;
 +-
 +-      nvp_name =3D nvpair;
 +-      nvpair =3D nvpair + ((name_len + 3) & ~3);	/* align */
 +-
 +-      if (nvpair + 8 >=3D nvlist_in + VDEV_PHYS_SIZE
 +-	  || encode_size < 0
 +-	  || nvpair + 8 + encode_size > nvlist_in + VDEV_PHYS_SIZE)
 ++      nvpair_name(nvpair,&nvp_name,&name_len);
 ++      type =3D nvpair_type(nvpair);
 ++      if ((grub_strncmp (nvp_name, name, grub_strlen(name)) =3D=3D 0) && =
 type =3D=3D valtype)
 + 	{
 +-	  grub_dprintf ("zfs", "nvlist overflow\n");
 +-	  grub_error (GRUB_ERR_BAD_FS, "incorrect nvlist");
 +-	  return 0;
 ++	  return nvpair_value(nvpair,val,size_out,nelm_out);
 + 	}
 +-
 +-      type =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvpair));
 +-      nvpair +=3D 4;
 +-
 +-      nelm =3D grub_be_to_cpu32 (grub_get_unaligned32 (nvpair));
 +-      if (nelm < 1)
 +-	{
 +-	  grub_error (GRUB_ERR_BAD_FS, "empty nvpair");
 +-	  return 0;
 +-	}
 +-
 +-      nvpair +=3D 4;
 +-
 +-      if ((grub_strncmp (nvp_name, name, name_len) =3D=3D 0) && type =3D=
 =3D valtype)
 +-	{
 +-	  *val =3D (char *) nvpair;
 +-	  *size_out =3D encode_size;
 +-	  if (nelm_out)
 +-	    *nelm_out =3D nelm;
 +-	  return 1;
 +-	}
 +-
 +-      nvlist +=3D encode_size;	/* goto the next nvpair */
 +     }
 +   return 0;
 + }
 +@@ -3386,6 +3507,10 @@ zfs_mount (grub_device_t dev)
 +       return NULL;
 +     }
 +=20
 ++    if (ub->ub_version >=3D SPA_VERSION_FEATURES &&
 ++	check_mos_features(&((objset_phys_t *) osp)->os_meta_dnode,ub_endian, da=
 ta) !=3D 0)
 ++	  return NULL;
 ++=09
 +   /* Got the MOS. Save it at the memory addr MOS. */
 +   grub_memmove (&(data->mos.dn), &((objset_phys_t *) osp)->os_meta_dnode,
 + 		DNODE_SIZE);
 +@@ -3910,6 +4035,64 @@ grub_zfs_dir (grub_device_t device, const char *pat=
 h,
 +   return grub_errno;
 + }
 +=20
 ++static int
 ++check_feature(const char *name, grub_uint64_t val)
 ++{
 ++  int i;
 ++  if(val =3D=3D0) return 0;
 ++  if(*name=3D=3D0) return 0;
 ++  for (i =3D 0; spa_feature_names[i] !=3D NULL; i++)=20
 ++  {
 ++    if (grub_strcmp(name, spa_feature_names[i]) =3D=3D 0)=20
 ++        return 0;
 ++  }
 ++  grub_printf("missing feature for read '%s'\n",name);
 ++  return 1;
 ++}
 ++
 ++/*
 ++ * Checks whether the MOS features that are active are supported by this
 ++ * (GRUB's) implementation of ZFS.
 ++ *
 ++ * Return:
 ++ *	0: Success.
 ++ *	errnum: Failure.
 ++ */
 ++	    	  =20
 ++static int
 ++check_mos_features(dnode_phys_t *mosmdn_phys,grub_zfs_endian_t endian,str=
 uct grub_zfs_data* data )
 ++{
 ++  grub_uint64_t objnum;
 ++  grub_uint8_t errnum =3D 0;
 ++  dnode_end_t dn,mosmdn;
 ++  mzap_phys_t* mzp;
 ++  grub_zfs_endian_t endianzap;
 ++  int size;
 ++  grub_memmove(&(mosmdn.dn),mosmdn_phys,sizeof(dnode_phys_t));
 ++  mosmdn.endian=3Dendian;
 ++  if ((errnum =3D dnode_get(&mosmdn, DMU_POOL_DIRECTORY_OBJECT,
 ++	  DMU_OT_OBJECT_DIRECTORY, &dn,data)) !=3D 0)
 ++      return (errnum);
 ++
 ++  /*
 ++   * Find the object number for 'features_for_read' and retrieve its
 ++   * corresponding dnode. Note that we don't check features_for_write
 ++   * because GRUB is not opening the pool for write.
 ++   */
 ++  if ((errnum =3D zap_lookup(&dn, DMU_POOL_FEATURES_FOR_READ, &objnum, da=
 ta,0)) !=3D 0)
 ++      return (errnum);
 ++ =20
 ++  if ((errnum =3D dnode_get(&mosmdn, objnum, DMU_OTN_ZAP_METADATA, &dn, d=
 ata)) !=3D 0)
 ++      return (errnum);
 ++
 ++  if ((errnum =3D dmu_read(&dn, 0, (void**)&mzp, &endianzap,data)) !=3D 0)
 ++      return (errnum);
 ++
 ++  size =3D grub_zfs_to_cpu16 (dn.dn.dn_datablkszsec, dn.endian) << SPA_MI=
 NBLOCKSHIFT;
 ++  return (mzap_iterate(mzp,endianzap, size, check_feature));
 ++}
 ++
 ++
 + #ifdef GRUB_UTIL
 + static grub_err_t
 + grub_zfs_embed (grub_device_t device __attribute__ ((unused)),
 +diff --git a/grub-core/fs/zfs/zfs_lz4.c b/grub-core/fs/zfs/zfs_lz4.c
 +new file mode 100644
 +index 0000000..f199434
 +--- /dev/null
 ++++ grub-core/fs/zfs/zfs_lz4.c
 +@@ -0,0 +1,321 @@
 ++/*
 ++ * LZ4 - Fast LZ compression algorithm
 ++ * Header File
 ++ * Copyright (C) 2011-2013, Yann Collet.
 ++ * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.p=
 hp)
 ++ *
 ++ * Redistribution and use in source and binary forms, with or without
 ++ * modification, are permitted provided that the following conditions are
 ++ * met:
 ++ *
 ++ *     * Redistributions of source code must retain the above copyright
 ++ * notice, this list of conditions and the following disclaimer.
 ++ *     * Redistributions in binary form must reproduce the above
 ++ * copyright notice, this list of conditions and the following disclaimer
 ++ * in the documentation and/or other materials provided with the
 ++ * distribution.
 ++ *
 ++ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 ++ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 ++ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 ++ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 ++ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 ++ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 ++ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 ++ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 ++ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 ++ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 ++ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 ++ *
 ++ * You can contact the author at :
 ++ * - LZ4 homepage : http://fastcompression.blogspot.com/p/lz4.html
 ++ * - LZ4 source repository : http://code.google.com/p/lz4/
 ++ */
 ++
 ++#include <grub/err.h>
 ++#include <grub/mm.h>
 ++#include <grub/misc.h>
 ++#include <grub/types.h>
 ++
 ++static int LZ4_uncompress_unknownOutputSize(const char *source, char *des=
 t,
 ++					    int isize, int maxOutputSize);
 ++
 ++/*
 ++ * CPU Feature Detection
 ++ */
 ++
 ++/* 32 or 64 bits ? */
 ++#if (defined(__x86_64__) || defined(__x86_64) || defined(__amd64__) || \
 ++	defined(__amd64) || defined(__ppc64__) || defined(_WIN64) || \
 ++	defined(__LP64__) || defined(_LP64))
 ++#define	LZ4_ARCH64	1
 ++#else
 ++#define	LZ4_ARCH64	0
 ++#endif
 ++
 ++/*
 ++ * Little Endian or Big Endian?
 ++ * Note: overwrite the below #define if you know your architecture endian=
 ess.
 ++ */
 ++#if (defined(__BIG_ENDIAN__) || defined(__BIG_ENDIAN) || \
 ++	defined(_BIG_ENDIAN) || defined(_ARCH_PPC) || defined(__PPC__) || \
 ++	defined(__PPC) || defined(PPC) || defined(__powerpc__) || \
 ++	defined(__powerpc) || defined(powerpc) || \
 ++	((defined(__BYTE_ORDER__)&&(__BYTE_ORDER__ =3D=3D __ORDER_BIG_ENDIAN__))=
 ))
 ++#define	LZ4_BIG_ENDIAN	1
 ++#else
 ++	/*
 ++	 * Little Endian assumed. PDP Endian and other very rare endian format
 ++	 * are unsupported.
 ++	 */
 ++#endif
 ++
 ++/*
 ++ * Compiler Options
 ++ */
 ++
 ++#if __STDC_VERSION__ >=3D 199901L	/* C99 */
 ++/* "restrict" is a known keyword */
 ++#else
 ++/* Disable restrict */
 ++#ifndef restrict
 ++#define	restrict /* Only if somebody already didn't take care of that.*/
 ++#endif
 ++#endif
 ++
 ++#define	GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
 ++
 ++#define	lz4_bswap16(x) ((unsigned short int) ((((x) >> 8) & 0xffu) \
 ++	| (((x) & 0xffu) << 8)))
 ++
 ++#if (GCC_VERSION >=3D 302) || (__INTEL_COMPILER >=3D 800) || defined(__cl=
 ang__)
 ++#define	expect(expr, value)    (__builtin_expect((expr), (value)))
 ++#else
 ++#define	expect(expr, value)    (expr)
 ++#endif
 ++
 ++#define	likely(expr)	expect((expr) !=3D 0, 1)
 ++#define	unlikely(expr)	expect((expr) !=3D 0, 0)
 ++
 ++/* Basic types */
 ++#define	BYTE	grub_uint8_t
 ++#define	U16	grub_uint16_t
 ++#define	U32	grub_uint32_t
 ++#define	S32	grub_int32_t
 ++#define	U64	grub_uint64_t
 ++typedef grub_size_t size_t;
 ++
 ++typedef struct _U16_S {
 ++	U16 v;
 ++} U16_S;
 ++typedef struct _U32_S {
 ++	U32 v;
 ++} U32_S;
 ++typedef struct _U64_S {
 ++	U64 v;
 ++} U64_S;
 ++
 ++#define	A64(x)	(((U64_S *)(x))->v)
 ++#define	A32(x)	(((U32_S *)(x))->v)
 ++#define	A16(x)	(((U16_S *)(x))->v)
 ++
 ++/*
 ++ * Constants
 ++ */
 ++#define	MINMATCH 4
 ++
 ++#define	COPYLENGTH 8
 ++#define	LASTLITERALS 5
 ++
 ++#define	ML_BITS 4
 ++#define	ML_MASK ((1U<<ML_BITS)-1)
 ++#define	RUN_BITS (8-ML_BITS)
 ++#define	RUN_MASK ((1U<<RUN_BITS)-1)
 ++
 ++/*
 ++ * Architecture-specific macros
 ++ */
 ++#if LZ4_ARCH64
 ++#define	STEPSIZE 8
 ++#define	UARCH U64
 ++#define	AARCH A64
 ++#define	LZ4_COPYSTEP(s, d)	A64(d) =3D A64(s); d +=3D 8; s +=3D 8;
 ++#define	LZ4_COPYPACKET(s, d)	LZ4_COPYSTEP(s, d)
 ++#define	LZ4_SECURECOPY(s, d, e)	if (d < e) LZ4_WILDCOPY(s, d, e)
 ++#define	HTYPE U32
 ++#define	INITBASE(base)		const BYTE* const base =3D ip
 ++#else
 ++#define	STEPSIZE 4
 ++#define	UARCH U32
 ++#define	AARCH A32
 ++#define	LZ4_COPYSTEP(s, d)	A32(d) =3D A32(s); d +=3D 4; s +=3D 4;
 ++#define	LZ4_COPYPACKET(s, d)	LZ4_COPYSTEP(s, d); LZ4_COPYSTEP(s, d);
 ++#define	LZ4_SECURECOPY		LZ4_WILDCOPY
 ++#define	HTYPE const BYTE*
 ++#define	INITBASE(base)		const int base =3D 0
 ++#endif
 ++
 ++#if (defined(LZ4_BIG_ENDIAN) && !defined(BIG_ENDIAN_NATIVE_BUT_INCOMPATIB=
 LE))
 ++#define	LZ4_READ_LITTLEENDIAN_16(d, s, p) \
 ++	{ U16 v =3D A16(p); v =3D lz4_bswap16(v); d =3D (s) - v; }
 ++#define	LZ4_WRITE_LITTLEENDIAN_16(p, i) \
 ++	{ U16 v =3D (U16)(i); v =3D lz4_bswap16(v); A16(p) =3D v; p +=3D 2; }
 ++#else
 ++#define	LZ4_READ_LITTLEENDIAN_16(d, s, p) { d =3D (s) - A16(p); }
 ++#define	LZ4_WRITE_LITTLEENDIAN_16(p, v)  { A16(p) =3D v; p +=3D 2; }
 ++#endif
 ++
 ++/* Macros */
 ++#define	LZ4_WILDCOPY(s, d, e) do { LZ4_COPYPACKET(s, d) } while (d < e);
 ++
 ++/* Decompression functions */
 ++grub_err_t
 ++lz4_decompress(void *s_start, void *d_start, size_t s_len, size_t d_len);
 ++
 ++grub_err_t
 ++lz4_decompress(void *s_start, void *d_start, size_t s_len, size_t d_len)
 ++{
 ++	const BYTE *src =3D s_start;
 ++	U32 bufsiz =3D (src[0] << 24) | (src[1] << 16) | (src[2] << 8) |
 ++	    src[3];
 ++
 ++	/* invalid compressed buffer size encoded at start */
 ++	if (bufsiz + 4 > s_len)
 ++		return grub_error(GRUB_ERR_BAD_FS,"lz4 decompression failed.");
 ++
 ++	/*
 ++	 * Returns 0 on success (decompression function returned non-negative)
 ++	 * and appropriate error on failure (decompression function returned neg=
 ative).
 ++	 */
 ++	return (LZ4_uncompress_unknownOutputSize((char*)s_start + 4, d_start, bu=
 fsiz,
 ++	    d_len) < 0)?grub_error(GRUB_ERR_BAD_FS,"lz4 decompression failed."):=
 0;
 ++}
 ++
 ++static int
 ++LZ4_uncompress_unknownOutputSize(const char *source,
 ++    char *dest, int isize, int maxOutputSize)
 ++{
 ++	/* Local Variables */
 ++	const BYTE *restrict ip =3D (const BYTE *) source;
 ++	const BYTE *const iend =3D ip + isize;
 ++	const BYTE *restrict ref;
 ++
 ++	BYTE *restrict op =3D (BYTE *) dest;
 ++	BYTE *const oend =3D op + maxOutputSize;
 ++	BYTE *cpy;
 ++
 ++	size_t dec[] =3D { 0, 3, 2, 3, 0, 0, 0, 0 };
 ++
 ++	/* Main Loop */
 ++	while (ip < iend) {
 ++		BYTE token;
 ++		int length;
 ++
 ++		/* get runlength */
 ++		token =3D *ip++;
 ++		if ((length =3D (token >> ML_BITS)) =3D=3D RUN_MASK) {
 ++			int s =3D 255;
 ++			while ((ip < iend) && (s =3D=3D 255)) {
 ++				s =3D *ip++;
 ++				length +=3D s;
 ++			}
 ++		}
 ++		/* copy literals */
 ++		cpy =3D op + length;
 ++		if ((cpy > oend - COPYLENGTH) ||
 ++		    (ip + length > iend - COPYLENGTH)) {
 ++			if (cpy > oend)
 ++				/*
 ++				 * Error: request to write beyond destination
 ++				 * buffer.
 ++				 */
 ++				goto _output_error;
 ++			if (ip + length > iend)
 ++				/*
 ++				 * Error : request to read beyond source
 ++				 * buffer.
 ++				 */
 ++				goto _output_error;
 ++			grub_memcpy(op, ip, length);
 ++			op +=3D length;
 ++			ip +=3D length;
 ++			if (ip < iend)
 ++				/* Error : LZ4 format violation */
 ++				goto _output_error;
 ++			/* Necessarily EOF, due to parsing restrictions. */
 ++			break;
 ++		}
 ++		LZ4_WILDCOPY(ip, op, cpy);
 ++		ip -=3D (op - cpy);
 ++		op =3D cpy;
 ++
 ++		/* get offset */
 ++		LZ4_READ_LITTLEENDIAN_16(ref, cpy, ip);
 ++		ip +=3D 2;
 ++		if (ref < (BYTE * const) dest)
 ++			/*
 ++			 * Error: offset creates reference outside of
 ++			 * destination buffer.
 ++			 */
 ++			goto _output_error;
 ++
 ++		/* get matchlength */
 ++		if ((length =3D (token & ML_MASK)) =3D=3D ML_MASK) {
 ++			while (ip < iend) {
 ++				int s =3D *ip++;
 ++				length +=3D s;
 ++				if (s =3D=3D 255)
 ++					continue;
 ++				break;
 ++			}
 ++		}
 ++		/* copy repeated sequence */
 ++		if unlikely(op - ref < STEPSIZE) {
 ++#if LZ4_ARCH64
 ++			size_t dec2table[] =3D { 0, 0, 0, -1, 0, 1, 2, 3 };
 ++			size_t dec2 =3D dec2table[op - ref];
 ++#else
 ++			const int dec2 =3D 0;
 ++#endif
 ++			*op++ =3D *ref++;
 ++			*op++ =3D *ref++;
 ++			*op++ =3D *ref++;
 ++			*op++ =3D *ref++;
 ++			ref -=3D dec[op - ref];
 ++			A32(op) =3D A32(ref);
 ++			op +=3D STEPSIZE - 4;
 ++			ref -=3D dec2;
 ++		} else {
 ++			LZ4_COPYSTEP(ref, op);
 ++		}
 ++		cpy =3D op + length - (STEPSIZE - 4);
 ++		if (cpy > oend - COPYLENGTH) {
 ++			if (cpy > oend)
 ++				/*
 ++				 * Error: request to write outside of
 ++				 * destination buffer.
 ++				 */
 ++				goto _output_error;
 ++			LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH));
 ++			while (op < cpy)
 ++				*op++ =3D *ref++;
 ++			op =3D cpy;
 ++			if (op =3D=3D oend)
 ++				/*
 ++				 * Check EOF (should never happen, since last
 ++				 * 5 bytes are supposed to be literals).
 ++				 */
 ++				break;
 ++			continue;
 ++		}
 ++		LZ4_SECURECOPY(ref, op, cpy);
 ++		op =3D cpy;	/* correction */
 ++	}
 ++
 ++	/* end of decoding */
 ++	return (int)(((char *)op) - dest);
 ++
 ++	/* write overflow error detected */
 ++	_output_error:
 ++	return (int)(-(((char *)ip) - source));
 ++}
 +diff --git a/grub-core/fs/zfs/zfsinfo.c b/grub-core/fs/zfs/zfsinfo.c
 +index fdb587a..c96bf21 100644
 +--- grub-core/fs/zfs/zfsinfo.c
 ++++ grub-core/fs/zfs/zfsinfo.c
 +@@ -132,21 +132,31 @@ print_vdev_info (char *nvlist, int tab)
 +       grub_free (path);
 +       return GRUB_ERR_NONE;
 +     }
 ++  char is_mirror=3D(grub_strcmp(type,VDEV_TYPE_MIRROR) =3D=3D 0);
 ++  char is_raidz=3D(grub_strcmp(type,VDEV_TYPE_RAIDZ) =3D=3D 0);
 +=20
 +-  if (grub_strcmp (type, VDEV_TYPE_MIRROR) =3D=3D 0)
 ++  if (is_mirror || is_raidz)
 +     {
 +       int nelm, i;
 +=20
 +       nelm =3D grub_zfs_nvlist_lookup_nvlist_array_get_nelm
 + 	(nvlist, ZPOOL_CONFIG_CHILDREN);
 +=20
 ++      if(is_mirror){
 ++	 grub_puts_ (N_("This VDEV is a mirror"));
 ++      }
 ++      else if(is_raidz){
 ++	 grub_uint64_t parity;
 ++	 grub_zfs_nvlist_lookup_uint64(nvlist,"nparity",&parity);
 ++	 grub_printf_ (N_("This VDEV is a RAIDZ%llu\n"),(unsigned long long)pari=
 ty);
 ++      }
 +       print_tabs (tab);
 +       if (nelm <=3D 0)
 + 	{
 +-	  grub_puts_ (N_("Incorrect mirror"));
 ++	  grub_puts_ (N_("Incorrect VDEV"));
 + 	  return GRUB_ERR_NONE;
 + 	}
 +-      grub_printf_ (N_("Mirror with %d children\n"), nelm);
 ++      grub_printf_ (N_("VDEV with %d children\n"), nelm);
 +       print_state (nvlist, tab);
 +       for (i =3D 0; i < nelm; i++)
 + 	{
 +@@ -162,14 +172,14 @@ print_vdev_info (char *nvlist, int tab)
 + 		 total element number. And the number itself is fine,
 + 		 only the element isn't.
 + 	      */
 +-	      grub_printf_ (N_("Mirror element number %d isn't correct\n"), i);
 ++	      grub_printf_ (N_("VDEV element number %d isn't correct\n"), i);
 + 	      continue;
 + 	    }
 +=20
 + 	  /* TRANSLATORS: it's the element carying the number %d, not
 + 	     total element number. This is used in enumeration
 + 	     "Element number 1", "Element number 2", ... */
 +-	  grub_printf_ (N_("Mirror element number %d:\n"), i);
 ++	  grub_printf_ (N_("VDEV element number %d:\n"), i);
 + 	  print_vdev_info (child, tab + 1);
 +=20
 + 	  grub_free (child);
 +diff --git a/include/grub/zfs/dmu.h b/include/grub/zfs/dmu.h
 +index 8fc6dc5..4ad616c 100644
 +--- include/grub/zfs/dmu.h
 ++++ include/grub/zfs/dmu.h
 +@@ -22,6 +22,39 @@
 +=20
 + #ifndef	_SYS_DMU_H
 + #define	_SYS_DMU_H
 ++#define	B_FALSE	0
 ++#define	B_TRUE	1
 ++
 ++#define	DMU_OT_NEWTYPE 0x80
 ++#define	DMU_OT_METADATA 0x40
 ++#define	DMU_OT_BYTESWAP_MASK 0x3f
 ++
 ++#define	DMU_OT(byteswap, metadata) \
 ++	(DMU_OT_NEWTYPE | \
 ++	((metadata) ? DMU_OT_METADATA : 0) | \
 ++	((byteswap) & DMU_OT_BYTESWAP_MASK))
 ++
 ++#define	DMU_OT_IS_VALID(ot) (((ot) & DMU_OT_NEWTYPE) ? \
 ++	((ot) & DMU_OT_BYTESWAP_MASK) < DMU_BSWAP_NUMFUNCS : \
 ++	(ot) < DMU_OT_NUMTYPES)
 ++
 ++#define	DMU_OT_IS_METADATA(ot) (((ot) & DMU_OT_NEWTYPE) ? \
 ++	((ot) & DMU_OT_METADATA) : \
 ++	dmu_ot[(ot)].ot_metadata)
 ++
 ++typedef enum dmu_object_byteswap {
 ++	DMU_BSWAP_UINT8,
 ++	DMU_BSWAP_UINT16,
 ++	DMU_BSWAP_UINT32,
 ++	DMU_BSWAP_UINT64,
 ++	DMU_BSWAP_ZAP,
 ++	DMU_BSWAP_DNODE,
 ++	DMU_BSWAP_OBJSET,
 ++	DMU_BSWAP_ZNODE,
 ++	DMU_BSWAP_OLDACL,
 ++	DMU_BSWAP_ACL,
 ++	DMU_BSWAP_NUMFUNCS
 ++} dmu_object_byteswap_t;
 +=20
 + /*
 +  * This file describes the interface that the DMU provides for its
 +@@ -89,7 +122,17 @@ typedef enum dmu_object_type {
 + 	DMU_OT_SA_ATTR_REGISTRATION,	/* ZAP */
 + 	DMU_OT_SA_ATTR_LAYOUTS,		/* ZAP */
 + 	DMU_OT_DSL_KEYCHAIN =3D 54,
 +-	DMU_OT_NUMTYPES
 ++	DMU_OT_NUMTYPES,
 ++	DMU_OTN_UINT8_DATA =3D DMU_OT(DMU_BSWAP_UINT8, B_FALSE),
 ++	DMU_OTN_UINT8_METADATA =3D DMU_OT(DMU_BSWAP_UINT8, B_TRUE),
 ++	DMU_OTN_UINT16_DATA =3D DMU_OT(DMU_BSWAP_UINT16, B_FALSE),
 ++	DMU_OTN_UINT16_METADATA =3D DMU_OT(DMU_BSWAP_UINT16, B_TRUE),
 ++	DMU_OTN_UINT32_DATA =3D DMU_OT(DMU_BSWAP_UINT32, B_FALSE),
 ++	DMU_OTN_UINT32_METADATA =3D DMU_OT(DMU_BSWAP_UINT32, B_TRUE),
 ++	DMU_OTN_UINT64_DATA =3D DMU_OT(DMU_BSWAP_UINT64, B_FALSE),
 ++	DMU_OTN_UINT64_METADATA =3D DMU_OT(DMU_BSWAP_UINT64, B_TRUE),
 ++	DMU_OTN_ZAP_DATA =3D DMU_OT(DMU_BSWAP_ZAP, B_FALSE),
 ++	DMU_OTN_ZAP_METADATA =3D DMU_OT(DMU_BSWAP_ZAP, B_TRUE),
 + } dmu_object_type_t;
 +=20
 + typedef enum dmu_objset_type {
 +@@ -116,5 +159,6 @@ typedef enum dmu_objset_type {
 + #define	DMU_POOL_HISTORY		"history"
 + #define	DMU_POOL_PROPS			"pool_props"
 + #define	DMU_POOL_L2CACHE		"l2cache"
 ++#define	DMU_POOL_FEATURES_FOR_READ	"features_for_read"
 +=20
 + #endif	/* _SYS_DMU_H */
 +diff --git a/include/grub/zfs/zfs.h b/include/grub/zfs/zfs.h
 +index e326c8b..761ade7 100644
 +--- include/grub/zfs/zfs.h
 ++++ include/grub/zfs/zfs.h
 +@@ -36,8 +36,13 @@ typedef enum grub_zfs_endian
 + /*
 +  * On-disk version number.
 +  */
 +-#define	SPA_VERSION			33ULL
 +-
 ++#define	SPA_VERSION_INITIAL		1ULL
 ++#define	SPA_VERSION_BEFORE_FEATURES	33ULL
 ++#define	SPA_VERSION			5000ULL
 ++#define	SPA_VERSION_FEATURES		5000ULL
 ++#define	SPA_VERSION_IS_SUPPORTED(v) \
 ++	(((v) >=3D SPA_VERSION_INITIAL && (v) <=3D SPA_VERSION_BEFORE_FEATURES) =
 || \
 ++	((v) >=3D SPA_VERSION_FEATURES && (v) <=3D SPA_VERSION))
 + /*
 +  * The following are configuration names used in the nvlist describing a =
 pool's
 +  * configuration.
 +@@ -76,6 +81,7 @@ typedef enum grub_zfs_endian
 + #define	ZPOOL_CONFIG_DDT_HISTOGRAM	"ddt_histogram"
 + #define	ZPOOL_CONFIG_DDT_OBJ_STATS	"ddt_object_stats"
 + #define	ZPOOL_CONFIG_DDT_STATS		"ddt_stats"
 ++#define	ZPOOL_CONFIG_FEATURES_FOR_READ	"features_for_read"
 + /*
 +  * The persistent vdev state is stored as separate values rather than a s=
 ingle
 +  * 'vdev_state' entry.  This is because a device can be in multiple state=
 s, such
 +diff --git a/include/grub/zfs/zio.h b/include/grub/zfs/zio.h
 +index b1c46da..8fad2cc 100644
 +--- include/grub/zfs/zio.h
 ++++ include/grub/zfs/zio.h
 +@@ -88,6 +88,7 @@ enum zio_compress {
 + 	ZIO_COMPRESS_GZIP8,
 + 	ZIO_COMPRESS_GZIP9,
 + 	ZIO_COMPRESS_ZLE,
 ++	ZIO_COMPRESS_LZ4,
 + 	ZIO_COMPRESS_FUNCTIONS
 + };
 +=20
 +diff --git a/po/POTFILES.in b/po/POTFILES.in
 +index 987b37a..c55d9e3 100644
 +--- po/POTFILES.in
 ++++ po/POTFILES.in
 +@@ -173,6 +173,7 @@
 + ./grub-core/fs/zfs/zfs_fletcher.c
 + ./grub-core/fs/zfs/zfsinfo.c
 + ./grub-core/fs/zfs/zfs_lzjb.c
 ++./grub-core/fs/zfs/zfs_lz4.c
 + ./grub-core/fs/zfs/zfs_sha256.c
 + ./grub-core/gdb/cstub.c
 + ./grub-core/gdb/gdb.c
 Index: files/patch-grub-core-Makefile.core.am
 @@ -0,0 +1,128 @@
 +--- grub-core/Makefile.core.am.orig
 ++++ grub-core/Makefile.core.am
 +@@ -32004,7 +32004,7 @@ endif
 + if COND_emu
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32026,7 +32026,7 @@ endif
 + if COND_i386_pc
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32048,7 +32048,7 @@ endif
 + if COND_i386_efi
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32070,7 +32070,7 @@ endif
 + if COND_i386_qemu
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32092,7 +32092,7 @@ endif
 + if COND_i386_coreboot
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32114,7 +32114,7 @@ endif
 + if COND_i386_multiboot
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32136,7 +32136,7 @@ endif
 + if COND_i386_ieee1275
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32158,7 +32158,7 @@ endif
 + if COND_x86_64_efi
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32180,7 +32180,7 @@ endif
 + if COND_mips_loongson
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32202,7 +32202,7 @@ endif
 + if COND_sparc64_ieee1275
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32224,7 +32224,7 @@ endif
 + if COND_powerpc_ieee1275
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32246,7 +32246,7 @@ endif
 + if COND_mips_arc
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32268,7 +32268,7 @@ endif
 + if COND_ia64_efi
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 +@@ -32290,7 +32290,7 @@ endif
 + if COND_mips_qemu_mips
 + platform_PROGRAMS +=3D zfs.module
 + MODULE_FILES +=3D zfs.module$(EXEEXT)
 +-zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_sha256.=
 c fs/zfs/zfs_fletcher.c  ## platform sources
 ++zfs_module_SOURCES  =3D fs/zfs/zfs.c fs/zfs/zfs_lzjb.c fs/zfs/zfs_lz4.c f=
 s/zfs/zfs_sha256.c fs/zfs/zfs_fletcher.c  ## platform sources
 + nodist_zfs_module_SOURCES  =3D  ## platform nodist sources
 + zfs_module_LDADD  =3D=20
 + zfs_module_CFLAGS  =3D $(AM_CFLAGS) $(CFLAGS_MODULE)=20
 Index: files/patch-grub-core-gnulib-Makefile.am
 @@ -0,0 +1,18 @@
 +--- grub-core/gnulib/Makefile.am.orig
 ++++ grub-core/gnulib/Makefile.am
 +@@ -404,13 +404,13 @@ all-local: charset.alias ref-add.sed ref
 +=20
 + charset_alias =3D $(DESTDIR)$(libdir)/charset.alias
 + charset_tmp =3D $(DESTDIR)$(libdir)/charset.tmp
 +-install-exec-local: install-exec-localcharset
 ++install-exec-local:=20
 + install-exec-localcharset: all-local
 + 	if test $(GLIBC21) =3D no; then \
 + 	  case '$(host_os)' in \
 + 	    darwin[56]*) \
 + 	      need_charset_alias=3Dtrue ;; \
 +-	    darwin* | cygwin* | mingw* | pw32* | cegcc*) \
 ++	    darwin* | cygwin* | mingw* | pw32* | cegcc* | freebsd*) \
 + 	      need_charset_alias=3Dfalse ;; \
 + 	    *) \
 + 	      need_charset_alias=3Dtrue ;; \
 Index: files/patch-grub-core-gnulib-argp-fmtstream.c
 @@ -0,0 +1,14 @@
 +--- grub-core/gnulib/argp-fmtstream.c.orig
 ++++ grub-core/gnulib/argp-fmtstream.c
 +@@ -47,7 +47,11 @@
 + #endif
 +=20
 + #define INIT_BUF_SIZE 200
 ++#ifdef __FreeBSD__
 ++#define PRINTF_SIZE_GUESS 32767
 ++#else
 + #define PRINTF_SIZE_GUESS 150
 ++#endif
 + =0C
 + /* Return an argp_fmtstream that outputs to STREAM, and which prefixes li=
 nes
 +    written on it with LMARGIN spaces and limits them to RMARGIN columns
 Index: files/patch-grub-core-loader-i386-bsd.c
 @@ -0,0 +1,49 @@
 +=3D=3D=3D modified file 'grub-core/loader/i386/bsd.c'
 +--- grub-core/loader/i386/bsd.c	2012-06-07 14:41:52 +0000
 ++++ grub-core/loader/i386/bsd.c	2012-07-21 17:44:45 +0000
 +@@ -1309,7 +1309,7 @@
 +       && phdr->p_type !=3D PT_DYNAMIC)
 +       return 0;
 +=20
 +-  paddr =3D phdr->p_paddr & 0xFFFFFF;
 ++  paddr =3D phdr->p_paddr & 0xFFFFFFF;
 +=20
 +   if (paddr < kern_start)
 +     kern_start =3D paddr;
 +@@ -1333,7 +1333,7 @@
 +     }
 +=20
 +   *do_load =3D 1;
 +-  phdr->p_paddr &=3D 0xFFFFFF;
 ++  phdr->p_paddr &=3D 0xFFFFFFF;
 +   paddr =3D phdr->p_paddr;
 +=20
 +   *addr =3D (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chu=
 nk_src);
 +@@ -1351,7 +1351,7 @@
 +       && phdr->p_type !=3D PT_DYNAMIC)
 +     return 0;
 +=20
 +-  paddr =3D phdr->p_paddr & 0xffffff;
 ++  paddr =3D phdr->p_paddr & 0xfffffff;
 +=20
 +   if (paddr < kern_start)
 +     kern_start =3D paddr;
 +@@ -1375,7 +1375,7 @@
 +     }
 +=20
 +   *do_load =3D 1;
 +-  paddr =3D phdr->p_paddr & 0xffffff;
 ++  paddr =3D phdr->p_paddr & 0xfffffff;
 +=20
 +   *addr =3D (grub_addr_t) (paddr - kern_start + (grub_uint8_t *) kern_chu=
 nk_src);
 +=20
 +@@ -1394,7 +1394,7 @@
 +     {
 +       grub_relocator_chunk_t ch;
 +=20
 +-      entry =3D elf->ehdr.ehdr32.e_entry & 0xFFFFFF;
 ++      entry =3D elf->ehdr.ehdr32.e_entry & 0xFFFFFFF;
 +       err =3D grub_elf32_phdr_iterate (elf, filename,
 + 				     grub_bsd_elf32_size_hook, NULL);
 +       if (err)
 +
 Index: files/patch-include-grub-util-libzfs.h
 @@ -0,0 +1,12 @@
 +--- include/grub/util/libzfs.h.orig
 ++++ include/grub/util/libzfs.h
 +@@ -22,6 +22,9 @@
 + #include <config.h>
 +=20
 + #ifdef HAVE_LIBZFS_H
 ++#ifdef __FreeBSD__
 ++typedef int boolean_t;
 ++#endif
 + #include <libzfs.h>
 + #else /* ! HAVE_LIBZFS_H */
 +=20
 
 --XsQoSWH+UP9D9v3l--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201304082040.r38Ke17Y067344>