2020-01-18 14:55:23 +00:00
|
|
|
{ stdenv, fetchurl, zlib }:
|
2016-05-26 20:36:15 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation {
|
2020-01-18 14:55:23 +00:00
|
|
|
pname = "picat";
|
2020-10-20 14:52:41 +00:00
|
|
|
version = "3.0p2";
|
2016-05-26 20:36:15 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
2020-10-20 14:52:41 +00:00
|
|
|
url = "http://picat-lang.org/download/picat30_2_src.tar.gz";
|
|
|
|
sha256 = "0sn4fqj2ryalcndx1df5kx5rzb4pfcrza5ljlg9dkfbqv02xgxkd";
|
2016-05-26 20:36:15 +00:00
|
|
|
};
|
|
|
|
|
2020-01-18 14:55:23 +00:00
|
|
|
buildInputs = [ zlib ];
|
|
|
|
|
2018-08-20 19:11:29 +00:00
|
|
|
ARCH = if stdenv.hostPlatform.system == "i686-linux" then "linux32"
|
|
|
|
else if stdenv.hostPlatform.system == "x86_64-linux" then "linux64"
|
2016-05-26 20:36:15 +00:00
|
|
|
else throw "Unsupported system";
|
|
|
|
|
2016-05-31 12:57:28 +00:00
|
|
|
hardeningDisable = [ "format" ];
|
2020-09-30 02:20:05 +00:00
|
|
|
enableParallelBuilding = true;
|
2016-05-31 12:57:28 +00:00
|
|
|
|
2016-05-26 20:36:15 +00:00
|
|
|
buildPhase = ''
|
|
|
|
cd emu
|
2020-01-18 14:55:23 +00:00
|
|
|
make -f Makefile.$ARCH
|
2016-05-26 20:36:15 +00:00
|
|
|
'';
|
|
|
|
|
|
|
|
installPhase = ''
|
|
|
|
mkdir -p $out/bin
|
2020-01-18 14:55:23 +00:00
|
|
|
cp picat $out/bin/picat
|
2016-05-26 20:36:15 +00:00
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "Logic-based programming langage";
|
|
|
|
longDescription = ''
|
|
|
|
Picat is a simple, and yet powerful, logic-based multi-paradigm
|
|
|
|
programming language aimed for general-purpose applications.
|
|
|
|
'';
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "http://picat-lang.org/";
|
2016-05-26 20:36:15 +00:00
|
|
|
license = stdenv.lib.licenses.mpl20;
|
|
|
|
platforms = stdenv.lib.platforms.linux;
|
2017-10-22 20:56:26 +00:00
|
|
|
maintainers = [ stdenv.lib.maintainers.earldouglas ];
|
2016-05-26 20:36:15 +00:00
|
|
|
};
|
|
|
|
}
|