Update flapjax compiler to the latest release, version 2.1
Also add to nixpkgs new dependencies from hackage. svn path=/nixpkgs/trunk/; revision=26283
This commit is contained in:
parent
587a175abf
commit
33fb7aef16
6 changed files with 86 additions and 15 deletions
|
@ -1,25 +1,30 @@
|
|||
args:
|
||||
args.stdenv.mkDerivation {
|
||||
name = "flapjax-source-20070514";
|
||||
{cabal, fetchurl, unzip, xhtml, WebBits, WebBitsHtml, JsContracts}:
|
||||
|
||||
src = args.fetchurl {
|
||||
url = http://www.flapjax-lang.org/download/20070514/flapjax-source.tar.gz;
|
||||
sha256 = "188dafpggbfdyciqhrjaq12q0q01z1rp3mpm2iixb0mvrci14flc";
|
||||
cabal.mkDerivation ( self: {
|
||||
pname = "flapjax";
|
||||
version = "2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://github.com/brownplt/flapjax/zipball/Flapjax-2.1;
|
||||
name = "flapjax-2.1.zip";
|
||||
sha256 = "1cp9g570528a813ljnvd1lb389iz0i6511xynf6kzryv8ckc1n7v";
|
||||
};
|
||||
|
||||
phases = "unpackPhase buildPhase";
|
||||
# The Makefile copies some files to update the flapjax website into
|
||||
# missing directories; the -p is to avoid these errors.
|
||||
preConfigure = ''
|
||||
cd fx
|
||||
sed -i 's/mkdir/mkdir -p/' Makefile
|
||||
make
|
||||
cd ../compiler
|
||||
'';
|
||||
|
||||
buildPhase = "
|
||||
ensureDir \$out/bin
|
||||
cd compiler;
|
||||
ghc --make Fjc.hs -o \$out/bin/fjc
|
||||
";
|
||||
|
||||
buildInputs =(with args; [ghc] ++ libs);
|
||||
extraBuildInputs = [ unzip JsContracts ];
|
||||
propagatedBuildInputs = [ xhtml WebBits WebBitsHtml ];
|
||||
|
||||
meta = {
|
||||
description = "programming language designed around the demands of modern, client-based Web applications";
|
||||
homepage = http://www.flapjax-lang.org/;
|
||||
license = "BSD";
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
13
pkgs/development/libraries/haskell/JsContracts/default.nix
Normal file
13
pkgs/development/libraries/haskell/JsContracts/default.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{cabal, WebBits, WebBitsHtml}:
|
||||
|
||||
cabal.mkDerivation (self : {
|
||||
pname = "JsContracts";
|
||||
version = "0.5.3";
|
||||
sha256 = "17l6kdpdc7lrpd9j4d2b6vklkpclshcjy6hzpi442b7pj96sn589";
|
||||
|
||||
propagatedBuildInputs = [ WebBits WebBitsHtml ];
|
||||
|
||||
meta = {
|
||||
description = "Design-by-contract for JavaScript.";
|
||||
};
|
||||
})
|
13
pkgs/development/libraries/haskell/WebBits-Html/default.nix
Normal file
13
pkgs/development/libraries/haskell/WebBits-Html/default.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{cabal, WebBits}:
|
||||
|
||||
cabal.mkDerivation (self : {
|
||||
pname = "WebBits-Html";
|
||||
version = "1.0.1";
|
||||
sha256 = "134rmm5ccfsjdr0pdwn2mf81l81rgxapa3wjjfjkxrkxq6hav35n";
|
||||
|
||||
propagatedBuildInputs = [ WebBits ];
|
||||
|
||||
meta = {
|
||||
description = "WebBits is a collection of libraries for working with JavaScript embeded in HTML files.";
|
||||
};
|
||||
})
|
13
pkgs/development/libraries/haskell/WebBits/1.0.nix
Normal file
13
pkgs/development/libraries/haskell/WebBits/1.0.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{cabal, mtl, parsec}:
|
||||
|
||||
cabal.mkDerivation (self : {
|
||||
pname = "WebBits";
|
||||
version = "1.0";
|
||||
sha256 = "1xqk4ajywlaq9nb9a02i7c25na5p2qbpc2k9zw93gbapppjiapsc";
|
||||
|
||||
propagatedBuildInputs = [ mtl parsec ];
|
||||
|
||||
meta = {
|
||||
description = "WebBits is a collection of libraries for working with JavaScript.";
|
||||
};
|
||||
})
|
13
pkgs/development/libraries/haskell/WebBits/default.nix
Normal file
13
pkgs/development/libraries/haskell/WebBits/default.nix
Normal file
|
@ -0,0 +1,13 @@
|
|||
{cabal, mtl, parsec}:
|
||||
|
||||
cabal.mkDerivation (self : {
|
||||
pname = "WebBits";
|
||||
version = "2.0";
|
||||
sha256 = "14a1rqlq925f6rdbi8yx44xszj5pvskcmw1gi1bj8hbilgmlwi7f";
|
||||
|
||||
propagatedBuildInputs = [ mtl parsec ];
|
||||
|
||||
meta = {
|
||||
description = "WebBits is a collection of libraries for working with JavaScript.";
|
||||
};
|
||||
})
|
|
@ -414,6 +414,10 @@ rec {
|
|||
|
||||
jpeg = callPackage ../development/libraries/haskell/jpeg {};
|
||||
|
||||
JsContracts = callPackage ../development/libraries/haskell/JsContracts {
|
||||
WebBits = WebBits_1_0;
|
||||
};
|
||||
|
||||
json = callPackage ../development/libraries/haskell/json {};
|
||||
|
||||
json_0_3_6 = callPackage ../development/libraries/haskell/json/0.3.6.nix {};
|
||||
|
@ -707,6 +711,12 @@ rec {
|
|||
parallel = parallel_2_2_0_1;
|
||||
};
|
||||
|
||||
WebBits = callPackage ../development/libraries/haskell/WebBits {};
|
||||
|
||||
WebBits_1_0 = callPackage ../development/libraries/haskell/WebBits/1.0.nix {};
|
||||
|
||||
WebBitsHtml = callPackage ../development/libraries/haskell/WebBits-Html {};
|
||||
|
||||
webRoutes = callPackage ../development/libraries/haskell/web-routes {
|
||||
network = network_2_2_1_7;
|
||||
};
|
||||
|
@ -773,6 +783,10 @@ rec {
|
|||
|
||||
epic = callPackage ../development/compilers/epic {};
|
||||
|
||||
flapjax = callPackage ../development/compilers/flapjax {
|
||||
WebBits = WebBits_1_0;
|
||||
};
|
||||
|
||||
helium = callPackage ../development/compilers/helium {};
|
||||
|
||||
idris = callPackage ../development/compilers/idris {};
|
||||
|
|
Loading…
Reference in a new issue