diff --git a/pkgs/development/libraries/unixODBCDrivers/default.nix b/pkgs/development/libraries/unixODBCDrivers/default.nix index d29ea557b1f2..e2a891fb58f9 100644 --- a/pkgs/development/libraries/unixODBCDrivers/default.nix +++ b/pkgs/development/libraries/unixODBCDrivers/default.nix @@ -41,8 +41,14 @@ fetchSubmodules = true; }; + patches = [ + # Fix `call to undeclared function 'sleep'` with clang 16 + ./mariadb-connector-odbc-unistd.patch + ]; + nativeBuildInputs = [ cmake ]; - buildInputs = [ unixODBC openssl libiconv ]; + buildInputs = [ unixODBC openssl libiconv zlib ] + ++ lib.optionals stdenv.isDarwin [ libkrb5 ]; preConfigure = '' # we don't want to build a .pkg @@ -52,6 +58,7 @@ ''; cmakeFlags = [ + "-DWITH_EXTERNAL_ZLIB=ON" "-DODBC_LIB_DIR=${lib.getLib unixODBC}/lib" "-DODBC_INCLUDE_DIR=${lib.getDev unixODBC}/include" "-DWITH_OPENSSL=ON" diff --git a/pkgs/development/libraries/unixODBCDrivers/mariadb-connector-odbc-unistd.patch b/pkgs/development/libraries/unixODBCDrivers/mariadb-connector-odbc-unistd.patch new file mode 100644 index 000000000000..8c976885eb62 --- /dev/null +++ b/pkgs/development/libraries/unixODBCDrivers/mariadb-connector-odbc-unistd.patch @@ -0,0 +1,12 @@ +diff -ur a/test/use_result.c b/test/use_result.c +--- a/test/use_result.c 1969-12-31 19:00:01.000000000 -0500 ++++ b/test/use_result.c 2023-09-05 00:08:12.979889343 -0400 +@@ -23,6 +23,8 @@ + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++#include ++ + #include "tap.h" + + SQLINTEGER my_max_rows= 100;