1{ lib, stdenv, fetchFromGitHub, catch2, cmake, unixODBC }:
2
3stdenv.mkDerivation rec {
4 pname = "nanodbc";
5 version = "2.14.0";
6
7 src = fetchFromGitHub {
8 owner = "nanodbc";
9 repo = "nanodbc";
10 rev = "v${version}";
11 hash = "sha256-dVUOwA7LfLqcQq2nc6OAha0krmgTy5RUHupBVrNdo4g=";
12 };
13
14 postPatch = ''
15 cp ${catch2}/include/catch2/catch.hpp test/catch/catch.hpp
16 '';
17
18 nativeBuildInputs = [ cmake ];
19
20 buildInputs = [ unixODBC ];
21
22 cmakeFlags = if (stdenv.hostPlatform.isStatic) then
23 [ "-DBUILD_STATIC_LIBS=ON" ]
24 else
25 [ "-DBUILD_SHARED_LIBS=ON" ];
26
27 meta = with lib; {
28 homepage = "https://github.com/nanodbc/nanodbc";
29 changelog = "https://github.com/nanodbc/nanodbc/raw/v${version}/CHANGELOG.md";
30 description = "Small C++ wrapper for the native C ODBC API";
31 license = licenses.mit;
32 maintainers = [ maintainers.bzizou ];
33 };
34}