File tree 3 files changed +179
-0
lines changed
3 files changed +179
-0
lines changed Original file line number Diff line number Diff line change @@ -41,3 +41,4 @@ tests/breakid*
41
41
web
42
42
src /predict
43
43
scripts /linpb *
44
+ /result
Original file line number Diff line number Diff line change
1
+ {
2
+ description = "an advanced incremental SAT solver" ;
3
+ inputs = {
4
+ nixpkgs . url = "github:nixos/nixpkgs/nixpkgs-unstable" ;
5
+ cadical = {
6
+ url = "github:itepastra/cadical/add-flake" ;
7
+ inputs . nixpkgs . follows = "nixpkgs" ;
8
+ } ;
9
+ cadiback = {
10
+ url = "github:itepastra/cadiback/add-flake" ;
11
+ inputs . nixpkgs . follows = "nixpkgs" ;
12
+ } ;
13
+ } ;
14
+ outputs =
15
+ {
16
+ self ,
17
+ nixpkgs ,
18
+ cadical ,
19
+ cadiback ,
20
+ } :
21
+ let
22
+ inherit ( nixpkgs ) lib ;
23
+ systems = lib . intersectLists lib . systems . flakeExposed lib . platforms . linux ;
24
+ forAllSystems = lib . genAttrs systems ;
25
+ nixpkgsFor = forAllSystems ( system : nixpkgs . legacyPackages . ${ system } ) ;
26
+ fs = lib . fileset ;
27
+
28
+ cryptominisat-package =
29
+ {
30
+ stdenv ,
31
+ fetchFromGitHub ,
32
+ cmake ,
33
+ cadiback ,
34
+ cadical ,
35
+ pkg-config ,
36
+ gmp ,
37
+ zlib ,
38
+ } :
39
+ stdenv . mkDerivation {
40
+ name = "cryptominisat" ;
41
+ src = fs . toSource {
42
+ root = ./. ;
43
+ fileset = fs . unions [
44
+ ./src
45
+ ./CMakeLists.txt
46
+ ./cmake
47
+ ./scripts
48
+ ./cryptominisat5Config.cmake.in
49
+ ] ;
50
+ } ;
51
+ patchPhase = ''
52
+ substituteInPlace src/backbone.cpp \
53
+ --replace-fail "../cadiback/cadiback.h" "${ cadiback } /include/cadiback.h"
54
+ '' ;
55
+
56
+ nativeBuildInputs = [
57
+ cmake
58
+ pkg-config
59
+ ] ;
60
+ buildInputs = [
61
+ cadiback
62
+ cadical
63
+ gmp
64
+ zlib
65
+ ] ;
66
+ } ;
67
+ in
68
+ {
69
+ packages = forAllSystems (
70
+ system :
71
+ let
72
+ cryptominisat = nixpkgsFor . ${ system } . callPackage cryptominisat-package {
73
+ cadical = cadical . packages . ${ system } . cadical ;
74
+ cadiback = cadiback . packages . ${ system } . cadiback ;
75
+ } ;
76
+ in
77
+ {
78
+ inherit cryptominisat ;
79
+ cryptominisat5 = cryptominisat ;
80
+ default = cryptominisat ;
81
+ }
82
+ ) ;
83
+ } ;
84
+ }
You can’t perform that action at this time.
0 commit comments