1{ stdenv
2, lib
3, fetchFromGitHub
4, cmake
5, blas
6 # Check Inputs
7, python3
8}:
9
10stdenv.mkDerivation rec {
11 pname = "libcint";
12 version = "5.2.1";
13
14 src = fetchFromGitHub {
15 owner = "sunqm";
16 repo = "libcint";
17 rev = "v${version}";
18 hash = "sha256-sFdigOlS5fAi2dV4dhcPg3roqFdvpnh580WDqTA6DGg=";
19 };
20
21 nativeBuildInputs = [ cmake ];
22 buildInputs = [ blas ];
23 cmakeFlags = [
24 "-DENABLE_TEST=1"
25 "-DQUICK_TEST=1"
26 "-DCMAKE_INSTALL_PREFIX=" # ends up double-adding /nix/store/... prefix, this avoids issue
27 "-DWITH_RANGE_COULOMB:STRING=1"
28 "-DWITH_FORTRAN:STRING=1"
29 "-DMIN_EXPCUTOFF:STRING=20"
30 ];
31
32 strictDeps = true;
33
34 doCheck = true;
35 nativeCheckInputs = [ python3.pkgs.numpy ];
36
37 meta = with lib; {
38 description = "General GTO integrals for quantum chemistry";
39 longDescription = ''
40 libcint is an open source library for analytical Gaussian integrals.
41 It provides C/Fortran API to evaluate one-electron / two-electron
42 integrals for Cartesian / real-spheric / spinor Gaussian type functions.
43 '';
44 homepage = "http://wiki.sunqm.net/libcint";
45 downloadPage = "https://github.com/sunqm/libcint";
46 changelog = "https://github.com/sunqm/libcint/blob/master/ChangeLog";
47 license = licenses.bsd2;
48 maintainers = with maintainers; [ drewrisinger ];
49 };
50}