about summary refs log tree commit diff
path: root/pkgs/servers/sql
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2019-08-02 02:58:52 +0200
committerRobin Gloster <mail@glob.in>2019-08-02 03:01:30 +0200
commit30969073f00a76942792dd24f0dbbf95557643b1 (patch)
tree9efe7a6f1c9eaa96f45affccb9b6600ff23adade /pkgs/servers/sql
parent3bef4d156daba7a46c1a1ffb44d282a6e271848e (diff)
parent841e20e583c2ef3abf670d6512afb4a6a81a6269 (diff)
downloadnixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar.gz
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar.bz2
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar.lz
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar.xz
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.tar.zst
nixlib-30969073f00a76942792dd24f0dbbf95557643b1.zip
Merge remote-tracking branch 'upstream/master' into openssl-1.1
Diffstat (limited to 'pkgs/servers/sql')
-rw-r--r--pkgs/servers/sql/mariadb/default.nix17
1 files changed, 14 insertions, 3 deletions
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 94cdf801ff29..de1b6ec0b122 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -1,8 +1,9 @@
-{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig, ncurses, zlib, xz, lzo, lz4, bzip2, snappy
+{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig, makeWrapper, ncurses, zlib, xz, lzo, lz4, bzip2, snappy
 , libiconv, openssl, pcre, boost, judy, bison, libxml2, libkrb5
 , libaio, libevent, jemalloc, cracklib, systemd, numactl, perl
 , fixDarwinDylibNames, cctools, CoreServices
 , asio, buildEnv, check, scons
+, less
 }:
 
 with stdenv.lib;
@@ -11,6 +12,8 @@ let # in mariadb # spans the whole file
 
 libExt = stdenv.hostPlatform.extensions.sharedLibrary;
 
+mytopEnv = perl.withPackages (p: with p; [ DataDumper DBDmysql DBI TermReadKey ]);
+
 mariadb = everything // {
   inherit client; # libmysqlclient.so in .out, necessary headers in .dev and utils in .bin
   server = everything; # a full single-output build, including everything in `client` again
@@ -133,12 +136,13 @@ everything = stdenv.mkDerivation (common // {
 
   outputs = [ "out" "dev" "man" ];
 
-  nativeBuildInputs = common.nativeBuildInputs ++ [ bison ];
+  nativeBuildInputs = common.nativeBuildInputs ++ [ bison ] ++ optional (!stdenv.isDarwin) makeWrapper;
 
   buildInputs = common.buildInputs ++ [
     xz lzo lz4 bzip2 snappy
     libxml2 boost judy libevent cracklib
-  ] ++ optional (stdenv.isLinux && !stdenv.isAarch32) numactl;
+  ] ++ optional (stdenv.isLinux && !stdenv.isAarch32) numactl
+    ++ optional (!stdenv.isDarwin) mytopEnv;
 
   cmakeFlags = common.cmakeFlags ++ [
     "-DMYSQL_DATADIR=/var/lib/mysql"
@@ -161,6 +165,8 @@ everything = stdenv.mkDerivation (common // {
     cmakeFlags="$cmakeFlags \
       -DINSTALL_SHAREDIR=$dev/share/mysql
       -DINSTALL_SUPPORTFILESDIR=$dev/share/mysql"
+  '' + optionalString (!stdenv.isDarwin) ''
+    patchShebangs scripts/mytop.sh
   '';
 
   postInstall = ''
@@ -181,6 +187,11 @@ everything = stdenv.mkDerivation (common // {
     sed -i 's/-mariadb/-mysql/' "$out"/bin/galera_new_cluster
   '';
 
+  # perlPackages.DBDmysql is broken on darwin
+  postFixup = optionalString (!stdenv.isDarwin) ''
+    wrapProgram $out/bin/mytop --set PATH ${less}/bin/less
+  '';
+
   CXXFLAGS = optionalString stdenv.isi686 "-fpermissive";
 });