summaryrefslogtreecommitdiff
path: root/default.nix
blob: 52a36a195f50389c1d92ddf57e7294ea45abc232 (plain)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
{ pkgs ? import <nixpkgs> {}
, stdenv ? pkgs.llvmPackages_17.stdenv
, clang-tools ? pkgs.clang-tools_17
, gasp ? (import ((builtins.fetchGit {
		url = "git@git.keldu.de:apps/gasp";
		ref = "master";
	}).outPath + "/default.nix"){
	}).gasp
}:

let
  version = "0.0.0";
in rec {
  forstio = {
    core = pkgs.callPackage modules/core/.nix/derivation.nix {
      inherit version;
      inherit stdenv;
      inherit clang-tools;
    };

    async = pkgs.callPackage modules/async/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
    };
    
    codec = pkgs.callPackage modules/codec/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
    };
    
    codec-json = pkgs.callPackage modules/codec-json/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
    };

    codec-netcdf = pkgs.callPackage modules/codec-netcdf/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
    };
    
    io = pkgs.callPackage modules/io/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
		
			build_examples = "true";
    };
    
    io-tls = pkgs.callPackage modules/io-tls/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
		inherit clang-tools;

    };
	 
	 io_codec = pkgs.callPackage modules/io_codec/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
			
			build_examples = "true";
		};

		remote-sycl = pkgs.callPackage modules/remote-sycl/.nix/derivation.nix {
			inherit version;
			inherit forstio;
			inherit stdenv;
			inherit clang-tools;
			openmp = pkgs.llvmPackages_17.openmp;
			
			build_examples = "true";
		};
    
    tools = pkgs.callPackage modules/tools/.nix/derivation.nix {
      inherit version;
      inherit forstio;
      inherit stdenv;
      inherit clang-tools;
			
			build_examples = "true";
		};

		docs = pkgs.callPackage docs/.nix/derivation.nix {
			inherit version;
			inherit gasp;
		};
 };

 stable = pkgs.symlinkJoin {
	name = "forstio-${version}";
	paths = [
		forstio.core
		forstio.async
		forstio.codec
		forstio.codec-json
		forstio.codec-netcdf
		forstio.io
		forstio.io-tls
		];
	};

	unstable = pkgs.symlinkJoin {
		name = "forstio-unstable-${version}";
		paths = [
			forstio.remote-sycl
			forstio.io_codec
			# forstio.codec-minecraft
		];
	};


}