X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FConfig%2FNix.git;a=blobdiff_plain;f=overlays%2Fdatabases%2Fmysql%2Fdefault.nix;h=f9e5791fd156798808c466a84dfee32a3abbedbd;hp=4302cd107dffefe4e4e479b5b83ab94b06b416dd;hb=8f1d6cb579ec203ce86f8af30bea729dbb0a9f7f;hpb=8b2f048bed8d081f18d9ba7bc1cce16c28670217 diff --git a/overlays/databases/mysql/default.nix b/overlays/databases/mysql/default.nix index 4302cd1..f9e5791 100644 --- a/overlays/databases/mysql/default.nix +++ b/overlays/databases/mysql/default.nix @@ -2,5 +2,23 @@ self: super: rec { mariadb_pam = super.mariadb.overrideAttrs(old: { cmakeFlags = old.cmakeFlags ++ [ "-DWITH_AUTHENTICATION_PAM=ON" ]; buildInputs = old.buildInputs ++ [ self.pam ]; + outputs = old.outputs ++ [ "dev" ]; + postInstall = '' + mkdir -p $dev $dev/lib $dev/share + cp -a $out/include $dev + cp -a $out/lib/{libmariadbclient.a,libmysqlclient.a,libmysqlclient_r.a,libmysqlservices.a} $dev/lib + cp -a $out/lib/pkgconfig $dev/lib + cp -a $out/share/aclocal $dev/share + '' + old.postInstall; + }); + # This patched version includes C headers from the server part (see + # above). It seems to be required to build pam support in clients. + libmysqlclient_pam = super.libmysqlclient.overrideAttrs(old: { + prePatch = old.prePatch or "" + '' + sed -i -e '/define INCLUDE/s|"$| -I@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@/@INSTALL_INCLUDEDIR@/mysql/server -I@CMAKE_SYSROOT@@CMAKE_INSTALL_PREFIX@/@INSTALL_INCLUDEDIR@/mysql/server/private"|' mariadb_config/mariadb_config.c.in + ''; + postInstall = old.postInstall or "" + '' + cp -a ${mariadb_pam.dev}/include/* $out/include/mariadb + ''; }); }