From ca9627e70852f6b2e835660df870fe3ab405882d Mon Sep 17 00:00:00 2001
From: "Suren A. Chilingaryan" <csa@suren.me>
Date: Sun, 1 Sep 2019 00:00:32 +0200
Subject: Initial import

---
 app-text/a2ps/files/50a2ps-gentoo.el               |   5 +
 app-text/a2ps/files/a2ps-4.13-manpage-chmod.patch  |  12 ++
 app-text/a2ps/files/a2ps-4.13-select-freebsd.patch |  57 ++++++++++
 app-text/a2ps/files/a2ps-4.13-stdout.diff          |  13 +++
 app-text/a2ps/files/a2ps-4.13c-emacs.patch         |  10 ++
 app-text/a2ps/files/a2ps-4.13c-fixps.patch         |  19 ++++
 .../files/a2ps-4.13c-fnmatch-replacement.patch     |  43 ++++++++
 app-text/a2ps/files/a2ps-4.13c-locale-gentoo.diff  |  25 +++++
 app-text/a2ps/files/a2ps-4.13c-psmandup.diff       |  19 ++++
 app-text/a2ps/files/a2ps-4.13c-psset.patch         |  11 ++
 app-text/a2ps/files/a2ps-4.13c-stdarg.patch        |  74 +++++++++++++
 app-text/a2ps/files/a2ps-4.14-check-mempcpy.patch  |  12 ++
 app-text/a2ps/files/a2ps-4.14-cleanup.patch        | 106 ++++++++++++++++++
 .../a2ps/files/a2ps-4.14-fix-stpcpy-proto.patch    |  17 +++
 app-text/a2ps/files/a2ps-4.14-ja-cleanup.patch     | 122 +++++++++++++++++++++
 app-text/a2ps/files/a2ps-4.14-psset.patch          |  21 ++++
 app-text/a2ps/files/a2ps-4.14-ptrdiff_t.patch      |  14 +++
 app-text/a2ps/files/a2ps-ds2.patch                 |  53 +++++++++
 app-text/a2ps/files/cyr2ps                         |  49 +++++++++
 19 files changed, 682 insertions(+)
 create mode 100644 app-text/a2ps/files/50a2ps-gentoo.el
 create mode 100644 app-text/a2ps/files/a2ps-4.13-manpage-chmod.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13-select-freebsd.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13-stdout.diff
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-emacs.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-fixps.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-fnmatch-replacement.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-locale-gentoo.diff
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-psmandup.diff
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-psset.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.13c-stdarg.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-check-mempcpy.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-cleanup.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-fix-stpcpy-proto.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-ja-cleanup.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-psset.patch
 create mode 100644 app-text/a2ps/files/a2ps-4.14-ptrdiff_t.patch
 create mode 100644 app-text/a2ps/files/a2ps-ds2.patch
 create mode 100755 app-text/a2ps/files/cyr2ps

(limited to 'app-text/a2ps/files')

