3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/pkgs/applications/science/logic/aspino/default.nix
Maximilian Bosch 29bc0a00a1
aspino: fix build
Aspino patched `libglucose` for their own uses, however they currently
depend on glucose v4.0.
(see e31c3b4e57/patches)

The patches don't apply properly on `glucose-4.1` anymore, furthermore
the new source directory caused the `bootstrap.sh` from `aspino` which
was supposed to apply the patches and recompile the setup to break.

Furthermore some minor changes to the derivation were introduced:

- upgraded from `2016-01-31` to `2017-03-09`
- the name contains an `-unstable-` infix as upstream has no releases
- instead of a `patchPhase` the `postPatch` hook will be used for
  `substituteInPlace` to keep advanced patching features from `nixpkgs`
  available.
- `patchShebangs` will be called to avoid impurities because of the
  implicit reliance on `/bin/sh`
- added myself as second maintainer to have more people available in
  case of any further breackage

See https://hydra.nixos.org/build/70688471/log
See ticket #36453
2018-03-17 13:02:51 +01:00

49 lines
1.2 KiB
Nix

{ stdenv, fetchurl, fetchFromGitHub, zlib, boost, glucose }:
let
glucose' = fetchurl {
url = "http://www.labri.fr/perso/lsimon/downloads/softwares/glucose-syrup.tgz";
sha256 = "0bq5l2jabhdfhng002qfk0mcj4pfi1v5853x3c7igwfrgx0jmfld";
};
in
stdenv.mkDerivation rec {
name = "aspino-unstable-2017-03-09";
src = fetchFromGitHub {
owner = "alviano";
repo = "aspino";
rev = "e31c3b4e5791a454e6602439cb26bd98d23c4e78";
sha256 = "0annsjs2prqmv1lbs0lxr7yclfzh47xg9zyiq6mdxcc02rxsi14f";
};
buildInputs = [ zlib boost ];
postPatch = ''
substituteInPlace Makefile \
--replace "GCC = g++" "GCC = c++"
patchShebangs .
'';
preBuild = ''
cp ${glucose'} patches/glucose-syrup.tgz
./bootstrap.sh
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
install -m0755 build/release/{aspino,fairino-{bs,ls,ps},maxino-2015-{k16,kdyn}} $out/bin
runHook postInstall
'';
meta = with stdenv.lib; {
description = "SAT/PseudoBoolean/MaxSat/ASP solver using glucose";
maintainers = with maintainers; [ gebner ma27 ];
platforms = platforms.unix;
license = licenses.asl20;
homepage = http://alviano.net/software/maxino/;
};
}