2020-01-18 15:55:23 +01:00
|
|
|
{ stdenv, fetchurl, zlib }:
|
2016-05-26 22:36:15 +02:00
|
|
|
|
2020-11-21 04:00:57 +01:00
|
|
|
let
|
|
|
|
ARCH = {
|
|
|
|
i686-linux = "linux32";
|
|
|
|
x86_64-linux = "linux64";
|
|
|
|
aarch64-linux = "linux64";
|
|
|
|
}."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
|
|
|
in
|
2016-05-26 22:36:15 +02:00
|
|
|
stdenv.mkDerivation {
|
2020-01-18 15:55:23 +01:00
|
|
|
pname = "picat";
|
2020-11-20 14:32:14 +01:00
|
|
|
version = "3.0p3";
|
2016-05-26 22:36:15 +02:00
|
|
|
|
|
|
|
src = fetchurl {
|
2020-11-20 14:32:14 +01:00
|
|
|
url = "http://picat-lang.org/download/picat30_3_src.tar.gz";
|
|
|
|
sha256 = "052w0vk2xfmky5nv280ysb8in6vaph7i79yvbddqmahzszarq5hw";
|
2016-05-26 22:36:15 +02:00
|
|
|
};
|
|
|
|
|
2020-01-18 15:55:23 +01:00
|
|
|
buildInputs = [ zlib ];
|
|
|
|
|
2020-11-21 04:00:57 +01:00
|
|
|
inherit ARCH;
|
2016-05-26 22:36:15 +02:00
|
|
|
|
2016-05-31 14:57:28 +02:00
|
|
|
hardeningDisable = [ "format" ];
|
2020-09-30 04:20:05 +02:00
|
|
|
enableParallelBuilding = true;
|
2016-05-31 14:57:28 +02:00
|
|
|
|
2020-11-20 14:32:14 +01:00
|
|
|
buildPhase = "cd emu && make -j $NIX_BUILD_CORES -f Makefile.$ARCH";
|
2020-11-21 04:00:57 +01:00
|
|
|
installPhase = "mkdir -p $out/bin && cp picat $out/bin/picat";
|
2016-05-26 22:36:15 +02:00
|
|
|
|
2020-11-20 14:32:14 +01:00
|
|
|
meta = with stdenv.lib; {
|
2016-05-26 22:36:15 +02:00
|
|
|
description = "Logic-based programming langage";
|
2020-11-20 14:32:14 +01:00
|
|
|
homepage = "http://picat-lang.org/";
|
|
|
|
license = licenses.mpl20;
|
|
|
|
platforms = platforms.linux;
|
|
|
|
maintainers = with maintainers; [ earldouglas thoughtpolice ];
|
2016-05-26 22:36:15 +02:00
|
|
|
};
|
|
|
|
}
|