diff --git a/app-text/a2ps/files/50a2ps-gentoo.el b/app-text/a2ps/files/50a2ps-gentoo.el
new file mode 100644
index 0000000..3e12daa
--- /dev/null
+++ b/app-text/a2ps/files/50a2ps-gentoo.el
@@ -0,0 +1,5 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'a2ps-mode "a2ps" nil t)
+(autoload 'a2ps-buffer "a2ps-print" nil t)
+(autoload 'a2ps-region "a2ps-print" nil t)
+(add-to-list 'auto-mode-alist '("\\.a2ps\\'" . a2ps-mode))
diff --git a/app-text/a2ps/files/a2ps-4.13-manpage-chmod.patch b/app-text/a2ps/files/a2ps-4.13-manpage-chmod.patch
new file mode 100644
index 0000000..e0c6112
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13-manpage-chmod.patch
@@ -0,0 +1,12 @@
+diff -ur a2ps-4.13.orig/man/Makefile.maint a2ps-4.13/man/Makefile.maint
+--- a2ps-4.13.orig/man/Makefile.maint	2002-03-04 20:46:26.000000000 +0200
++++ a2ps-4.13/man/Makefile.maint	2007-02-19 21:50:29.000000000 +0200
+@@ -20,7 +20,7 @@
+ 	    --include=$(basename $@).x \
+ 	    --include=common.x \
+ 	    $(executable) > $@-t || exit 1; \
+-	  chmod -w $@-t || exit 1; \
++	  chmod a-w $@-t || exit 1; \
+ 	  rm -f $@ || exit 1; \
+ 	  mv $@-t $@ || exit 1; \
+ 	else \
diff --git a/app-text/a2ps/files/a2ps-4.13-select-freebsd.patch b/app-text/a2ps/files/a2ps-4.13-select-freebsd.patch
new file mode 100644
index 0000000..a2c3889
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13-select-freebsd.patch
@@ -0,0 +1,57 @@
+--- src/select.c.orig	Thu Dec 16 02:04:56 1999
++++ src/select.c	Sat Aug 21 12:05:31 2004
+@@ -131,6 +131,36 @@
+   return 1;
+ }
+ 
++/* escapes the name of a file so that the shell groks it in 'single' q.marks. 
++   The resulting pointer has to be free()ed when not longer used. */
++char *
++shell_escape(const char *fn)
++{
++  size_t len = 0;
++  const char *inp;
++  char *retval, *outp;
++
++  for(inp = fn; *inp; ++inp)
++    switch(*inp)
++    {
++      case '\'': len += 4; break;
++      default:   len += 1; break;
++    }
++
++  outp = retval = malloc(len + 1);
++  if(!outp)
++    return NULL; /* perhaps one should do better error handling here */
++  for(inp = fn; *inp; ++inp)
++    switch(*inp)
++    {
++      case '\'': *outp++ = '\''; *outp++ = '\\'; *outp++ = '\'', *outp++ = '\''; break;
++      default:   *outp++ = *inp; break;
++    }
++  *outp = 0;
++
++  return retval;
++}
++
+ /* What says file about the type of a file (result is malloc'd).  NULL
+   if could not be run.  */
+ 
+@@ -144,11 +174,15 @@
+   if (IS_EMPTY (job->file_command))
+     return NULL;
+ 
++  filename = shell_escape(filename);
++  if(filename == NULL)
++    return NULL;
+   /* Call file(1) with the correct option */
+-  command = ALLOCA (char, (2
++  command = ALLOCA (char, (4
+ 			   + strlen (job->file_command)
+ 			   + ustrlen (filename)));
+-  sprintf (command, "%s %s", job->file_command, (const char *) filename);
++  sprintf (command, "%s '%s'", job->file_command, (const char *) filename);
++  free(filename);
+   message (msg_tool, (stderr, "Reading pipe: `%s'\n", command));
+   file_out = popen (command, "r");
+ 
diff --git a/app-text/a2ps/files/a2ps-4.13-stdout.diff b/app-text/a2ps/files/a2ps-4.13-stdout.diff
new file mode 100644
index 0000000..1e40e61
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13-stdout.diff
@@ -0,0 +1,13 @@
+--- lib/printers.c.orig       Tue Oct 12 00:01:59 1999
++++ lib/printers.c    Wed May  2 11:23:25 2001
+@@ -315,8 +315,8 @@
+   res->ppd = NULL;           /* Printer's ppd are not read yet */
+
+   /* Output */
+-  /* Default is to send to default printer */
+-  res->flag_output_is_printer = true;
++  /* Default is to send to stdout */
++  res->flag_output_is_printer = false;
+   res->flag_output_name = NULL;
+   res->output_is_file = true;
+   res->output_name = NULL;
diff --git a/app-text/a2ps/files/a2ps-4.13c-emacs.patch b/app-text/a2ps/files/a2ps-4.13c-emacs.patch
new file mode 100644
index 0000000..f1cd5d9
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-emacs.patch
@@ -0,0 +1,10 @@
+--- a2ps-4.13/contrib/emacs/a2ps-print.el.orig	2005-12-05 08:03:48.000000000 +0100
++++ a2ps-4.13/contrib/emacs/a2ps-print.el	2005-12-06 16:38:14.000000000 +0100
+@@ -93,6 +93,7 @@
+ 			  (concat "--center-title=" name)
+ 			  (concat "--footer=" (concat name " Emacs buffer"))
+ 			  (concat "--pretty-print=" filetype)
++			  (concat "-d")
+ ;Uncommenting the following gives a print preview (only):
+ ;			  (concat "--output=/tmp/foo.ps")
+ 			  )
diff --git a/app-text/a2ps/files/a2ps-4.13c-fixps.patch b/app-text/a2ps/files/a2ps-4.13c-fixps.patch
new file mode 100644
index 0000000..13b196f
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-fixps.patch
@@ -0,0 +1,19 @@
+--- contrib/fixps.in.orig	2004-12-20 00:11:40.000000000 +0100
++++ contrib/fixps.in	2004-12-20 00:14:12.000000000 +0100
+@@ -38,7 +38,7 @@
+ run_gs=0
+ # What action to perform: fixps, cat, check, and gs
+ task=fixps
+-tmpdir=/tmp/$program.$$
++tmpdir=`mktemp -d -t fixps.XXXXXX` || { echo "$program: Cannot create temporary dir!" >&2 ; exit 1; }
+ verbose=echo
+ 
+ # The version/usage strings
+@@ -191,7 +191,6 @@
+   trap "/bin/rm -rf $tmpdir" 0 1 2 3 13 15
+ fi
+ 
+-mkdir $tmpdir
+ fixps_sed=$tmpdir/fixps.sed
+ 
+ # If printing from stdin, save into a tmp file
diff --git a/app-text/a2ps/files/a2ps-4.13c-fnmatch-replacement.patch b/app-text/a2ps/files/a2ps-4.13c-fnmatch-replacement.patch
new file mode 100644
index 0000000..c49ab78
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-fnmatch-replacement.patch
@@ -0,0 +1,43 @@
+diff -Naurp a2ps-4.13.orig/lib/fnmatch.c a2ps-4.13/lib/fnmatch.c
+--- a2ps-4.13.orig/lib/fnmatch.c	2002-03-04 12:46:25 -0600
++++ a2ps-4.13/lib/fnmatch.c	2006-05-27 11:41:15 -0500
+@@ -27,18 +27,6 @@
+ #include <fnmatch.h>
+ #include <ctype.h>
+ 
+-
+-/* Comment out all this code if we are using the GNU C Library, and are not
+-   actually compiling the library itself.  This code is part of the GNU C
+-   Library, but also included in many other GNU distributions.  Compiling
+-   and linking in this code is a waste when using the GNU C library
+-   (especially if it is a shared library).  Rather than having every GNU
+-   program understand `configure --with-gnu-libc' and omit the object files,
+-   it is simpler to just do this in the source for each such file.  */
+-
+-#if defined _LIBC || !defined __GNU_LIBRARY__
+-
+-
+ # if defined STDC_HEADERS || !defined isascii
+ #  define ISASCII(c) 1
+ # else
+@@ -52,10 +40,13 @@
+ extern int errno;
+ # endif
+ 
++/* fnmatch replacement taken from the GNU C Library for systems that 
++   provide a broken implementation. */
++
+ /* Match STRING against the filename pattern PATTERN, returning zero if
+    it matches, nonzero if not.  */
+ int
+-fnmatch (const char *pattern, const char *string, int flags)
++rpl_fnmatch (const char *pattern, const char *string, int flags)
+ {
+   register const char *p = pattern, *n = string;
+   register char c;
+@@ -233,5 +224,3 @@ fnmatch (const char *pattern, const char
+ 
+ # undef FOLD
+ }
+-
+-#endif	/* _LIBC or not __GNU_LIBRARY__.  */
diff --git a/app-text/a2ps/files/a2ps-4.13c-locale-gentoo.diff b/app-text/a2ps/files/a2ps-4.13c-locale-gentoo.diff
new file mode 100644
index 0000000..0b59956
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-locale-gentoo.diff
@@ -0,0 +1,25 @@
+diff -urN a2ps-4.13.ORIG/config.h.in a2ps-4.13/config.h.in
+--- a2ps-4.13.ORIG/config.h.in	2003-09-27 19:33:38.000000000 +0900
++++ a2ps-4.13/config.h.in	2003-09-27 21:25:46.000000000 +0900
+@@ -181,6 +181,9 @@
+ /* Define to 1 if you have the `rename' function. */
+ #undef HAVE_RENAME
+ 
++/* Define to 1 if you have the <locale.h> header file. */
++#undef HAVE_LOCALE_H
++
+ /* Define to 1 if you have the `setlocale' function. */
+ #undef HAVE_SETLOCALE
+ 
+diff -urN a2ps-4.13.ORIG/configure.in a2ps-4.13/configure.in
+--- a2ps-4.13.ORIG/configure.in	2003-09-27 19:33:38.000000000 +0900
++++ a2ps-4.13/configure.in	2003-09-27 21:26:05.000000000 +0900
+@@ -71,7 +71,7 @@
+ AC_HEADER_DIRENT
+ AC_CHECK_HEADERS(sys/time.h sys/stat.h sys/types.h sys/ioctl.h  \
+  math.h string.h strings.h stdlib.h unistd.h stdarg.h pwd.h malloc.h \
+- memory.h errno.h fcntl.h stdbool.h fnmatch.h)
++ memory.h errno.h fcntl.h stdbool.h fnmatch.h locale.h)
+ 
+ ## --------------------- ##
+ ## Checks for typedefs.  ##
diff --git a/app-text/a2ps/files/a2ps-4.13c-psmandup.diff b/app-text/a2ps/files/a2ps-4.13c-psmandup.diff
new file mode 100644
index 0000000..67f2fab
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-psmandup.diff
@@ -0,0 +1,19 @@
+--- contrib/psmandup.in.orig	2004-12-20 00:16:07.000000000 +0100
++++ contrib/psmandup.in	2004-12-20 00:16:39.000000000 +0100
+@@ -36,7 +36,7 @@
+ message=
+ psselect=${PSSELECT:-psselect}
+ psset=${PSSET:-psset}
+-tmpdir=/tmp/$program.$$
++tmpdir=`mktemp -d -t fixps.XXXXXX` || { echo "$program: Cannot create temporary dir!" >&2 ; exit 1; }
+ 
+ # These two must be kept in synch.  They are opposed.
+ verbose=echo
+@@ -185,7 +185,6 @@
+   trap "/bin/rm -rf $tmpdir" 0 1 2 3 13 15
+ fi
+ 
+-mkdir $tmpdir
+ 
+ # If printing from stdin, save into a tmp file
+ if test $file = '-'; then
diff --git a/app-text/a2ps/files/a2ps-4.13c-psset.patch b/app-text/a2ps/files/a2ps-4.13c-psset.patch
new file mode 100644
index 0000000..f8fd449
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-psset.patch
@@ -0,0 +1,11 @@
+--- a2ps-4.13/contrib/psset.in.orig	2006-03-16 12:30:48.000000000 +0100
++++ a2ps-4.13/contrib/psset.in		2006-03-16 12:28:14.000000000 +0100
+@@ -241,7 +241,7 @@
+ # spaces with a `\' too...
+ pspagedevicelen=`echo "$pspagedevice" | wc -l`
+ pspagedevice=`echo "$pspagedevice" | \
+- sed -e "$pspagedevicelen!s/\$/\\\\\\/;s/^/\\\\\\/"`
++ sed -e "$pspagedevicelen!s/\$/\\\\\\/;s/^ /\\\\\\/"`
+
+ case $at in
+   0) # Insert last in the Setup, so that we win over other requests.
diff --git a/app-text/a2ps/files/a2ps-4.13c-stdarg.patch b/app-text/a2ps/files/a2ps-4.13c-stdarg.patch
new file mode 100644
index 0000000..4ff1212
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.13c-stdarg.patch
@@ -0,0 +1,74 @@
+--- a2ps-4.13-orig/configure.in	2005-08-14 14:13:42.000000000 +0200
++++ a2ps-4.13/configure.in	2005-08-14 14:18:20.000000000 +0200
+@@ -157,6 +157,22 @@
+ 	  [Define to rpl_fnmatch if the replacement function should be used.])
+ fi
+ 
++# Check for C99 va_copy
++AC_CACHE_CHECK([
++  AC_TRY_LINK([#include <stdarg.h>],
++   [
++	va_list va1, va2;
++
++	va_copy(va2, va1);
++	va_end(va2);
++   ],
++   [ac_cv_va_copy="yes"],[ac_cv_va_copy="no"]
++  )
++])
++if test "x$ac_cv_va_copy"="xyes"; then
++	AC_DEFINE(HAVE_VA_COPY,1,[Define to 1 if C99 va_copy function should be used])
++fi
++
+ # Needed checks for tinyterm.[ch]
+ ad_TINYTERM_CHECKS
+ 
+--- a2ps-4.13-orig/lib/printlen.c	2002-03-04 19:46:25.000000000 +0100
++++ a2ps-4.13/lib/printlen.c	2005-08-14 14:29:08.000000000 +0200
+@@ -27,15 +27,24 @@
+ 
+ unsigned long strtoul ();
+ 
++#if !defined(HAVE_VA_COPY)
+ static int
+ int_printflen (const char *format, va_list *args)
++#else
++static int
++int_printflen (const char *format, va_list args)
++#endif
+ {
+   const char *cp;
+   int total_width = 0;
+   int width = 0;
+   va_list ap;
+ 
++#ifndef HAVE_VA_COPY
+   memcpy (&ap, args, sizeof (va_list));
++#else
++  va_copy(ap, args);
++#endif
+ 
+   for (cp = format ; *cp ; cp++)
+     {
+@@ -93,13 +102,21 @@
+ 	    }
+ 	}
+     }
++
++#ifdef HAVE_VA_COPY
++  va_end(ap);
++#endif
+   return total_width;
+ }
+ 
+ int
+ vprintflen (const char *format,  va_list args)
+ {
++#if !defined(HAVE_VA_COPY)
+   return int_printflen (format, &args);
++#else
++  return int_printflen (format, args);
++#endif
+ }
+ 
+ int
diff --git a/app-text/a2ps/files/a2ps-4.14-check-mempcpy.patch b/app-text/a2ps/files/a2ps-4.14-check-mempcpy.patch
new file mode 100644
index 0000000..7b820ce
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-check-mempcpy.patch
@@ -0,0 +1,12 @@
+--- a2ps-4.14-orig/configure.in	2008-04-16 08:36:03.000000000 +0200
++++ a2ps-4.14/configure.in	2008-04-16 08:36:29.000000000 +0200
+@@ -137,7 +137,8 @@
+ ad_REPLACE_FUNC_STRCASECMP
+ ad_REPLACE_FUNC_STRNCASECMP
+ ad_REPLACE_FUNC_RENAME
+-AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero tempnam strsignal psignal setlocale)
++AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero \
++  tempnam strsignal psignal setlocale mempcpy)
+ ad_FUNC_SYSTEMPAPERNAME
+ ad_FUNC_ATEXIT
+ ad_FUNC_STRFTIME
diff --git a/app-text/a2ps/files/a2ps-4.14-cleanup.patch b/app-text/a2ps/files/a2ps-4.14-cleanup.patch
new file mode 100644
index 0000000..25187f3
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-cleanup.patch
@@ -0,0 +1,106 @@
+fix missing prototype and printf warnings
+
+--- a/lib/argmatch.c
++++ b/lib/argmatch.c
+@@ -21,6 +21,7 @@
+ #include "argmatch.h"
+ 
+ #include <stdio.h>
++#include <stdlib.h>
+ #ifdef STDC_HEADERS
+ # include <string.h>
+ #endif
+--- a/lib/encoding.c
++++ b/lib/encoding.c
+@@ -790,7 +790,7 @@ dump_encoding_setup (FILE * stream,
+   /* Create the dictionary and fill it */
+   fprintf (stream, "%% Dictionary for %s support\n",
+ 	  encoding->name);
+-  fprintf (stream, "/%sdict %d dict begin\n", encoding->key, nb);
++  fprintf (stream, "/%sdict %zu dict begin\n", encoding->key, nb);
+   for (i = 0 ; i < nb ; i++)
+     fprintf (stream, "  /f%s %sEncoding /%s reencode_font\n",
+ 	     font_names [i],
+--- a/lib/output.c
++++ b/lib/output.c
+@@ -84,7 +84,7 @@ new_derivation (enum derivation_type type)
+ static void
+ derivation_self_print (struct derivation * derivation, FILE * stream)
+ {
+-  fprintf (stream, "At %x: ", (int) derivation);
++  fprintf (stream, "At %p: ", derivation);
+   switch (derivation->type)
+     {
+     case nothing:
+@@ -525,7 +525,7 @@ output_file (struct output * out, a2ps_job * job,
+ 		     expand_user_string (job, FIRST_FILE (job),
+ 					 (const uchar *) "Expand: requirement",
+ 					 (const uchar *) token));
+-	output (dest, expansion);
++	output (dest, "%s", expansion);
+ 	continue;
+       }
+ 
+--- a/lib/parseppd.y
++++ b/lib/parseppd.y
+@@ -154,7 +154,7 @@ font_clause :
+ void
+ yyerror (const char *msg)
+ {
+-  error_at_line (1, 0, ppdfilename, ppdlineno, msg);
++  error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg);
+ }
+ 
+ /*
+--- a/lib/psgen.c
++++ b/lib/psgen.c
+@@ -232,7 +232,7 @@ output_marker (a2ps_job * job, const char * kind, uchar * marker)
+     default:
+       *buf = '\0';
+       ps_escape_char (job, cp[i], buf);
+-      output (jdiv, (char *) buf);
++      output (jdiv, "%s", buf);
+       break;
+     }
+   }
+--- a/lib/quotearg.c
++++ b/lib/quotearg.c
+@@ -60,6 +60,7 @@
+ 
+ #if HAVE_MBRTOWC && HAVE_WCHAR_H
+ # include <wchar.h>
++# include <wctype.h>
+ #else
+ # define iswprint(wc) 1
+ # define mbrtowc(pwc, s, n, ps) 1
+--- a/lib/title.c
++++ b/lib/title.c
+@@ -28,6 +28,7 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <string.h>
+ 
+ #if HAVE_VPRINTF || HAVE_DOPRNT || _LIBC
+ # if __STDC__
+--- a/src/long-options.c
++++ b/src/long-options.c
+@@ -22,6 +22,7 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <getopt.h>
+ #include "closeout.h"
+ #include "long-options.h"
+--- a/src/parsessh.y
++++ b/src/parsessh.y
+@@ -740,7 +740,7 @@ exception_def_opt:
+ void
+ yyerror (const char *msg)
+ {
+-  error_at_line (1, 0, sshfilename, sshlineno, msg);
++  error_at_line (1, 0, sshfilename, sshlineno, "%s", msg);
+ }
+ 
+ /*
diff --git a/app-text/a2ps/files/a2ps-4.14-fix-stpcpy-proto.patch b/app-text/a2ps/files/a2ps-4.14-fix-stpcpy-proto.patch
new file mode 100644
index 0000000..7c3c690
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-fix-stpcpy-proto.patch
@@ -0,0 +1,17 @@
+=== modified file 'lib/xstrrpl.c'
+--- lib/xstrrpl.c	2008-04-14 18:04:50 +0000
++++ lib/xstrrpl.c	2008-04-14 18:20:20 +0000
+@@ -20,12 +20,10 @@
+ 
+ #include "system.h"
+ #include <assert.h>
+ #include "xstrrpl.h"
+ 
+-extern char * stpcpy();
+-
+ /* Perform subsitutions in string.  Result is malloc'd
+    E.g., result = xstrrrpl ("1234", subst) gives result = "112333"
+    where subst = { {"1", "11"}, {"3", "333"}, { "4", ""}}
+    */
+ char *
+
diff --git a/app-text/a2ps/files/a2ps-4.14-ja-cleanup.patch b/app-text/a2ps/files/a2ps-4.14-ja-cleanup.patch
new file mode 100644
index 0000000..16271b3
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-ja-cleanup.patch
@@ -0,0 +1,122 @@
+diff --git lib/argmatch.c lib/argmatch.c
+index f983e9d..eadc7ea 100644
+--- lib/argmatch.c
++++ lib/argmatch.c
+@@ -21,6 +21,7 @@
+ #include "argmatch.h"
+ 
+ #include <stdio.h>
++#include <stdlib.h>
+ #ifdef STDC_HEADERS
+ # include <string.h>
+ #endif
+diff --git lib/encoding.c lib/encoding.c
+index 9bd9f2a..f554a6d 100644
+--- lib/encoding.c
++++ lib/encoding.c
+@@ -989,7 +989,7 @@ dump_encoding_setup (FILE * stream,
+   /* Create the dictionary and fill it */
+   fprintf (stream, "%% Dictionary for %s support\n",
+ 	  encoding->name);
+-  fprintf (stream, "/%sdict %d dict begin\n", encoding->key,
++  fprintf (stream, "/%sdict %zu dict begin\n", encoding->key,
+ 	   (encoding->composite_flag == true)? nb+nb+ns:nb+ns);
+   for (i = 0 ; i < nb ; i++)
+     fprintf (stream, "  /f%s %sEncoding /%s reencode_font\n",
+diff --git lib/output.c lib/output.c
+index b5fc37d..5f67676 100644
+--- lib/output.c
++++ lib/output.c
+@@ -84,7 +84,7 @@ new_derivation (enum derivation_type type)
+ static void
+ derivation_self_print (struct derivation * derivation, FILE * stream)
+ {
+-  fprintf (stream, "At %x: ", (int) derivation);
++  fprintf (stream, "At %p: ", derivation);
+   switch (derivation->type)
+     {
+     case nothing:
+@@ -525,7 +525,7 @@ output_file (struct output * out, a2ps_job * job,
+ 		     expand_user_string (job, FIRST_FILE (job),
+ 					 (const uchar *) "Expand: requirement",
+ 					 (const uchar *) token));
+-	output (dest, expansion);
++	output (dest, "%s", expansion);
+ 	continue;
+       }
+ 
+diff --git lib/parseppd.y lib/parseppd.y
+index a7558ba..c89d188 100644
+--- lib/parseppd.y
++++ lib/parseppd.y
+@@ -154,7 +154,7 @@ font_clause :
+ void
+ yyerror (const char *msg)
+ {
+-  error_at_line (1, 0, ppdfilename, ppdlineno, msg);
++  error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg);
+ }
+ 
+ /*
+diff --git lib/psgen.c lib/psgen.c
+index 9eeef74..9d7a27d 100644
+--- lib/psgen.c
++++ lib/psgen.c
+@@ -232,7 +232,7 @@ output_marker (a2ps_job * job, const char * kind, uchar * marker)
+     default:
+       *buf = '\0';
+       ps_escape_char (job, cp[i], buf);
+-      output (jdiv, (char *) buf);
++      output (jdiv, "%s", buf);
+       break;
+     }
+   }
+diff --git lib/quotearg.c lib/quotearg.c
+index 16d0b91..89db991 100644
+--- lib/quotearg.c
++++ lib/quotearg.c
+@@ -60,6 +60,7 @@
+ 
+ #if HAVE_MBRTOWC && HAVE_WCHAR_H
+ # include <wchar.h>
++# include <wctype.h>
+ #else
+ # define iswprint(wc) 1
+ # define mbrtowc(pwc, s, n, ps) 1
+diff --git lib/title.c lib/title.c
+index cf4a34b..7a3e87b 100644
+--- lib/title.c
++++ lib/title.c
+@@ -28,6 +28,7 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <string.h>
+ 
+ #if HAVE_VPRINTF || HAVE_DOPRNT || _LIBC
+ # if __STDC__
+diff --git src/long-options.c src/long-options.c
+index fb40cd9..7bd77b0 100644
+--- src/long-options.c
++++ src/long-options.c
+@@ -22,6 +22,7 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <getopt.h>
+ #include "closeout.h"
+ #include "long-options.h"
+diff --git src/parsessh.y src/parsessh.y
+index 21e9559..569fdb6 100644
+--- src/parsessh.y
++++ src/parsessh.y
+@@ -740,7 +740,7 @@ exception_def_opt:
+ void
+ yyerror (const char *msg)
+ {
+-  error_at_line (1, 0, sshfilename, sshlineno, msg);
++  error_at_line (1, 0, sshfilename, sshlineno, "%s", msg);
+ }
+ 
+ /*
diff --git a/app-text/a2ps/files/a2ps-4.14-psset.patch b/app-text/a2ps/files/a2ps-4.14-psset.patch
new file mode 100644
index 0000000..291c3aa
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-psset.patch
@@ -0,0 +1,21 @@
+diff -Naur a2ps-4.14.orig/contrib/psset.in a2ps-4.14/contrib/psset.in
+--- a2ps-4.14.orig/contrib/psset.in	2007-12-29 12:29:01.000000000 +0900
++++ a2ps-4.14/contrib/psset.in	2009-04-12 12:17:43.000000000 +0900
+@@ -219,7 +219,7 @@
+ done
+ 
+ pspagedevice="% Pagedevice definitions:
+-countdictstack
++ countdictstack
+ % Push our own mark, since there can be several PS marks pushed depending
+ % where the failure really occured.
+ /psset_mark
+@@ -227,7 +227,7 @@
+ } stopped
+ % My cleartomark
+ { /psset_mark eq { exit } if } loop
+-countdictstack exch sub dup 0 gt
++ countdictstack exch sub dup 0 gt
+ {
+   { end } repeat
+ }{
diff --git a/app-text/a2ps/files/a2ps-4.14-ptrdiff_t.patch b/app-text/a2ps/files/a2ps-4.14-ptrdiff_t.patch
new file mode 100644
index 0000000..00d955a
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.14-ptrdiff_t.patch
@@ -0,0 +1,14 @@
+diff -uNr a2ps-4.14/lib/obstack.h a2ps-4.14.test/lib/obstack.h
+--- a2ps-4.14/lib/obstack.h	2007-12-29 09:37:59.000000000 +0800
++++ a2ps-4.14.test/lib/obstack.h	2009-06-10 18:49:45.000000000 +0900
+@@ -138,9 +138,9 @@
+ #define __need_ptrdiff_t
+ #endif
+ #endif
++#endif
+ 
+ #include <stddef.h>
+-#endif
+ 
+ #if defined (__STDC__) && __STDC__
+ #define PTR_INT_TYPE ptrdiff_t
diff --git a/app-text/a2ps/files/a2ps-ds2.patch b/app-text/a2ps/files/a2ps-ds2.patch
new file mode 100644
index 0000000..9d9e011
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-ds2.patch
@@ -0,0 +1,53 @@
+diff -dPNur a2ps-4.13/encoding/koi8.edf a2ps-4.13-new/encoding/koi8.edf
+--- a2ps-4.13/encoding/koi8.edf	Fri Sep  4 15:05:13 1998
++++ a2ps-4.13-new/encoding/koi8.edf	Wed Dec 27 05:05:37 2000
+@@ -32,22 +32,22 @@
+ EndDocumentation
+ 
+ # Regular fonts don't support Cyrillic glyphs
+-Default: 	CourierISOC
++Default: 	Courier
+ 
+-Substitute: 	Courier			CourierISOC
+-Substitute: 	Courier-Bold		CourierISOC-Bold
+-Substitute: 	Courier-BoldOblique	CourierISOC-BoldOblique
+-Substitute: 	Courier-Oblique		CourierISOC-Oblique
++Substitute: 	Courier			ERKurier
++Substitute: 	Courier-Bold		ERKurierBold
++Substitute: 	Courier-BoldOblique	ERKurierBoldItalic
++Substitute: 	Courier-Oblique		ERKurierItalic
+ 
+-Substitute: 	Times-Roman		College
+-Substitute: 	Times-Bold		College-Bold
+-Substitute: 	Times-Italic		College-Italic
+-Substitute: 	Times-BoldItalic	College-Italic
++Substitute: 	Times-Roman		ERBukinist
++Substitute: 	Times-Bold		ERBukinistBold
++Substitute: 	Times-Italic		ERBukinistItalic
++Substitute: 	Times-BoldItalic	ERBukinistBoldItalic
+ 
+-Substitute: 	Helvetica		Textbook
+-Substitute: 	Helvetica-Bold		Textbook-Bold
+-Substitute: 	Helvetica-Oblique	Textbook-Italic
+-Substitute: 	Helvetica-BoldOblique	Textbook-Italic
++Substitute: 	Helvetica		ERUnivers
++Substitute: 	Helvetica-Bold		ERUniversBold
++Substitute: 	Helvetica-Oblique	ERUniversItalic
++Substitute: 	Helvetica-BoldOblique	ERUniversBoldItalic
+ 
+ Vector:
+ .notdef .notdef .notdef .notdef .notdef .notdef .notdef .notdef
+diff -dPNur a2ps-4.13/etc/a2ps_cfg.in a2ps-4.13-new/etc/a2ps_cfg.in
+--- a2ps-4.13/etc/a2ps_cfg.in	Thu Feb 24 22:37:44 2000
++++ a2ps-4.13-new/etc/a2ps_cfg.in	Wed Jul 18 06:43:05 2001
+@@ -72,8 +72,8 @@
+ 
+ # It may be useful to extend it so that a2ps can see some
+ # TeX or X11 resources: it likes AFM files and PF[AB] files.
+-#AppendLibraryPath: foo
+-
++AppendLibraryPath: /usr/share/fonts/DarkLin/Type1/ER-KOI8
++#AppendLibraryPath: /usr/share/fonts/default/Type1
+ 
+ #################################################################
+ # 3)	Default settings					#
diff --git a/app-text/a2ps/files/cyr2ps b/app-text/a2ps/files/cyr2ps
new file mode 100755
index 0000000..a602228
--- /dev/null
+++ b/app-text/a2ps/files/cyr2ps
@@ -0,0 +1,49 @@
+#! /bin/bash
+
+enc=UTF-8
+case $1 in
+koi|KOI|Koi|koi8|Koi8|KOI8|koi-8|Koi-8|KOI-8|koi-8r|Koi-8r|KOI-8R|koi8r|Koi8r|KOI8R|k|K|Koi8-r|koi8-r|KOI8-R)
+    enc=""
+    shift
+    ;;
+alt|Alt|ALT|dos|Dos|DOS|cp866|Cp866|CP866|A|a)
+    enc=CP866
+    shift
+    ;;
+win|Win|WIN|cp1251|Cp1251|CP1251|W|w)
+    enc=CP1251
+    shift
+    ;;
+UTF-8|utf-8|Utf-8|UTF8|utf8|Utf-8|Unicode|UNICODE|unicode|U|u)
+    enc=UTF-8
+    shift
+    ;;
+esac
+
+
+in=$BASH_ARGV
+if [ "$in" == "-" -o -f "$in" ]; then
+    arglen=$(($#-1))
+    args=${@:1:$arglen}
+else
+    args=$@
+    in="-"
+fi
+
+out=""
+
+if [[ " ${args[*]} " != *" -o "* ]]; then
+    if [ $in == "-" ]; then
+	out="-o -"
+    else
+	out="-o `basename $in`.ps"
+    fi
+fi
+
+
+echo "Encoding: $enc, In: $in, Out: $out, extra args: ${args[*]}"
+if [ -n "$enc" ]; then
+    cat $in | iconv -f UTF-8 -t KOI8-R -c | a2ps $out $args -
+else
+    a2ps $out $args $in
+fi
-- 
cgit v1.2.3