From cf1d3677d3470e3d5a00f2151aa0e09caefd3412 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 6 Jan 2017 16:11:47 +0100 Subject: [PATCH] flex: bring back 2.6.1 as an option Some breakages after flex update aren't so easy to fix, and I can't really afford to spend much time on it ATM. --- pkgs/development/tools/parsing/flex/2.6.1.nix | 37 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/tools/parsing/flex/2.6.1.nix diff --git a/pkgs/development/tools/parsing/flex/2.6.1.nix b/pkgs/development/tools/parsing/flex/2.6.1.nix new file mode 100644 index 000000000000..7ee2e27e60ad --- /dev/null +++ b/pkgs/development/tools/parsing/flex/2.6.1.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, bison, m4 }: + +stdenv.mkDerivation rec { + name = "flex-2.6.1"; + + src = fetchurl { + url = "https://github.com/westes/flex/releases/download/v2.6.1/flex-2.6.1.tar.gz"; + sha256 = "0fy14c35yz2m1n1m4f02by3501fn0cca37zn7jp8lpp4b3kgjhrw"; + }; + + buildInputs = [ bison ]; + + propagatedNativeBuildInputs = [ m4 ]; + + postConfigure = stdenv.lib.optionalString (stdenv.isDarwin || stdenv.isCygwin) '' + sed -i Makefile -e 's/-no-undefined//;' + ''; + + crossAttrs = { + + # disable tests which can't run on build machine + postPatch = '' + substituteInPlace Makefile.in --replace "tests" " "; + ''; + + preConfigure = '' + export ac_cv_func_malloc_0_nonnull=yes + export ac_cv_func_realloc_0_nonnull=yes + ''; + }; + + meta = { + homepage = https://github.com/westes/flex; + description = "A fast lexical analyser generator"; + platforms = stdenv.lib.platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c2182870df9f..50322082cd8a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6276,6 +6276,7 @@ in jdepend = callPackage ../development/tools/analysis/jdepend { }; flex_2_5_35 = callPackage ../development/tools/parsing/flex/2.5.35.nix { }; + flex_2_6_1 = callPackage ../development/tools/parsing/flex/2.6.1.nix { }; flex = callPackage ../development/tools/parsing/flex/default.nix { }; flexcpp = callPackage ../development/tools/parsing/flexc++ { };