File tree Expand file tree Collapse file tree 1 file changed +57
-36
lines changed Expand file tree Collapse file tree 1 file changed +57
-36
lines changed Original file line number Diff line number Diff line change 21
21
flake-utils . lib . eachSystem [ flake-utils . lib . system . x86_64-linux ] (
22
22
system :
23
23
let
24
+ defaultLlvmVersion = 16 ;
24
25
pkgs = import nixpkgs { inherit system ; } ;
25
26
26
27
drgnSrc = pkgs . fetchFromGitHub {
32
33
} ;
33
34
34
35
mkOidPackage =
35
- llvmPackages :
36
- with pkgs ;
36
+ llvmVersion :
37
+ let
38
+ llvmPackages = pkgs . "llvmPackages_${ toString llvmVersion } " ;
39
+ in
37
40
llvmPackages . stdenv . mkDerivation rec {
38
41
name = "oid" ;
39
42
40
43
src = self ;
41
44
42
- nativeBuildInputs = [
45
+ nativeBuildInputs = with pkgs ; [
43
46
autoconf
44
47
automake
45
48
bison
57
60
glibcLocales
58
61
] ;
59
62
60
- buildInputs = [
61
- llvmPackages . libclang
62
- llvmPackages . llvm
63
- llvmPackages . openmp
64
-
65
- boost
66
- bzip2
67
- curl
68
- double-conversion
69
- elfutils
70
- flex
71
- folly
72
- folly . fmt
73
- gflags
74
- glog
75
- gtest
76
- icu
77
- jemalloc
78
- libarchive
79
- libmicrohttpd
80
- liburing
81
- libxml2
82
- lzma
83
- msgpack
84
- range-v3
85
- rocksdb_8_11
86
- sqlite
87
- tomlplusplus
88
- zstd
89
- ] ;
63
+ buildInputs =
64
+ ( with llvmPackages ; [
65
+ llvmPackages . libclang
66
+ llvmPackages . llvm
67
+ llvmPackages . openmp
68
+ ] )
69
+ ++ ( with pkgs ; [
70
+ boost
71
+ bzip2
72
+ curl
73
+ double-conversion
74
+ elfutils
75
+ flex
76
+ folly
77
+ folly . fmt
78
+ gflags
79
+ glog
80
+ gtest
81
+ icu
82
+ jemalloc
83
+ libarchive
84
+ libmicrohttpd
85
+ liburing
86
+ libxml2
87
+ lzma
88
+ msgpack
89
+ range-v3
90
+ rocksdb_8_11
91
+ sqlite
92
+ tomlplusplus
93
+ zstd
94
+ ] ) ;
90
95
91
96
cmakeFlags = [
92
97
"-Ddrgn_SOURCE_DIR=${ drgnSrc } "
95
100
96
101
outputs = [ "out" ] ;
97
102
} ;
103
+
104
+ mkOidDevShell =
105
+ llvmVersion :
106
+ let
107
+ llvmPackages = pkgs . "llvmPackages_${ toString llvmVersion } " ;
108
+ in
109
+ pkgs . mkShell . override { stdenv = llvmPackages . stdenv ; } {
110
+ inputsFrom = [ self . packages . ${ system } . "oid-llvm${ toString llvmVersion } " ] ;
111
+ buildInputs = [ ] ;
112
+ } ;
98
113
in
99
114
{
100
115
packages = rec {
101
- default = oid-llvm16 ;
116
+ default = self . packages . ${ system } . "oid-llvm${ toString defaultLlvmVersion } " ;
117
+
118
+ oid-llvm15 = mkOidPackage 15 ;
119
+ oid-llvm16 = mkOidPackage 16 ;
120
+ } ;
121
+ devShells = rec {
122
+ default = self . devShells . ${ system } . "oid-llvm${ toString defaultLlvmVersion } " ;
102
123
103
- oid-llvm15 = mkOidPackage pkgs . llvmPackages_15 ;
104
- oid-llvm16 = mkOidPackage pkgs . llvmPackages_16 ;
124
+ oid-llvm15 = mkOidDevShell 15 ;
125
+ oid-llvm16 = mkOidDevShell 16 ;
105
126
} ;
106
127
107
128
apps . default = {
You can’t perform that action at this time.
0 commit comments