diff --git a/pkgs/development/tools/parsing/flex/builder-new.sh b/pkgs/development/tools/parsing/flex/builder-new.sh new file mode 100755 index 00000000000..42ec3fdb375 --- /dev/null +++ b/pkgs/development/tools/parsing/flex/builder-new.sh @@ -0,0 +1,10 @@ +#! /bin/sh + +export buildinputs="$yacc" +. $stdenv/setup || exit 1 + +tar xvfj $src || exit 1 +cd flex-* || exit 1 +./configure --prefix=$out || exit 1 +make || exit 1 +make install || exit 1 diff --git a/pkgs/development/tools/parsing/flex/flex-new.nix b/pkgs/development/tools/parsing/flex/flex-new.nix new file mode 100644 index 00000000000..fc5d880a027 --- /dev/null +++ b/pkgs/development/tools/parsing/flex/flex-new.nix @@ -0,0 +1,18 @@ +# !!! this should be moved to default.nix eventually (but I delay +# doing that since it would cause a rebuild of lots of stuff). + +{stdenv, fetchurl, yacc}: + +assert !isNull yacc; + +derivation { + name = "flex-2.5.31"; + system = stdenv.system; + builder = ./builder-new.sh; + src = fetchurl { + url = http://heanet.dl.sourceforge.net/sourceforge/lex/flex-2.5.31.tar.bz2; + md5 = "363dcc4afc917dc51306eb9d3de0152f"; + }; + stdenv = stdenv; + yacc = yacc; +} diff --git a/pkgs/system/all-packages-generic.nix b/pkgs/system/all-packages-generic.nix index b7ee646a1c2..f18aba276fb 100644 --- a/pkgs/system/all-packages-generic.nix +++ b/pkgs/system/all-packages-generic.nix @@ -209,6 +209,12 @@ yacc = bison; }; + flexnew = (import ../development/tools/parsing/flex/flex-new.nix) { + fetchurl = fetchurl; + stdenv = stdenv; + yacc = bison; + }; + gcc = (import ../development/compilers/gcc) { fetchurl = fetchurl; stdenv = stdenv; diff --git a/pkgs/system/populate-cache.nix b/pkgs/system/populate-cache.nix index 927a8143839..b4aa946109c 100644 --- a/pkgs/system/populate-cache.nix +++ b/pkgs/system/populate-cache.nix @@ -4,6 +4,7 @@ let { [ pkgs.zip pkgs.unzip pkgs.valgrind + pkgs.flexnew pkgs.par2cmdline pkgs.cksfv pkgs.graphviz