From ae23a33b9a44a45907e7885568841bd7c8ad5dbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 29 May 2012 10:13:23 +0000 Subject: GNU Gettext: Fix Cygwin build. svn path=/nixpkgs/trunk/; revision=34270 --- pkgs/development/libraries/gettext/default.nix | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) (limited to 'pkgs') diff --git a/pkgs/development/libraries/gettext/default.nix b/pkgs/development/libraries/gettext/default.nix index f7b31139b562..73366b2bdc95 100644 --- a/pkgs/development/libraries/gettext/default.nix +++ b/pkgs/development/libraries/gettext/default.nix @@ -1,6 +1,6 @@ { stdenv, fetchurl, libiconv }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (rec { name = "gettext-0.18.1.1"; src = fetchurl { @@ -8,7 +8,14 @@ stdenv.mkDerivation rec { sha256 = "1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k"; }; - configureFlags = "--disable-csharp"; + configureFlags = [ "--disable-csharp" ] + ++ (stdenv.lib.optionals stdenv.isCygwin + [ # We have a static libiconv, so we can only build the static lib. + "--disable-shared" "--enable-static" + + # Share the cache among the various `configure' runs. + "--config-cache" + ]); # On cross building, gettext supposes that the wchar.h from libc # does not fulfill gettext needs, so it tries to work with its @@ -60,3 +67,16 @@ stdenv.mkDerivation rec { platforms = stdenv.lib.platforms.all; }; } + +// + +stdenv.lib.optionalAttrs stdenv.isCygwin { + patchPhase = + # Make sure `error.c' gets compiled and is part of `libgettextlib.la'. + # This fixes: + # gettext-0.18.1.1/gettext-tools/src/msgcmp.c:371: undefined reference to `_error_message_count' + + '' sed -i gettext-tools/gnulib-lib/Makefile.in \ + -e 's/am_libgettextlib_la_OBJECTS =/am_libgettextlib_la_OBJECTS = error.lo/g' + ''; +}) -- cgit v1.2.3