dev-libs/libFuzzer: fix x86 builds #612656
authorMike Frysinger <vapier@gentoo.org>
Tue, 14 Mar 2017 22:23:01 +0000 (15:23 -0700)
committerMike Frysinger <vapier@gentoo.org>
Tue, 14 Mar 2017 23:01:25 +0000 (16:01 -0700)
dev-libs/libFuzzer/files/libFuzzer-3.9.1-32-bit.patch [new file with mode: 0644]
dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild

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 (file)
index 0000000..1257686
--- /dev/null
@@ -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);
index d9e77c26a7ac8a31a6764ace809a69a9e013e3ee..43b99e894a9139c286b86239148fa83ddae3687e 100644 (file)
@@ -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