summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2015-04-01 12:36:19 -0700
committerWilliam A. Kennington III <william@wkennington.com>2015-04-01 13:24:29 -0700
commit53f1d8147db9af0aaac12deff28544f61dc05c64 (patch)
tree5bb106c51bba3a3fa2fb79dff0aea7dc4f3cec22 /pkgs
parent050e6fa43125636670291dfccf21566bab85791c (diff)
downloadnixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar.gz
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar.bz2
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar.lz
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar.xz
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.tar.zst
nixlib-53f1d8147db9af0aaac12deff28544f61dc05c64.zip
mariadb: Make derivation smaller and split out libs
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/servers/sql/mariadb/default.nix29
1 files changed, 29 insertions, 0 deletions
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 23a09f1d54e0..a5905821d17e 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -55,13 +55,42 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  outputs = [ "out" "lib" ];
+
   prePatch = ''
     substituteInPlace cmake/libutils.cmake \
       --replace /usr/bin/libtool libtool
+    sed -i "s,SET(DEFAULT_MYSQL_HOME.*$,SET(DEFAULT_MYSQL_HOME /not/a/real/dir),g" CMakeLists.txt
+    sed -i "s,SET(PLUGINDIR.*$,SET(PLUGINDIR $lib/lib/mysql/plugin),g" CMakeLists.txt
+
+    sed -i "s,SET(pkgincludedir.*$,SET(pkgincludedir $lib/include),g" scripts/CMakeLists.txt
+    sed -i "s,SET(pkglibdir.*$,SET(pkglibdir $lib/lib),g" scripts/CMakeLists.txt
+    sed -i "s,SET(pkgplugindir.*$,SET(pkgplugindir $lib/lib/mysql/plugin),g" scripts/CMakeLists.txt
+
+    sed -i "s,set(libdir.*$,SET(libdir $lib/lib),g" storage/mroonga/vendor/groonga/CMakeLists.txt
+    sed -i "s,set(includedir.*$,SET(includedir $lib/include),g" storage/mroonga/vendor/groonga/CMakeLists.txt
+    sed -i "/\"\$[{]CMAKE_INSTALL_PREFIX}\/\$[{]GRN_RELATIVE_PLUGINS_DIR}\"/d" storage/mroonga/vendor/groonga/CMakeLists.txt
+    sed -i "s,set(GRN_PLUGINS_DIR.*$,SET(GRN_PLUGINS_DIR $lib/\$\{GRN_RELATIVE_PLUGINS_DIR}),g" storage/mroonga/vendor/groonga/CMakeLists.txt
   '';
+
   postInstall = ''
     substituteInPlace $out/bin/mysql_install_db \
       --replace basedir=\"\" basedir=\"$out\"
+
+    # Remove superfluous files
+    rm -r $out/mysql-test $out/sql-bench $out/data
+    rm $out/share/man/man1/mysql-test-run.pl.1
+    rm $out/bin/rcmysql
+    find $out/bin -name \*test\* -exec rm {} \;
+
+    # Separate libs and includes into their own derivation
+    mkdir -p $lib
+    mv $out/lib $lib
+    mv $out/include $lib
+
+    # Make sure to propagate lib for compatability
+    mkdir -p $out/nix-support
+    echo "$lib" > $out/nix-support/propagated-native-build-inputs
   '';
 
   passthru.mysqlVersion = "5.6";