uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
70
pkgs/applications/science/logic/satallax/default.nix
Normal file
70
pkgs/applications/science/logic/satallax/default.nix
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
{lib, stdenv, fetchurl, ocaml, zlib, which, eprover, makeWrapper, coq}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "satallax";
|
||||
version = "2.7";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
buildInputs = [ocaml zlib which eprover coq];
|
||||
src = fetchurl {
|
||||
url = "https://www.ps.uni-saarland.de/~cebrown/satallax/downloads/${pname}-${version}.tar.gz";
|
||||
sha256 = "1kvxn8mc35igk4vigi5cp7w3wpxk2z3bgwllfm4n3h2jfs0vkpib";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# GCC9 doesn't allow default value in friend declaration.
|
||||
./fix-declaration-gcc9.patch
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
mkdir fake-tools
|
||||
echo "echo 'Nix-build-host.localdomain'" > fake-tools/hostname
|
||||
chmod a+x fake-tools/hostname
|
||||
export PATH="$PATH:$PWD/fake-tools"
|
||||
|
||||
(
|
||||
cd picosat-*
|
||||
./configure
|
||||
make
|
||||
)
|
||||
export PATH="$PATH:$PWD/libexec/satallax"
|
||||
|
||||
mkdir -p "$out/libexec/satallax"
|
||||
cp picosat-*/picosat picosat-*/picomus "$out/libexec/satallax"
|
||||
|
||||
(
|
||||
cd minisat
|
||||
export MROOT=$PWD
|
||||
cd core
|
||||
make
|
||||
cd ../simp
|
||||
make
|
||||
)
|
||||
'';
|
||||
|
||||
postBuild = "echo testing; ! (bash ./test | grep ERROR)";
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p "$out/share/doc/satallax" "$out/bin" "$out/lib" "$out/lib/satallax"
|
||||
cp bin/satallax.opt "$out/bin/satallax"
|
||||
wrapProgram "$out/bin/satallax" \
|
||||
--suffix PATH : "${lib.makeBinPath [ coq eprover ]}:$out/libexec/satallax" \
|
||||
--add-flags "-M" --add-flags "$out/lib/satallax/modes"
|
||||
|
||||
cp LICENSE README "$out/share/doc/satallax"
|
||||
|
||||
cp bin/*.so "$out/lib"
|
||||
|
||||
cp -r modes "$out/lib/satallax/"
|
||||
cp -r problems "$out/lib/satallax/"
|
||||
cp -r coq* "$out/lib/satallax/"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Automated theorem prover for higher-order logic";
|
||||
license = lib.licenses.mit ;
|
||||
maintainers = [lib.maintainers.raskin];
|
||||
platforms = lib.platforms.linux;
|
||||
downloadPage = "http://www.ps.uni-saarland.de/~cebrown/satallax/downloads.php";
|
||||
homepage = "http://www.ps.uni-saarland.de/~cebrown/satallax/index.php";
|
||||
};
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
diff --git i/minisat/core/SolverTypes.h w/minisat/core/SolverTypes.h
|
||||
--- i/minisat/core/SolverTypes.h
|
||||
+++ w/minisat/core/SolverTypes.h
|
||||
@@ -47,7 +47,7 @@ struct Lit {
|
||||
int x;
|
||||
|
||||
// Use this as a constructor:
|
||||
- friend Lit mkLit(Var var, bool sign = false);
|
||||
+ friend Lit mkLit(Var var, bool sign);
|
||||
|
||||
bool operator == (Lit p) const { return x == p.x; }
|
||||
bool operator != (Lit p) const { return x != p.x; }
|
||||
@@ -55,7 +55,7 @@ struct Lit {
|
||||
};
|
||||
|
||||
|
||||
-inline Lit mkLit (Var var, bool sign) { Lit p; p.x = var + var + (int)sign; return p; }
|
||||
+inline Lit mkLit (Var var, bool sign = false) { Lit p; p.x = var + var + (int)sign; return p; }
|
||||
inline Lit operator ~(Lit p) { Lit q; q.x = p.x ^ 1; return q; }
|
||||
inline Lit operator ^(Lit p, bool b) { Lit q; q.x = p.x ^ (unsigned int)b; return q; }
|
||||
inline bool sign (Lit p) { return p.x & 1; }
|
||||
Loading…
Add table
Add a link
Reference in a new issue