aboutsummaryrefslogtreecommitdiffstats
path: root/community/rethinkdb/musl-fixes-all.patch
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2017-11-15 18:34:15 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2017-11-15 19:12:09 +0000
commit29efe5822cf39d340434b4436abafe94d9ea2ac1 (patch)
tree88de72c24216fbcf8b01204b945b5923e604dfb9 /community/rethinkdb/musl-fixes-all.patch
parent8dd2436f00a1c92c66a7d9719e8a17340ce8d7fe (diff)
downloadaports-29efe5822cf39d340434b4436abafe94d9ea2ac1.tar.bz2
aports-29efe5822cf39d340434b4436abafe94d9ea2ac1.tar.xz
community/rethinkdb: enable build for s390x
The s390x patch conflicts with both the ppc64le patch and the paxmark. The PaX kernel is only supported for x86_64 so we can conditionally apply the ppc64le, s390x or paxmark patch depending on arch.
Diffstat (limited to 'community/rethinkdb/musl-fixes-all.patch')
-rw-r--r--community/rethinkdb/musl-fixes-all.patch95
1 files changed, 95 insertions, 0 deletions
diff --git a/community/rethinkdb/musl-fixes-all.patch b/community/rethinkdb/musl-fixes-all.patch
new file mode 100644
index 0000000000..7828f7fd0b
--- /dev/null
+++ b/community/rethinkdb/musl-fixes-all.patch
@@ -0,0 +1,95 @@
+--- ./src/rdb_protocol/geo/s2/util/math/exactfloat/exactfloat.cc.orig
++++ ./src/rdb_protocol/geo/s2/util/math/exactfloat/exactfloat.cc
+@@ -104,9 +104,9 @@
+ ExactFloat::ExactFloat(double v) {
+ BN_init(&bn_);
+ sign_ = signbit(v) ? -1 : 1;
+- if (isnan(v)) {
++ if (std::isnan(v)) {
+ set_nan();
+- } else if (isinf(v)) {
++ } else if (std::isinf(v)) {
+ set_inf(sign_);
+ } else {
+ // The following code is much simpler than messing about with bit masks,
+--- ./src/rdb_protocol/geo/s2/util/math/mathlimits.h.orig
++++ ./src/rdb_protocol/geo/s2/util/math/mathlimits.h
+@@ -195,11 +195,11 @@
+ static bool IsNegInf(const Type x) { return _fpclass(x) == _FPCLASS_NINF; }
+ #else
+ #define DECL_FP_LIMIT_FUNCS \
+- static bool IsFinite(const Type x) { return !isinf(x) && !isnan(x); } \
+- static bool IsNaN(const Type x) { return isnan(x); } \
+- static bool IsInf(const Type x) { return isinf(x); } \
+- static bool IsPosInf(const Type x) { return isinf(x) && x > 0; } \
+- static bool IsNegInf(const Type x) { return isinf(x) && x < 0; }
++ static bool IsFinite(const Type x) { return !std::isinf(x) && !std::isnan(x); } \
++ static bool IsNaN(const Type x) { return std::isnan(x); } \
++ static bool IsInf(const Type x) { return std::isinf(x); } \
++ static bool IsPosInf(const Type x) { return std::isinf(x) && x > 0; } \
++ static bool IsNegInf(const Type x) { return std::isinf(x) && x < 0; }
+ #endif
+
+ // We can't put floating-point constant values in the header here because
+--- ./src/rdb_protocol/geo/s2/util/math/mathlimits.h.orig
++++ ./src/rdb_protocol/geo/s2/util/math/mathlimits.h
+@@ -14,7 +14,7 @@
+ #define UTIL_MATH_MATHLIMITS_H__
+
+ #include <string.h>
+-#include <math.h>
++#include <cmath>
+ #include <cfloat>
+
+ #include "rdb_protocol/geo/s2/base/basictypes.h"
+--- ./src/threading.hpp.orig
++++ ./src/threading.hpp
+@@ -1,6 +1,7 @@
+ #ifndef THREADING_HPP_
+ #define THREADING_HPP_
+
++#include <unistd.h>
+ #include "errors.hpp"
+
+ // A thread number as used by the thread pool.
+--- ./src/threading.hpp.orig
++++ ./src/threading.hpp
+@@ -2,6 +2,7 @@
+ #define THREADING_HPP_
+
+ #include <unistd.h>
++#include <sys/types.h>
+ #include "errors.hpp"
+
+ // A thread number as used by the thread pool.
+--- ./src/containers/printf_buffer.hpp.orig
++++ ./src/containers/printf_buffer.hpp
+@@ -5,6 +5,7 @@
+ #include <stdarg.h>
+ #include <stdio.h>
+ #include <string.h>
++#include <sys/types.h>
+
+ // Cannot include utils.hpp, we are included by utils.hpp.
+ #include "errors.hpp"
+--- ./src/containers/buffer_group.hpp.orig
++++ ./src/containers/buffer_group.hpp
+@@ -4,6 +4,7 @@
+
+ #include <stdlib.h>
+ #include <vector>
++#include <sys/types.h>
+
+ #include "errors.hpp"
+
+--- ./src/errors.cc.orig
++++ ./src/errors.cc
+@@ -87,7 +87,7 @@
+ }
+
+ const char *errno_string_maybe_using_buffer(int errsv, char *buf, size_t buflen) {
+-#ifdef _GNU_SOURCE
++#ifdef __GLIBC__
+ return strerror_r(errsv, buf, buflen);
+ #else
+ // The result is either 0 or ERANGE (if the buffer is too small) or EINVAL (if the error number