diff options
author | Lars Wendler <polynomial-c@gentoo.org> | 2021-02-14 19:06:17 +0100 |
---|---|---|
committer | Lars Wendler <polynomial-c@gentoo.org> | 2021-02-14 19:06:38 +0100 |
commit | e6c25c10b42a2e0d7c926bded8c7babe93fa320c (patch) | |
tree | af7d1027decdf600fedba5170fea76f8d7739000 /sys-apps | |
parent | media-libs/gmmlib: fix double KEYWORDS (diff) | |
download | gentoo-e6c25c10b42a2e0d7c926bded8c7babe93fa320c.tar.gz gentoo-e6c25c10b42a2e0d7c926bded8c7babe93fa320c.tar.bz2 gentoo-e6c25c10b42a2e0d7c926bded8c7babe93fa320c.zip |
sys-apps/gptfdisk: Revbump to fix spurious MBR warnings
Package-Manager: Portage-3.0.14, Repoman-3.0.2
Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/gptfdisk/files/gptfdisk-1.0.6.1-spurious_mbr_warnings.patch | 71 | ||||
-rw-r--r-- | sys-apps/gptfdisk/gptfdisk-1.0.6-r1.ebuild | 60 |
2 files changed, 131 insertions, 0 deletions
diff --git a/sys-apps/gptfdisk/files/gptfdisk-1.0.6.1-spurious_mbr_warnings.patch b/sys-apps/gptfdisk/files/gptfdisk-1.0.6.1-spurious_mbr_warnings.patch new file mode 100644 index 000000000000..e60aa9feeffb --- /dev/null +++ b/sys-apps/gptfdisk/files/gptfdisk-1.0.6.1-spurious_mbr_warnings.patch @@ -0,0 +1,71 @@ +From f063fe08e424c99f133df18bf9dce49c851bcb0a Mon Sep 17 00:00:00 2001 +From: Rod Smith <rodsmith@rodsbooks.com> +Date: Mon, 1 Feb 2021 10:19:50 -0500 +Subject: [PATCH] Fix spurious warnings of problems on MBR disks + +--- + NEWS | 7 +++++++ + gpt.cc | 18 +++++++++++++----- + support.h | 2 +- + 3 files changed, 21 insertions(+), 6 deletions(-) + +diff --git a/NEWS b/NEWS +index f74bad0..a7131aa 100644 +--- a/NEWS ++++ b/NEWS +@@ -1,3 +1,10 @@ ++1.0.7 (?/??/2021): ++------------------ ++ ++- Fixed bug that caused spurious warnings about the partition table ++ header claiming an invalid size of partition entries when reading ++ some MBR disks. ++ + 1.0.6 (1/13/2021): + ------------------ + +diff --git a/gpt.cc b/gpt.cc +index 1b4e10f..842dfb1 100644 +--- a/gpt.cc ++++ b/gpt.cc +@@ -1042,11 +1042,19 @@ int GPTData::LoadHeader(struct GPTHeader *header, DiskIO & disk, uint64_t sector + *crcOk = CheckHeaderCRC(&tempHeader); + + if (tempHeader.sizeOfPartitionEntries != sizeof(GPTPart)) { +- cerr << "Warning: Partition table header claims that the size of partition table\n"; +- cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program "; +- cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n"; +- cerr << "Adjusting accordingly, but partition table may be garbage.\n"; +- tempHeader.sizeOfPartitionEntries = sizeof(GPTPart); ++ // Print the below warning only if the CRC is OK -- but correct the ++ // problem either way. The warning is printed only on a valid CRC ++ // because otherwise this warning will display inappropriately when ++ // reading MBR disks. If the CRC is invalid, then a warning about ++ // that will be shown later, so the user will still know that ++ // something is wrong. ++ if (*crcOk) { ++ cerr << "Warning: Partition table header claims that the size of partition table\n"; ++ cerr << "entries is " << tempHeader.sizeOfPartitionEntries << " bytes, but this program "; ++ cerr << " supports only " << sizeof(GPTPart) << "-byte entries.\n"; ++ cerr << "Adjusting accordingly, but partition table may be garbage.\n"; ++ } ++ tempHeader.sizeOfPartitionEntries = sizeof(GPTPart); + } + + if (allOK && (numParts != tempHeader.numParts) && *crcOk) { +diff --git a/support.h b/support.h +index d87fe9a..e3e1e12 100644 +--- a/support.h ++++ b/support.h +@@ -8,7 +8,7 @@ + #include <stdlib.h> + #include <string> + +-#define GPTFDISK_VERSION "1.0.6" ++#define GPTFDISK_VERSION "1.0.6.1" + + #if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) || defined (__APPLE__) + // Darwin (Mac OS) & FreeBSD: disk IOCTLs are different, and there is no lseek64 +-- +2.30.1 + diff --git a/sys-apps/gptfdisk/gptfdisk-1.0.6-r1.ebuild b/sys-apps/gptfdisk/gptfdisk-1.0.6-r1.ebuild new file mode 100644 index 000000000000..ee9f1782ded8 --- /dev/null +++ b/sys-apps/gptfdisk/gptfdisk-1.0.6-r1.ebuild @@ -0,0 +1,60 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="GPT partition table manipulator for Linux" +HOMEPAGE="https://www.rodsbooks.com/gdisk/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="kernel_linux ncurses static" + +# libuuid from util-linux is required. +RDEPEND="!static? ( + dev-libs/popt + ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode] ) + kernel_linux? ( sys-apps/util-linux ) + )" +DEPEND=" + ${RDEPEND} + static? ( + dev-libs/popt[static-libs(+)] + ncurses? ( >=sys-libs/ncurses-5.7-r7:0=[unicode,static-libs(+)] ) + kernel_linux? ( sys-apps/util-linux[static-libs(+)] ) + ) + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${P}.1-spurious_mbr_warnings.patch" +) + +src_prepare() { + default + + tc-export CXX PKG_CONFIG + + if ! use ncurses ; then + sed -i \ + -e '/^all:/s: cgdisk::' \ + Makefile || die + fi + + sed \ + -e '/g++/s:=:?=:g' \ + -e 's:-lncursesw:$(shell $(PKG_CONFIG) --libs ncursesw):g' \ + -i Makefile || die + + use static && append-ldflags -static +} + +src_install() { + dosbin gdisk sgdisk $(usex ncurses cgdisk '') fixparts + doman *.8 + dodoc NEWS README +} |