2017-03-25 14:54:24 +00:00
|
|
|
{ stdenv, fetchFromGitHub, coreutils, autoreconfHook, smlnj }:
|
2014-08-19 06:36:57 +00:00
|
|
|
|
2017-03-25 14:54:24 +00:00
|
|
|
let
|
2019-11-30 20:04:11 +00:00
|
|
|
rev = "7376cb20ba5285a6b076a73c821e4743809c1d9d";
|
2019-08-13 21:52:01 +00:00
|
|
|
in stdenv.mkDerivation {
|
2019-08-15 12:41:18 +00:00
|
|
|
pname = "manticore";
|
2019-11-30 20:04:11 +00:00
|
|
|
version = "2019.12.03";
|
2021-01-19 21:20:11 +00:00
|
|
|
|
2017-03-25 14:54:24 +00:00
|
|
|
src = fetchFromGitHub {
|
2018-03-13 22:51:19 +00:00
|
|
|
owner = "ManticoreProject";
|
|
|
|
repo = "manticore";
|
2019-11-30 20:04:11 +00:00
|
|
|
sha256 = "17h3ar7d6145dyrm006r3gd5frk3v4apjk383n78dh4vlniv1ay2";
|
2017-03-25 14:54:24 +00:00
|
|
|
inherit rev;
|
2014-08-19 06:36:57 +00:00
|
|
|
};
|
2017-03-25 14:54:24 +00:00
|
|
|
|
|
|
|
enableParallelBuilding = false;
|
2021-01-19 21:20:11 +00:00
|
|
|
|
2017-03-25 14:54:24 +00:00
|
|
|
nativeBuildInputs = [ autoreconfHook ];
|
2021-01-19 21:20:11 +00:00
|
|
|
|
2017-03-25 14:54:24 +00:00
|
|
|
buildInputs = [ coreutils smlnj ];
|
|
|
|
|
|
|
|
autoreconfFlags = "-Iconfig -vfi";
|
|
|
|
|
2017-03-25 18:43:42 +00:00
|
|
|
unpackPhase = ''
|
|
|
|
mkdir -p $out
|
|
|
|
cd $out
|
|
|
|
unpackFile $src
|
2018-03-13 22:51:19 +00:00
|
|
|
mv source repo_checkout
|
2017-03-25 18:43:42 +00:00
|
|
|
cd repo_checkout
|
|
|
|
chmod u+w . -R
|
2021-01-19 21:20:11 +00:00
|
|
|
'';
|
|
|
|
|
2017-03-25 18:43:42 +00:00
|
|
|
postPatch = ''
|
|
|
|
patchShebangs .
|
|
|
|
substituteInPlace configure.ac --replace 'MANTICORE_ROOT=`pwd`' 'MANTICORE_ROOT=$out/repo_checkout'
|
|
|
|
'';
|
2017-03-25 14:54:24 +00:00
|
|
|
|
|
|
|
preInstall = "mkdir -p $out/bin";
|
2014-08-19 06:36:57 +00:00
|
|
|
|
|
|
|
meta = {
|
2016-06-20 10:53:46 +00:00
|
|
|
description = "A parallel, pure variant of Standard ML";
|
2014-08-19 06:36:57 +00:00
|
|
|
|
2021-01-19 21:20:11 +00:00
|
|
|
longDescription = ''
|
2014-08-19 06:36:57 +00:00
|
|
|
Manticore is a high-level parallel programming language aimed at
|
|
|
|
general-purpose applications running on multi-core
|
|
|
|
processors. Manticore supports parallelism at multiple levels:
|
|
|
|
explicit concurrency and coarse-grain parallelism via CML-style
|
|
|
|
constructs and fine-grain parallelism via various light-weight
|
|
|
|
notations, such as parallel tuple expressions and NESL/Nepal-style
|
2021-01-19 21:20:11 +00:00
|
|
|
parallel array comprehensions.
|
2014-08-19 06:36:57 +00:00
|
|
|
'';
|
|
|
|
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "http://manticore.cs.uchicago.edu/";
|
2014-08-19 06:36:57 +00:00
|
|
|
};
|
|
|
|
}
|