diff options
Diffstat (limited to 'pkgs/tools/text')
-rw-r--r-- | pkgs/tools/text/recode/default.nix | 46 | ||||
-rw-r--r-- | pkgs/tools/text/recode/recode-3.6-as-if.patch | 19 | ||||
-rw-r--r-- | pkgs/tools/text/recode/recode-3.6-gettextfix.diff | 23 |
3 files changed, 88 insertions, 0 deletions
diff --git a/pkgs/tools/text/recode/default.nix b/pkgs/tools/text/recode/default.nix new file mode 100644 index 000000000000..e7c5997021db --- /dev/null +++ b/pkgs/tools/text/recode/default.nix @@ -0,0 +1,46 @@ +{stdenv, fetchurl, autoconf, automake, libtool, gettext, perl}: + +let + asIfPatch = ./recode-3.6-as-if.patch; + + gettextPatch = ./recode-3.6-gettextfix.diff; + + debianPatch = fetchurl { + url = "http://ftp.de.debian.org/debian/pool/main/r/recode/recode_3.6-15.diff.gz"; + sha256 = "114qxm29wk95w5760bswgd46d5p00g5kbfai5wchjvcbi722p5qf"; + }; +in +stdenv.mkDerivation { + name = "recode-3.6"; + + src = fetchurl { + url = "ftp://ftp.halifax.rwth-aachen.de/gnu/recode/recode-3.6.tar.gz"; + sha256 = "1krgjqfhsxcls4qvxhagc45sm1sd0w69jm81nwm0bip5z3rs9rp3"; + }; + + buildInputs = [ autoconf automake libtool gettext perl ]; + + patchPhase = '' + patch -Np1 -i ${asIfPatch} + patch -Np1 -i ${gettextPatch} + gunzip <${debianPatch} | patch -Np1 -i - + sed -i '1i#include <stdlib.h>' src/argmatch.c + rm -f acinclude.m4 + autoreconf -fi + libtoolize + ''; + + configureFlags = "--without-included-gettext"; + + doCheck = true; + + meta = { + homepage = "http://www.gnu.org/software/recode/"; + description = "Converts files between various character sets and usages"; + + license = "GPLv2+"; + + platforms = stdenv.lib.platforms.unix; + maintainers = []; + }; +} diff --git a/pkgs/tools/text/recode/recode-3.6-as-if.patch b/pkgs/tools/text/recode/recode-3.6-as-if.patch new file mode 100644 index 000000000000..c7bcc27c8750 --- /dev/null +++ b/pkgs/tools/text/recode/recode-3.6-as-if.patch @@ -0,0 +1,19 @@ +http://bugs.gentoo.org/283029 + +--- a/m4/flex.m4 ++++ b/m4/flex.m4 +@@ -8,11 +8,11 @@ dnl ad_AC_PROG_FLEX + dnl Look for flex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT + AC_DEFUN(ad_AC_PROG_FLEX, + [AC_CHECK_PROGS(LEX, flex, missing) +-if test "$LEX" = missing; then ++AS_IF([test "$LEX" = missing], [dnl + LEX="\$(top_srcdir)/$ac_aux_dir/missing flex" + LEX_OUTPUT_ROOT=lex.yy + AC_SUBST(LEX_OUTPUT_ROOT)dnl +-else ++], [: + AC_PROG_LEX + AC_DECL_YYTEXT +-fi]) ++])]) diff --git a/pkgs/tools/text/recode/recode-3.6-gettextfix.diff b/pkgs/tools/text/recode/recode-3.6-gettextfix.diff new file mode 100644 index 000000000000..3b7eb8ba20e6 --- /dev/null +++ b/pkgs/tools/text/recode/recode-3.6-gettextfix.diff @@ -0,0 +1,23 @@ +http://bugs.gentoo.org/239372 + +patch by Dmitry Karasik + +--- recode-3.6/m4/gettext.m4 ++++ recode-3.6/m4/gettext.m4 +@@ -109,12 +109,12 @@ + else + ac_items="$LINGUAS" + for ac_item in $ac_items; do +- case "$ALL_LINGUAS" in +- *$ac_item*) ++ for supported_item in $ALL_LINGUAS; do ++ if test "$ac_item" = "$supported_item"; then + ac_print="$ac_print $ac_item" + MOFILES="$MOFILES $ac_item.mo" +- ;; +- esac ++ fi ++ done + done + fi + AC_SUBST(MOFILES) |