Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
61 lines
1.4 KiB
Nix
61 lines
1.4 KiB
Nix
{
|
|
stdenv,
|
|
lib,
|
|
fetchFromGitHub,
|
|
}:
|
|
|
|
stdenv.mkDerivation (self: {
|
|
pname = "CLProver++";
|
|
version = "1.0.3";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "PaulGainer";
|
|
repo = "CLProverPlusPlus";
|
|
rev = "66bf6dc19d77094cc06eac3f30a3630ba830ac86";
|
|
sha256 = "sha256-UZ5e11wGuKyVrG+7hZJY6OmN6Y1mg43xPuvXPRVNKNw=";
|
|
};
|
|
|
|
postPatch = ''
|
|
sed -i 's/\(TARGET_OS *:= *\)[^ ]+/\1${
|
|
if stdenv.targetPlatform.isWindows then "WINDOWS" else "LINUX"
|
|
}/g' Makefile
|
|
sed -i 's/-m64/${
|
|
if stdenv.targetPlatform.isAarch then
|
|
"-march=${stdenv.targetPlatform.gcc.arch}"
|
|
else if stdenv.targetPlatform.is32bit then
|
|
"-m32"
|
|
else
|
|
"-m64"
|
|
}/g' Makefile
|
|
'';
|
|
|
|
preBuild = ''
|
|
mkdir bin
|
|
'';
|
|
|
|
makeFlags = [
|
|
"CC=${lib.getBin stdenv.cc}/bin/${stdenv.cc.targetPrefix}g++"
|
|
];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out/bin
|
|
cp -r bin $out/
|
|
|
|
mkdir -p $out/share/${self.pname}
|
|
cp -r examples $out/share/${self.pname}/examples
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
meta = {
|
|
description = "Ordered resolution based theorem prover for Coalition Logic";
|
|
homepage = "https://cgi.csc.liv.ac.uk/~ullrich/CLProver++/";
|
|
maintainers = with lib.maintainers; [ mgttlinger ];
|
|
platforms = with lib.platforms; linux ++ windows;
|
|
license = lib.licenses.gpl3;
|
|
mainProgram = if stdenv.targetPlatform.isWindows then "CLProver++.exe" else "CLProver++";
|
|
};
|
|
})
|