forked from mirrors/nixpkgs
hugs98 expression
svn path=/nixpkgs/trunk/; revision=9168
This commit is contained in:
parent
8f3a8b5006
commit
88640db58e
57
pkgs/development/compilers/hugs/default.nix
Normal file
57
pkgs/development/compilers/hugs/default.nix
Normal file
|
@ -0,0 +1,57 @@
|
|||
args: with args.lib; with args;
|
||||
let
|
||||
co = chooseOptionsByFlags {
|
||||
inherit args;
|
||||
flagDescr = {
|
||||
# does without X make sense? We can try
|
||||
mandatory ={ cfgOption = [ "--prefix=\$out" ]; implies = "pthreads"; };
|
||||
pathcanonicalization = { cfgOption = "--enable-path-canonicalization"; }; # enable canonicalization of filenames
|
||||
timer = { cfgOption = "--enable-timer"; };# enable evaluation timing (for benchmarking Hugs)
|
||||
profiling = { cfgOption = "--enable-profiling"; };# enable heap profiler
|
||||
stack = { cfgOption = "--enable-stack-dumps"; };#-dumps enable stack dump on stack overflow
|
||||
large = { cfgOption = "--disable-large-banner"; };#-banner disable multiline startup banner
|
||||
internal = { cfgOption = "--enable-internal-prims"; };#-prims experimental primitives to access Hugs's innards
|
||||
debug = { cfgOption = "--enable-debug"; };# include C debugging information (for debugging Hugs)
|
||||
tag = { cfgOption = "--enable-tag-checks"; };#-checks runtime tag checking (for debugging Hugs)
|
||||
lint = { cfgOption = "--enable-lint"; };# enable "lint" flags (for debugging Hugs)
|
||||
only98 = { cfgOption = "--enable-only98"; };# build Hugs to understand Haskell 98 only
|
||||
ffi = { cfgOption = "--enable-ffi"; };# include modules that use the FFI [default=autodetect]
|
||||
char = { cfgOption = "--enable-char-encoding"; blocks = "utf8"; };
|
||||
#-encoding encode all character I/O using the byte encoding
|
||||
#determined by the locale in effect at that time. To
|
||||
#require that the UTF-8 encoding is always used, give
|
||||
#the --enable-char-encoding=utf8 option.
|
||||
#[default=autodetect]
|
||||
utf8 = { cfgOption = "--enable-char-encoding=utf8"; blocks="char"; };
|
||||
|
||||
|
||||
#--with-nmake produce a Makefile compatible with nmake
|
||||
#--with-gui build Hugs for Windows GUI (Borland C++ only)
|
||||
pthreads = { cfgOption = "--with-pthreads"; }; # build Hugs using POSIX threads C library
|
||||
# I think we need this as long as not using nptl ?
|
||||
|
||||
};
|
||||
optionals = [];
|
||||
defaultFlags = ["ffi"];
|
||||
};
|
||||
|
||||
in args.stdenv.mkDerivation {
|
||||
|
||||
# passing the flags in case a library using this want's to check them (*) ..
|
||||
inherit (co) /* flags */ buildInputs;
|
||||
|
||||
configurePhase="./configure --prefix=\$out";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://cvs.haskell.org/Hugs/downloads/2006-09/hugs98-Sep2006.tar.gz;
|
||||
sha256 = "3cf4d27673564cffe691bd14032369f646233f14daf2bc37c6c6df9f062b46b6";
|
||||
};
|
||||
|
||||
name="hugs98";
|
||||
|
||||
meta = {
|
||||
license = "as-is"; # gentoo is calling it this way..
|
||||
description = "The HUGS98 Haskell <interpreter";
|
||||
homepage = http://www.haskell.org/hugs;
|
||||
};
|
||||
}
|
Loading…
Reference in a new issue