about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/frugally-deep/default.nix
blob: f275ec5f02bacbb6feac7dd8fdd7869e6b6304bd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
{ lib
, stdenv
, fetchFromGitHub
, gitUpdater
, cmake
, functionalplus
, eigen
, nlohmann_json
, doctest
, python3Packages
, buildTests ? false # Needs tensorflow
}:

stdenv.mkDerivation (finalAttrs: {
  pname = "frugally-deep";
  version = "0.15.24-p0";

  src = fetchFromGitHub {
    owner = "Dobiasd";
    repo = "frugally-deep";
    rev = "v${finalAttrs.version}";
    hash = "sha256-yg2SMsYOOSOgsdwIH1bU3iPM45z6c7WeIrgOddt3um4=";
  };

  nativeBuildInputs = [
    cmake
  ] ++ lib.optionals buildTests [
    python3Packages.python
    python3Packages.numpy
  ];

  buildInputs = lib.optionals buildTests [
    doctest
    python3Packages.tensorflow
  ];

  propagatedBuildInputs = [
    functionalplus
    eigen
    nlohmann_json
  ];

  cmakeFlags = lib.optionals buildTests [ "-DFDEEP_BUILD_UNITTEST=ON" ];
  passthru.updateScript = gitUpdater;

  meta = with lib; {
    description = "Header-only library for using Keras (TensorFlow) models in C++";
    homepage = "https://github.com/Dobiasd/frugally-deep";
    license = with licenses; [ mit ];
    maintainers = with maintainers; [ Madouura ];
    platforms = platforms.linux;
  };
})