diff --git a/pkgs/development/compilers/strategoxt/builder.sh b/pkgs/development/compilers/strategoxt/builder.sh new file mode 100755 index 00000000000..5311bc98b97 --- /dev/null +++ b/pkgs/development/compilers/strategoxt/builder.sh @@ -0,0 +1,10 @@ +#! /bin/sh + +buildinputs="$aterm $sdf" +. $stdenv/setup || exit 1 + +tar zxf $src || exit 1 +cd strategoxt-* || exit 1 +./configure --prefix=$out --with-aterm=$aterm --with-sdf=$sdf || exit 1 +make || exit 1 +make install || exit 1 diff --git a/pkgs/development/compilers/strategoxt/default.nix b/pkgs/development/compilers/strategoxt/default.nix new file mode 100644 index 00000000000..f2087084ca0 --- /dev/null +++ b/pkgs/development/compilers/strategoxt/default.nix @@ -0,0 +1,12 @@ +{stdenv, fetchurl, aterm, sdf}: derivation { + name = "strategoxt-0.9.4-4626"; + system = stdenv.system; + builder = ./builder.sh; + src = fetchurl { + url = http://losser.st-lab.cs.uu.nl/~mbravenb/dailydist/strategoxt/src/strategoxt-0.9.4-4626.tar.gz; + md5 = "f33ae9fdb9d8628ae01fa0f26bfa0429" + }; + stdenv = stdenv; + aterm = aterm; + sdf = sdf; +} diff --git a/pkgs/development/compilers/strategoxt/strategoxt-0.9.3.nix b/pkgs/development/compilers/strategoxt/strategoxt-0.9.3.nix new file mode 100644 index 00000000000..ed26488fca7 --- /dev/null +++ b/pkgs/development/compilers/strategoxt/strategoxt-0.9.3.nix @@ -0,0 +1,12 @@ +{stdenv, fetchurl, aterm, sdf}: derivation { + name = "strategoxt-0.9.3"; + system = stdenv.system; + builder = ./builder.sh; + src = fetchurl { + url = ftp://ftp.stratego-language.org/pub/stratego/StrategoXT/strategoxt-0.9.3.tar.gz; + md5 = "3425e7ae896426481bd258817737e3d6" + }; + stdenv = stdenv; + aterm = aterm; + sdf = sdf; +} diff --git a/pkgs/development/compilers/tiger/builder.sh b/pkgs/development/compilers/tiger/builder.sh new file mode 100755 index 00000000000..880cd4c4e05 --- /dev/null +++ b/pkgs/development/compilers/tiger/builder.sh @@ -0,0 +1,17 @@ +#! /bin/sh + +buildinputs="$aterm $sdf $strategoxt" +. $stdenv/setup || exit 1 + +tar zxf $src || exit 1 +cd tiger-* || exit 1 +./configure --prefix=$out \ + --with-aterm=$aterm \ + --with-sdf=$sdf \ + --with-stratego-xt=$strategoxt \ + --enable-tiger \ + --enable-ir \ + --enable-asm \ + || exit 1 +make || exit 1 +make install || exit 1 diff --git a/pkgs/development/compilers/tiger/default.nix b/pkgs/development/compilers/tiger/default.nix new file mode 100644 index 00000000000..6b9d0df4268 --- /dev/null +++ b/pkgs/development/compilers/tiger/default.nix @@ -0,0 +1,13 @@ +{stdenv, fetchurl, aterm, sdf, strategoxt}: derivation { + name = "tiger-1.3-4631"; + system = stdenv.system; + builder = ./builder.sh; + src = fetchurl { + url = http://losser.st-lab.cs.uu.nl/~mbravenb/dailydist/tiger/src/tiger-1.3-4631.tar.gz; + md5 = "1ea6070d84134eb6cff7fb32a75ef90a" + }; + stdenv = stdenv; + aterm = aterm; + sdf = sdf; + strategoxt = strategoxt; +} diff --git a/pkgs/development/tools/parsing/sdf2/builder.sh b/pkgs/development/tools/parsing/sdf2/builder.sh new file mode 100755 index 00000000000..ed5728cc6c2 --- /dev/null +++ b/pkgs/development/tools/parsing/sdf2/builder.sh @@ -0,0 +1,11 @@ +#! /bin/sh + +buildinputs="$aterm $getopt" +. $stdenv/setup || exit 1 + +tar zxf $src || exit 1 +cd sdf2-bundle-* || exit 1 +./configure --prefix=$out --with-aterm=$aterm || exit 1 +make install || exit 1 + +echo "$getopt" > $out/propagated-build-inputs || exit 1 diff --git a/pkgs/development/tools/parsing/sdf2/default.nix b/pkgs/development/tools/parsing/sdf2/default.nix new file mode 100644 index 00000000000..b5fa9d64bff --- /dev/null +++ b/pkgs/development/tools/parsing/sdf2/default.nix @@ -0,0 +1,13 @@ +{stdenv, fetchurl, aterm, getopt}: +derivation { + name = "sdf2-1.6"; + system = stdenv.system; + builder = ./builder.sh; + src = fetchurl { + url = ftp://ftp.stratego-language.org/pub/stratego/sdf2/sdf2-bundle-1.6.tar.gz; + md5 = "283be0b4c7c9575c1b5cc735316e6192"; + }; + stdenv = stdenv; + aterm = aterm; + getopt = getopt; +} diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix index 7b9eddeb6b9..b57d56e0a3f 100644 --- a/pkgs/system/all-packages-generic.nix +++ b/pkgs/system/all-packages-generic.nix @@ -186,6 +186,35 @@ stdenv = stdenv; }; + sdf2 = (import ../development/tools/parsing/sdf2) { + fetchurl = fetchurl; + stdenv = stdenv; + aterm = aterm; + getopt = getopt; + }; + + strategoxt = (import ../development/compilers/strategoxt) { + fetchurl = fetchurl; + stdenv = stdenv; + aterm = aterm; + sdf = sdf2; + }; + + strategoxt093 = (import ../development/compilers/strategoxt/strategoxt-0.9.3.nix) { + fetchurl = fetchurl; + stdenv = stdenv; + aterm = aterm; + sdf = sdf2; + }; + + tiger = (import ../development/compilers/tiger) { + fetchurl = fetchurl; + stdenv = stdenv; + aterm = aterm; + sdf = sdf2; + strategoxt = strategoxt; + }; + expat = (import ../development/libraries/expat) { fetchurl = fetchurl; stdenv = stdenv;