From: Mike Frysinger Date: Tue, 14 Mar 2017 22:23:01 +0000 (-0700) Subject: dev-libs/libFuzzer: fix x86 builds #612656 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=20247e5bb4a1d133a17eac3f57ac56defe3f656c;p=gentoo.git dev-libs/libFuzzer: fix x86 builds #612656 --- diff --git a/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch b/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch new file mode 100644 index 000000000000..1257686d1c39 --- /dev/null +++ b/dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch @@ -0,0 +1,16 @@ +this code has been rewritten in newer versions so this patch can be thrown +away when we upgrade. + +https://bugs.gentoo.org/612656 + +--- a/FuzzerLoop.cpp ++++ b/FuzzerLoop.cpp +@@ -366,7 +366,7 @@ + double Lambda = 2.0 * log(2.0) / static_cast(MaxCorpusLen); + std::exponential_distribution<> Dist(Lambda); + std::vector Sizes; +- size_t TruncatePoints = std::max(1ul, TruncateMaxRuns / Corpus.size()); ++ size_t TruncatePoints = std::max((size_t)1, TruncateMaxRuns / Corpus.size()); + Sizes.reserve(TruncatePoints); + for (size_t I = 0; I < TruncatePoints; ++I) { + Sizes.push_back(Dist(MD.GetRand().Get_mt19937()) + 1); diff --git a/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild b/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild index d9e77c26a7ac..43b99e894a91 100644 --- a/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild +++ b/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild @@ -19,6 +19,10 @@ IUSE="" S_ROOT="${WORKDIR}/${MY_P}.src" S="${S_ROOT}/lib/Fuzzer" +PATCHES=( + "${FILESDIR}"/${P}-32-bit.patch #612656 +) + src_prepare() { cmake-utils_src_prepare sed -i '/CMAKE_CXX_FLAGS/d' CMakeLists.txt || die