From e4362cea6f3c3d8df03ae5e7a2e4f7a5fb8a8422 Mon Sep 17 00:00:00 2001 From: Robert Scott Date: Sun, 14 Nov 2021 14:31:09 +0000 Subject: [PATCH] monosat, python3Packages.monosat: fix for non-x86 --- pkgs/applications/science/logic/monosat/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/logic/monosat/default.nix b/pkgs/applications/science/logic/monosat/default.nix index 259cdcea4432..b26c122064a8 100644 --- a/pkgs/applications/science/logic/monosat/default.nix +++ b/pkgs/applications/science/logic/monosat/default.nix @@ -28,9 +28,18 @@ let }) ]; + # source behind __linux__ check assumes system is also x86 and + # tries to disable x86/x87-specific extended precision mode + # https://github.com/sambayless/monosat/issues/33 + commonPostPatch = lib.optionalString (!(stdenv.isi686 || stdenv.isx86_64)) '' + substituteInPlace src/monosat/Main.cc \ + --replace 'defined(__linux__)' '0' + ''; + core = stdenv.mkDerivation { name = "${pname}-${version}"; inherit src patches; + postPatch = commonPostPatch; nativeBuildInputs = [ cmake ]; buildInputs = [ zlib gmp jdk8 ]; @@ -66,7 +75,7 @@ let # After patching src, move to where the actually relevant source is. This could just be made # the sourceRoot if it weren't for the patch. - postPatch = '' + postPatch = commonPostPatch + '' cd src/monosat/api/python '' + # The relative paths here don't make sense for our Nix build