diff options
author | Daiderd Jordan <daiderd@gmail.com> | 2018-01-06 11:17:59 +0100 |
---|---|---|
committer | Robin Gloster <mail@glob.in> | 2018-01-06 16:36:48 +0100 |
commit | 106d87b6c6c59918fe57924ceba8f8c5be5ada40 (patch) | |
tree | aa1d8b91abb1f872c245ceb1393dffc72633e31d /pkgs/servers | |
parent | cb506e6e2ed9133b43eb0c54699b8df4c9957cdf (diff) | |
download | nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar.gz nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar.bz2 nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar.lz nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar.xz nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.tar.zst nixpkgs-106d87b6c6c59918fe57924ceba8f8c5be5ada40.zip |
mariadb: fix darwin build
Diffstat (limited to 'pkgs/servers')
-rw-r--r-- | pkgs/servers/sql/mariadb/clang-isfinite.patch | 17 | ||||
-rw-r--r-- | pkgs/servers/sql/mariadb/default.nix | 9 |
2 files changed, 23 insertions, 3 deletions
diff --git a/pkgs/servers/sql/mariadb/clang-isfinite.patch b/pkgs/servers/sql/mariadb/clang-isfinite.patch new file mode 100644 index 00000000000..8da527d5784 --- /dev/null +++ b/pkgs/servers/sql/mariadb/clang-isfinite.patch @@ -0,0 +1,17 @@ +diff --git a/include/my_global.h b/include/my_global.h +index cb31ae2..2866f87 100644 +--- a/include/my_global.h ++++ b/include/my_global.h +@@ -803,12 +803,6 @@ inline unsigned long long my_double2ulonglong(double d) + #endif + + #ifndef isfinite +-#ifdef HAVE_FINITE +-#define isfinite(x) finite(x) +-#else +-#define finite(x) (1.0 / fabs(x) > 0.0) +-#endif /* HAVE_FINITE */ +-#elif (__cplusplus >= 201103L) + #include <cmath> + static inline bool isfinite(double x) { return std::isfinite(x); } + #endif /* isfinite */ diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix index e2c4133a379..547edafa8ad 100644 --- a/pkgs/servers/sql/mariadb/default.nix +++ b/pkgs/servers/sql/mariadb/default.nix @@ -34,7 +34,8 @@ common = rec { # attributes common to both builds sed -i 's,[^"]*/var/log,/var/log,g' storage/mroonga/vendor/groonga/CMakeLists.txt ''; - patches = [ ./cmake-includedir.patch ]; + patches = [ ./cmake-includedir.patch ] + ++ stdenv.lib.optional stdenv.cc.isClang ./clang-isfinite.patch; cmakeFlags = [ "-DBUILD_CONFIG=mysql_release" @@ -121,7 +122,8 @@ everything = stdenv.mkDerivation (common // { buildInputs = common.buildInputs ++ [ xz lzo lz4 bzip2 snappy libxml2 boost judy libevent cracklib - ] ++ optionals (stdenv.isLinux && !stdenv.isArm) [ numactl ]; + ] ++ optional (stdenv.isLinux && !stdenv.isArm) numactl + ++ optional stdenv.isDarwin libiconv; cmakeFlags = common.cmakeFlags ++ [ "-DMYSQL_DATADIR=/var/lib/mysql" @@ -159,7 +161,8 @@ everything = stdenv.mkDerivation (common // { rm "$out"/bin/rcmysql ''; - CXXFLAGS = optionalString stdenv.isi686 "-fpermissive"; + CXXFLAGS = optionalString stdenv.isi686 "-fpermissive" + + optionalString stdenv.isDarwin " -std=c++11"; }); connector-c = stdenv.mkDerivation rec { |