commit: 20247e5bb4a1d133a17eac3f57ac56defe3f656c Author: Mike Frysinger <vapier <AT> gentoo <DOT> org> AuthorDate: Tue Mar 14 22:23:01 2017 +0000 Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org> CommitDate: Tue Mar 14 23:01:25 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20247e5b
dev-libs/libFuzzer: fix x86 builds #612656 dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch | 16 ++++++++++++++++ dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild | 4 ++++ 2 files changed, 20 insertions(+) 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 00000000000..1257686d1c3 --- /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<double>(MaxCorpusLen); + std::exponential_distribution<> Dist(Lambda); + std::vector<double> 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 d9e77c26a7a..43b99e894a9 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
