diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-06-30 08:49:38 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-06-30 08:49:38 +0100 |
commit | b2be182d49eea46686b5cf2680d457df61e89dc4 (patch) | |
tree | c66442ced2011c5ca81c3114cc51041e314c6d33 /sys-boot/grub | |
parent | e23cdda4dbb0c83b9e682ab5e916085a35203da5 (diff) |
gentoo resync : 30.06.2018
Diffstat (limited to 'sys-boot/grub')
-rw-r--r-- | sys-boot/grub/Manifest | 7 | ||||
-rw-r--r-- | sys-boot/grub/files/2.02-xfs-sparse-inodes.patch | 60 | ||||
-rw-r--r-- | sys-boot/grub/grub-2.02-r1.ebuild | 4 | ||||
-rw-r--r-- | sys-boot/grub/grub-2.02-r2.ebuild (renamed from sys-boot/grub/grub-2.02.ebuild) | 42 | ||||
-rw-r--r-- | sys-boot/grub/grub-9999.ebuild | 4 |
5 files changed, 96 insertions, 21 deletions
diff --git a/sys-boot/grub/Manifest b/sys-boot/grub/Manifest index 306795ee0e84..821cbef6ef87 100644 --- a/sys-boot/grub/Manifest +++ b/sys-boot/grub/Manifest @@ -1,6 +1,7 @@ AUX 2.02-freetype-capitalise-variables.patch 6454 BLAKE2B 7a05448d42c935b6942f2b9ac98eef2ddc2e7bb7e6584516859cd6586dee57911c83c98402b38cfe9044a3c3a79d41d6a86bb0918d1ca8ccf792d5ef93bad258 SHA512 99c8061453f54af0e95361101f6beb2340baef9b5a66c4c4ba78876b978df4b5686190b642090aae41f2ed2d464e267ba598e94c0926a37df3c36d866911a40c AUX 2.02-freetype-pkg-config.patch 7359 BLAKE2B 86ee01b2cb833354377aec3db0dcc05c9950169c9e83b9878018debef925a5238ba19b10ee0ce5124d7884deae8023ee03597e6eb56c244030f2492b5b7f0b1b SHA512 20fd57f8410073db7d6ae5c626266a310be65ca2f5cc4a2a9f2e66cb85a421c883b497e5fc7e3cd5a6ec066531f3ca4b8d837bf64007ade99418958aefd2dcf6 AUX 2.02-multiple-early-initrd.patch 6771 BLAKE2B 088d1178c51ea7526bd7620ae0f8160c10d3673afd0ae3407e35673cb438875e24e13f8455245c36792814751995df1235d975eb036e97813e677250af403a9d SHA512 41450b475fb83ade629d165ae2c30682e5beb2edbfd148c6388bb720241f0682b20aa0456bc624d5e9f5605616ea27fab32a829ede6c8c673e1c88e6b774a5a8 +AUX 2.02-xfs-sparse-inodes.patch 2548 BLAKE2B c3333b82b678bc0a2bfc6594719c89982f97b14b7a2f012814ce2f75e004cda46b8b7c2d4e668c5a52aee7814114a763c4d853d9c75b4322535096ba3c22e256 SHA512 4723c5dd9fd6e9b6c8677e32e4906c7995d695c7e85e834b1b29eb1d9a024678f8fa75846c7b929d1db9b5911b604c69c1b0379cb3b9adc98d5bb6d6719eb2c4 AUX gfxpayload.patch 1118 BLAKE2B 4104fc696535b1c3feba5876bccc64f9b2e52319ee992c59e7f17b8310cc9addf7545630fff78c73ca3f4b0dcd44e1bf69f4df5264d6f58777f7e5aeae93cbcb SHA512 00324825c369902a0383b792cd21e161853eadccbdc5abe2420f2d443bf6a74f72be6c15243107b936acd38c3547387c3771dc2cb566003c4c754c9260b4aa00 AUX grub-0.97-Add-esp-to-list-of-clobbered-registers.patch 1612 BLAKE2B a8169fc73299a2a0bf59d66f0226da436bef249d543d3509d1c45bd355b0beceab66369ea1c5c4b8e78cb8a8084fbabd6fc09da8efdc0ffac427dc67142a5773 SHA512 85241fc4f939cbf6dc9e18b0b68034835bcb4ac7162fa1dc497e169422b66f0320d59d8270bc13c827a325f45d260028276641cff3f12b4d6096e2d33a12261b AUX grub-0.97-ncurses-pkgconfig.patch 799 BLAKE2B da34dca4e6009b6386d66e0b05264293e4095007239558712a0fa7a0b18a8f05112840f1f25355298a67cffe441621e4dbf14a4373d1fe6d91144fad4b799173 SHA512 9456c422e05e75e4221101d66bf1c1ba3efa195ef67872a75790362da825bffe1bcd74c5ff6e3f5a9ccda6b364f02c631c0d513c0de5aa19a78be9bea525c13f @@ -16,7 +17,7 @@ DIST splash.xpm.gz 33856 BLAKE2B e8d0ee91a87ed45f47fa58b07a6476b19ddb3f98ffee41a DIST unifont-9.0.06.pcf.gz 1360354 BLAKE2B 09b96e1711c729ef159d62e3ea7b289ca2d01dc0ea417e35a18b73dc02a23f62ce7821d9761bceee4002d9eeaabd91cfb69bbacc6fbdfdfa00445d18fe8f1d66 SHA512 dd0a1afa72f5204c62055d83f22750c74af38ffafdb8eda8e1f1cf7292e572a14969b8a9a6a2cb336d5bed4ab633f6b5a962c59117a590e4238788959cb82774 EBUILD grub-0.97-r16.ebuild 9596 BLAKE2B ff6e369d331c18300a8a5b73232d5381ffecac3364ce2c789e3db2f510f1d0ebc929994eaafa41cec4193676c39022f4bda868afd95d5ee15dfa61fadba29bf8 SHA512 26aa6178cc463e79cf3416773517e35606aca9d8721da2f6aee0d5b7db223b32e4ca812188a488734784a5725646daceff24b3ae9d8e14452becad1ce25ebff1 EBUILD grub-0.97-r18.ebuild 10141 BLAKE2B 7af15e1634c7e96930a7ddaa72d9ab7adae72a0b62729d65d52fd86262d7a7c2a27e2a59c412733463bccc83e9b30d62408d5bebb30f90c99135c05fabc140e7 SHA512 d9c481f77fa1d2f750b64de8cfa02f52be9a0d563607ca50117e4792add79b21e3fb34dc448beebbbb7a99153b9dc5cad01d447209fae154a8205864593c89d6 -EBUILD grub-2.02-r1.ebuild 7897 BLAKE2B 5d469ccd66ffcbbaa38bcb2e9d6334ed50c8d01b7e4952d0861475b908971560d28908c3a20f7d5b698b31ad368215f910bc6638edd358253b1338448a20f80f SHA512 12a8d9663ba37568da21f974f684e84e8d278ef33de8fd34e92e8d3b4c4fbec81adf69a96143f4c86ea0ad36aa5a6334235ee4e6d33d5b65dc40b836bcec55ac -EBUILD grub-2.02.ebuild 7597 BLAKE2B 31631da1a5c9c871ecfff60f9508bc81b557ed25226b70f31b0157611db6ea237e269f44fc0789215c19c32f4633cb9e0ca1293c3af2dc86b6e6b4ffb78538ed SHA512 d3aa7a602989d0eee9c48ddd527253099cfb81887171c69add1f83fea36bac295147fc11cd9cdd2c06410670c435cf1c3f20303660675aa936668b04178cb8ba -EBUILD grub-9999.ebuild 7755 BLAKE2B b5db9a0dc7b0fddf4320a31bd69450b26acc5e24540ddcc80e9172a0ec70b4141705a20185a2327d5c4edf5a214bbe979c10175d2cb105b45e4c7a94bed57d7e SHA512 19072f01a8e2f7f5f6ed65dd48a6e6120adb2004f49cba33b02e04ee4131cea7f077490f76d484e458f62fd3f719d488ed1d08bad793fc8c4bc4ea5bd31c7792 +EBUILD grub-2.02-r1.ebuild 7887 BLAKE2B 699241391c6c0d6b3a6f29ac8f969e001209fbda1b7f9a0ac7b52a4445356387c4e28341cf13e506cd8fb1e8c1790085f72e64f7e4074ec530dedf3d4b331fef SHA512 b592aee07225d6d4f8631f5196831b902b7d6483cc646146345339bb73c1c68697a25d4581dc2fdb3bf5764deab777cf252e541572c86accaf941d2fc7abc671 +EBUILD grub-2.02-r2.ebuild 7933 BLAKE2B 74ccf88e5255046c454e756cff3f1700e1b2f17ec5f93b98ea4a224b983141dc652f821bed59f45bf54605e1e5adb59b0c5ef64bbcb03ed9b75225b741688300 SHA512 51087b78d4463b8eeffa5ca93ba74114a113398334b4f21d746f347f175cfdb863e19a87d35c23db784062f1440704049235183adad844f451df90f08762d776 +EBUILD grub-9999.ebuild 7745 BLAKE2B 6056b651f5bda56bd64486248d86151635b63a9f2898e55958ce5e1410b6a2df14b39cd7e804cd510c7c2b961daea89a8ad77b85c060925beb8129ab208e39d2 SHA512 3f3fb69a63fb57c476a40c3f2a8c0b86b0739743d52c3da09309de27e6842c0f53c3a6062cb577db32b1d24ab2e41a3baecd89fabc861721af7ac580aa05d7ab MISC metadata.xml 1488 BLAKE2B 3aa41f3c6c45258892bcf2800bfe09b506d11aa69a3071977e58736e496b72b71df579cfcaf1d14a3b81db695aca0bf7dbcc7a18faf1c62dd05f033bdafb00c8 SHA512 71f3e48b73c3d20f213ae928b16499131417562d98b83f2d82a5fb026c8cc06ecddf9db32565d9e1602d4258f7a2cc1796eb523c4cb98fb6b7753328a29e93ba diff --git a/sys-boot/grub/files/2.02-xfs-sparse-inodes.patch b/sys-boot/grub/files/2.02-xfs-sparse-inodes.patch new file mode 100644 index 000000000000..6c6a750b42f0 --- /dev/null +++ b/sys-boot/grub/files/2.02-xfs-sparse-inodes.patch @@ -0,0 +1,60 @@ +From cda0a857dd7a27cd5d621747464bfe71e8727fff Mon Sep 17 00:00:00 2001 +From: Daniel Kiper <daniel.kiper@oracle.com> +Date: Tue, 29 May 2018 16:16:02 +0200 +Subject: xfs: Accept filesystem with sparse inodes + +The sparse inode metadata format became a mkfs.xfs default in +xfsprogs-4.16.0, and such filesystems are now rejected by grub as +containing an incompatible feature. + +In essence, this feature allows xfs to allocate inodes into fragmented +freespace. (Without this feature, if xfs could not allocate contiguous +space for 64 new inodes, inode creation would fail.) + +In practice, the disk format change is restricted to the inode btree, +which as far as I can tell is not used by grub. If all you're doing +today is parsing a directory, reading an inode number, and converting +that inode number to a disk location, then ignoring this feature +should be fine, so I've added it to XFS_SB_FEAT_INCOMPAT_SUPPORTED + +I did some brief testing of this patch by hacking up the regression +tests to completely fragment freespace on the test xfs filesystem, and +then write a large-ish number of inodes to consume any existing +contiguous 64-inode chunk. This way any files the grub tests add and +traverse would be in such a fragmented inode allocation. Tests passed, +but I'm not sure how to cleanly integrate that into the test harness. + +Signed-off-by: Eric Sandeen <sandeen@redhat.com> +Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com> +Tested-by: Chris Murphy <lists@colorremedies.com> +--- + grub-core/fs/xfs.c | 11 ++++++++++- + 1 file changed, 10 insertions(+), 1 deletion(-) + +diff --git a/grub-core/fs/xfs.c b/grub-core/fs/xfs.c +index c6031bd..3b00c74 100644 +--- a/grub-core/fs/xfs.c ++++ b/grub-core/fs/xfs.c +@@ -79,9 +79,18 @@ GRUB_MOD_LICENSE ("GPLv3+"); + #define XFS_SB_FEAT_INCOMPAT_SPINODES (1 << 1) /* sparse inode chunks */ + #define XFS_SB_FEAT_INCOMPAT_META_UUID (1 << 2) /* metadata UUID */ + +-/* We do not currently verify metadata UUID so it is safe to read such filesystem */ ++/* ++ * Directory entries with ftype are explicitly handled by GRUB code. ++ * ++ * We do not currently read the inode btrees, so it is safe to read filesystems ++ * with the XFS_SB_FEAT_INCOMPAT_SPINODES feature. ++ * ++ * We do not currently verify metadata UUID, so it is safe to read filesystems ++ * with the XFS_SB_FEAT_INCOMPAT_META_UUID feature. ++ */ + #define XFS_SB_FEAT_INCOMPAT_SUPPORTED \ + (XFS_SB_FEAT_INCOMPAT_FTYPE | \ ++ XFS_SB_FEAT_INCOMPAT_SPINODES | \ + XFS_SB_FEAT_INCOMPAT_META_UUID) + + struct grub_xfs_sblock +-- +cgit v1.0-41-gc330 + diff --git a/sys-boot/grub/grub-2.02-r1.ebuild b/sys-boot/grub/grub-2.02-r1.ebuild index c8bd4fb84d95..01ea55f70e52 100644 --- a/sys-boot/grub/grub-2.02-r1.ebuild +++ b/sys-boot/grub/grub-2.02-r1.ebuild @@ -16,7 +16,7 @@ if [[ -n ${GRUB_AUTORECONF} ]]; then inherit autotools fi -inherit bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs versionator +inherit bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs if [[ ${PV} != 9999 ]]; then if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then @@ -76,7 +76,7 @@ COMMON_DEPEND=" ) device-mapper? ( >=sys-fs/lvm2-2.02.45 ) libzfs? ( sys-fs/zfs ) - mount? ( sys-fs/fuse ) + mount? ( sys-fs/fuse:0 ) truetype? ( media-libs/freetype:2= ) ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) diff --git a/sys-boot/grub/grub-2.02.ebuild b/sys-boot/grub/grub-2.02-r2.ebuild index 44db1517a9f3..bc92a886e21c 100644 --- a/sys-boot/grub/grub-2.02.ebuild +++ b/sys-boot/grub/grub-2.02-r2.ebuild @@ -1,19 +1,22 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 -if [[ ${PV} == 9999 ]]; then - GRUB_AUTOGEN=1 -fi +GRUB_AUTOGEN=1 +GRUB_AUTORECONF=1 if [[ -n ${GRUB_AUTOGEN} ]]; then PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5} ) + inherit python-any-r1 +fi + +if [[ -n ${GRUB_AUTORECONF} ]]; then WANT_LIBTOOL=none - inherit autotools python-any-r1 + inherit autotools fi -inherit autotools bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs versionator +inherit bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs if [[ ${PV} != 9999 ]]; then if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then @@ -25,7 +28,7 @@ if [[ ${PV} != 9999 ]]; then SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" S=${WORKDIR}/${P%_*} fi - KEYWORDS="amd64 ~arm64 x86" + KEYWORDS="~amd64 ~arm64 ~x86" else inherit git-r3 EGIT_REPO_URI="git://git.sv.gnu.org/grub.git @@ -35,6 +38,10 @@ fi PATCHES=( "${FILESDIR}"/gfxpayload.patch "${FILESDIR}"/grub-2.02_beta2-KERNEL_GLOBS.patch + "${FILESDIR}"/2.02-multiple-early-initrd.patch + "${FILESDIR}"/2.02-freetype-capitalise-variables.patch + "${FILESDIR}"/2.02-freetype-pkg-config.patch + "${FILESDIR}"/2.02-xfs-sparse-inodes.patch ) DEJAVU=dejavu-sans-ttf-2.37 @@ -62,7 +69,7 @@ REQUIRED_USE=" # os-prober: Used on runtime to detect other OSes # xorriso (dev-libs/libisoburn): Used on runtime for mkrescue -RDEPEND=" +COMMON_DEPEND=" app-arch/xz-utils >=sys-libs/ncurses-5.2-r5:0= debug? ( @@ -70,19 +77,22 @@ RDEPEND=" ) device-mapper? ( >=sys-fs/lvm2-2.02.45 ) libzfs? ( sys-fs/zfs ) - mount? ( sys-fs/fuse ) + mount? ( sys-fs/fuse:0 ) truetype? ( media-libs/freetype:2= ) ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) " -DEPEND="${RDEPEND} +DEPEND="${COMMON_DEPEND} ${PYTHON_DEPS} app-misc/pax-utils sys-devel/flex sys-devel/bison sys-apps/help2man sys-apps/texinfo - fonts? ( media-libs/freetype:2 ) + fonts? ( + media-libs/freetype:2 + virtual/pkgconfig + ) grub_platforms_xen? ( app-emulation/xen-tools:= ) grub_platforms_xen-32? ( app-emulation/xen-tools:= ) static? ( @@ -91,6 +101,7 @@ DEPEND="${RDEPEND} app-arch/bzip2[static-libs(+)] media-libs/freetype[static-libs(+)] sys-libs/zlib[static-libs(+)] + virtual/pkgconfig ) ) test? ( @@ -106,9 +117,11 @@ DEPEND="${RDEPEND} themes? ( app-arch/unzip media-libs/freetype:2 + virtual/pkgconfig ) + truetype? ( virtual/pkgconfig ) " -RDEPEND+=" +RDEPEND="${COMMON_DEPEND} kernel_linux? ( grub_platforms_efi-32? ( sys-boot/efibootmgr ) grub_platforms_efi-64? ( sys-boot/efibootmgr ) @@ -117,8 +130,6 @@ RDEPEND+=" nls? ( sys-devel/gettext ) " -DEPEND+=" !!=media-libs/freetype-2.5.4" - RESTRICT="strip !test? ( test )" QA_EXECSTACK="usr/bin/grub*-emu* usr/lib/grub/*" @@ -153,6 +164,9 @@ src_prepare() { if [[ -n ${GRUB_AUTOGEN} ]]; then python_setup bash autogen.sh || die + fi + + if [[ -n ${GRUB_AUTORECONF} ]]; then autopoint() { :; } eautoreconf fi diff --git a/sys-boot/grub/grub-9999.ebuild b/sys-boot/grub/grub-9999.ebuild index 8c33dc3f4bbc..e540b36db349 100644 --- a/sys-boot/grub/grub-9999.ebuild +++ b/sys-boot/grub/grub-9999.ebuild @@ -18,7 +18,7 @@ if [[ -n ${GRUB_AUTORECONF} ]]; then inherit autotools fi -inherit bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs versionator +inherit bash-completion-r1 flag-o-matic multibuild pax-utils toolchain-funcs if [[ ${PV} != 9999 ]]; then if [[ ${PV} == *_alpha* || ${PV} == *_beta* || ${PV} == *_rc* ]]; then @@ -74,7 +74,7 @@ COMMON_DEPEND=" ) device-mapper? ( >=sys-fs/lvm2-2.02.45 ) libzfs? ( sys-fs/zfs ) - mount? ( sys-fs/fuse ) + mount? ( sys-fs/fuse:0 ) truetype? ( media-libs/freetype:2= ) ppc? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) ppc64? ( sys-apps/ibm-powerpc-utils sys-apps/powerpc-utils ) |