1Update autotools infrastructure (including gettext) to modern versions.
2
3Upstream-Status: Inappropriate [upstream hasn't been active since 1998]
4Signed-off-by: Phil Blundell <pb@pbcl.net>
5
6diff -uprN clean/lrzsz-0.12.20/configure.in lrzsz-0.12.20/configure.in
7--- clean/lrzsz-0.12.20/configure.in	1998-12-30 07:50:07.000000000 +0000
8+++ lrzsz-0.12.20/configure.in	2019-11-25 16:22:37.000000000 +0000
9@@ -92,7 +92,6 @@ AC_PROG_RANLIB
10 AC_ISC_POSIX
11 AC_AIX
12 AC_MINIX
13-AM_C_PROTOTYPES
14 AC_C_CONST
15 AC_C_INLINE
16
17@@ -253,18 +252,13 @@ ihave$lookup_facility
18 fi
19
20
21-AC_SUBST(CFLAGS)
22-AC_SUBST(LDFLAGS)
23 AC_SUBST(LIBS)
24
25-AM_GNU_GETTEXT
26+AM_GNU_GETTEXT([external])
27
28-AC_DEFINE_UNQUOTED(LOCALEDIR,"$prefix/$DATADIRNAME")
29-AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
30-
31-AC_OUTPUT([Makefile intl/Makefile lib/Makefile testsuite/Makefile \
32+AC_OUTPUT([Makefile lib/Makefile testsuite/Makefile \
33 man/Makefile po/Makefile.in src/Makefile debian/rules Specfile systype \
34 src/lrzszbug],
35-[sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile;
36+[
37 chmod +x debian/rules;
38 test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h])
39diff -uprN clean/lrzsz-0.12.20/intl/bindtextdom.c lrzsz-0.12.20/intl/bindtextdom.c
40--- clean/lrzsz-0.12.20/intl/bindtextdom.c	1998-04-26 14:22:36.000000000 +0100
41+++ lrzsz-0.12.20/intl/bindtextdom.c	1970-01-01 01:00:00.000000000 +0100
42@@ -1,199 +0,0 @@
43-/* Implementation of the bindtextdomain(3) function
44-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
45-
46-   This program is free software; you can redistribute it and/or modify
47-   it under the terms of the GNU General Public License as published by
48-   the Free Software Foundation; either version 2, or (at your option)
49-   any later version.
50-
51-   This program is distributed in the hope that it will be useful,
52-   but WITHOUT ANY WARRANTY; without even the implied warranty of
53-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
54-   GNU General Public License for more details.
55-
56-   You should have received a copy of the GNU General Public License
57-   along with this program; if not, write to the Free Software Foundation,
58-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
59-
60-#ifdef HAVE_CONFIG_H
61-# include <config.h>
62-#endif
63-
64-#if defined STDC_HEADERS || defined _LIBC
65-# include <stdlib.h>
66-#else
67-# ifdef HAVE_MALLOC_H
68-#  include <malloc.h>
69-# else
70-void free ();
71-# endif
72-#endif
73-
74-#if defined HAVE_STRING_H || defined _LIBC
75-# include <string.h>
76-#else
77-# include <strings.h>
78-# ifndef memcpy
79-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
80-# endif
81-#endif
82-
83-#ifdef _LIBC
84-# include <libintl.h>
85-#else
86-# include "libgettext.h"
87-#endif
88-#include "gettext.h"
89-#include "gettextP.h"
90-
91-/* @@ end of prolog @@ */
92-
93-/* Contains the default location of the message catalogs.  */
94-extern const char _nl_default_dirname[];
95-
96-/* List with bindings of specific domains.  */
97-extern struct binding *_nl_domain_bindings;
98-
99-
100-/* Names for the libintl functions are a problem.  They must not clash
101-   with existing names and they should follow ANSI C.  But this source
102-   code is also used in GNU C Library where the names have a __
103-   prefix.  So we have to make a difference here.  */
104-#ifdef _LIBC
105-# define BINDTEXTDOMAIN __bindtextdomain
106-# define strdup(str) __strdup (str)
107-#else
108-# define BINDTEXTDOMAIN bindtextdomain__
109-#endif
110-
111-/* Specify that the DOMAINNAME message catalog will be found
112-   in DIRNAME rather than in the system locale data base.  */
113-char *
114-BINDTEXTDOMAIN (domainname, dirname)
115-     const char *domainname;
116-     const char *dirname;
117-{
118-  struct binding *binding;
119-
120-  /* Some sanity checks.  */
121-  if (domainname == NULL || domainname[0] == '\0')
122-    return NULL;
123-
124-  for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
125-    {
126-      int compare = strcmp (domainname, binding->domainname);
127-      if (compare == 0)
128-	/* We found it!  */
129-	break;
130-      if (compare < 0)
131-	{
132-	  /* It is not in the list.  */
133-	  binding = NULL;
134-	  break;
135-	}
136-    }
137-
138-  if (dirname == NULL)
139-    /* The current binding has be to returned.  */
140-    return binding == NULL ? (char *) _nl_default_dirname : binding->dirname;
141-
142-  if (binding != NULL)
143-    {
144-      /* The domain is already bound.  If the new value and the old
145-	 one are equal we simply do nothing.  Otherwise replace the
146-	 old binding.  */
147-      if (strcmp (dirname, binding->dirname) != 0)
148-	{
149-	  char *new_dirname;
150-
151-	  if (strcmp (dirname, _nl_default_dirname) == 0)
152-	    new_dirname = (char *) _nl_default_dirname;
153-	  else
154-	    {
155-#if defined _LIBC || defined HAVE_STRDUP
156-	      new_dirname = strdup (dirname);
157-	      if (new_dirname == NULL)
158-		return NULL;
159-#else
160-	      size_t len = strlen (dirname) + 1;
161-	      new_dirname = (char *) malloc (len);
162-	      if (new_dirname == NULL)
163-		return NULL;
164-
165-	      memcpy (new_dirname, dirname, len);
166-#endif
167-	    }
168-
169-	  if (binding->dirname != _nl_default_dirname)
170-	    free (binding->dirname);
171-
172-	  binding->dirname = new_dirname;
173-	}
174-    }
175-  else
176-    {
177-      /* We have to create a new binding.  */
178-      size_t len;
179-      struct binding *new_binding =
180-	(struct binding *) malloc (sizeof (*new_binding));
181-
182-      if (new_binding == NULL)
183-	return NULL;
184-
185-#if defined _LIBC || defined HAVE_STRDUP
186-      new_binding->domainname = strdup (domainname);
187-      if (new_binding->domainname == NULL)
188-	return NULL;
189-#else
190-      len = strlen (domainname) + 1;
191-      new_binding->domainname = (char *) malloc (len);
192-      if (new_binding->domainname == NULL)
193-	return NULL;
194-      memcpy (new_binding->domainname, domainname, len);
195-#endif
196-
197-      if (strcmp (dirname, _nl_default_dirname) == 0)
198-	new_binding->dirname = (char *) _nl_default_dirname;
199-      else
200-	{
201-#if defined _LIBC || defined HAVE_STRDUP
202-	  new_binding->dirname = strdup (dirname);
203-	  if (new_binding->dirname == NULL)
204-	    return NULL;
205-#else
206-	  len = strlen (dirname) + 1;
207-	  new_binding->dirname = (char *) malloc (len);
208-	  if (new_binding->dirname == NULL)
209-	    return NULL;
210-	  memcpy (new_binding->dirname, dirname, len);
211-#endif
212-	}
213-
214-      /* Now enqueue it.  */
215-      if (_nl_domain_bindings == NULL
216-	  || strcmp (domainname, _nl_domain_bindings->domainname) < 0)
217-	{
218-	  new_binding->next = _nl_domain_bindings;
219-	  _nl_domain_bindings = new_binding;
220-	}
221-      else
222-	{
223-	  binding = _nl_domain_bindings;
224-	  while (binding->next != NULL
225-		 && strcmp (domainname, binding->next->domainname) > 0)
226-	    binding = binding->next;
227-
228-	  new_binding->next = binding->next;
229-	  binding->next = new_binding;
230-	}
231-
232-      binding = new_binding;
233-    }
234-
235-  return binding->dirname;
236-}
237-
238-#ifdef _LIBC
239-/* Alias for function name in GNU C Library.  */
240-weak_alias (__bindtextdomain, bindtextdomain);
241-#endif
242diff -uprN clean/lrzsz-0.12.20/intl/cat-compat.c lrzsz-0.12.20/intl/cat-compat.c
243--- clean/lrzsz-0.12.20/intl/cat-compat.c	1998-04-26 14:22:37.000000000 +0100
244+++ lrzsz-0.12.20/intl/cat-compat.c	1970-01-01 01:00:00.000000000 +0100
245@@ -1,262 +0,0 @@
246-/* Compatibility code for gettext-using-catgets interface.
247-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
248-
249-   This program is free software; you can redistribute it and/or modify
250-   it under the terms of the GNU General Public License as published by
251-   the Free Software Foundation; either version 2, or (at your option)
252-   any later version.
253-
254-   This program is distributed in the hope that it will be useful,
255-   but WITHOUT ANY WARRANTY; without even the implied warranty of
256-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
257-   GNU General Public License for more details.
258-
259-   You should have received a copy of the GNU General Public License
260-   along with this program; if not, write to the Free Software Foundation,
261-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
262-
263-#ifdef HAVE_CONFIG_H
264-# include <config.h>
265-#endif
266-
267-#include <stdio.h>
268-
269-#ifdef STDC_HEADERS
270-# include <stdlib.h>
271-# include <string.h>
272-#else
273-char *getenv ();
274-# ifdef HAVE_MALLOC_H
275-#  include <malloc.h>
276-# endif
277-#endif
278-
279-#ifdef HAVE_NL_TYPES_H
280-# include <nl_types.h>
281-#endif
282-
283-#include "libgettext.h"
284-
285-/* @@ end of prolog @@ */
286-
287-/* XPG3 defines the result of `setlocale (category, NULL)' as:
288-   ``Directs `setlocale()' to query `category' and return the current
289-     setting of `local'.''
290-   However it does not specify the exact format.  And even worse: POSIX
291-   defines this not at all.  So we can use this feature only on selected
292-   system (e.g. those using GNU C Library).  */
293-#ifdef _LIBC
294-# define HAVE_LOCALE_NULL
295-#endif
296-
297-/* The catalog descriptor.  */
298-static nl_catd catalog = (nl_catd) -1;
299-
300-/* Name of the default catalog.  */
301-static const char default_catalog_name[] = "messages";
302-
303-/* Name of currently used catalog.  */
304-static const char *catalog_name = default_catalog_name;
305-
306-/* Get ID for given string.  If not found return -1.  */
307-static int msg_to_cat_id PARAMS ((const char *msg));
308-
309-/* Substitution for systems lacking this function in their C library.  */
310-#if !_LIBC && !HAVE_STPCPY
311-static char *stpcpy PARAMS ((char *dest, const char *src));
312-#endif
313-
314-
315-/* Set currently used domain/catalog.  */
316-char *
317-textdomain (domainname)
318-     const char *domainname;
319-{
320-  nl_catd new_catalog;
321-  char *new_name;
322-  size_t new_name_len;
323-  char *lang;
324-
325-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \
326-    && defined HAVE_LOCALE_NULL
327-  lang = setlocale (LC_MESSAGES, NULL);
328-#else
329-  lang = getenv ("LC_ALL");
330-  if (lang == NULL || lang[0] == '\0')
331-    {
332-      lang = getenv ("LC_MESSAGES");
333-      if (lang == NULL || lang[0] == '\0')
334-	lang = getenv ("LANG");
335-    }
336-#endif
337-  if (lang == NULL || lang[0] == '\0')
338-    lang = "C";
339-
340-  /* See whether name of currently used domain is asked.  */
341-  if (domainname == NULL)
342-    return (char *) catalog_name;
343-
344-  if (domainname[0] == '\0')
345-    domainname = default_catalog_name;
346-
347-  /* Compute length of added path element.  */
348-  new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang)
349-		 + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1
350-		 + sizeof (".cat");
351-
352-  new_name = (char *) malloc (new_name_len);
353-  if (new_name == NULL)
354-    return NULL;
355-
356-  strcpy (new_name, PACKAGE);
357-  new_catalog = catopen (new_name, 0);
358-
359-  if (new_catalog == (nl_catd) -1)
360-    {
361-      /* NLSPATH search didn't work, try absolute path */
362-      sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang,
363-	       PACKAGE);
364-      new_catalog = catopen (new_name, 0);
365-
366-      if (new_catalog == (nl_catd) -1)
367-	{
368-	  free (new_name);
369-	  return (char *) catalog_name;
370-	}
371-    }
372-
373-  /* Close old catalog.  */
374-  if (catalog != (nl_catd) -1)
375-    catclose (catalog);
376-  if (catalog_name != default_catalog_name)
377-    free ((char *) catalog_name);
378-
379-  catalog = new_catalog;
380-  catalog_name = new_name;
381-
382-  return (char *) catalog_name;
383-}
384-
385-char *
386-bindtextdomain (domainname, dirname)
387-     const char *domainname;
388-     const char *dirname;
389-{
390-#if HAVE_SETENV || HAVE_PUTENV
391-  char *old_val, *new_val, *cp;
392-  size_t new_val_len;
393-
394-  /* This does not make much sense here but to be compatible do it.  */
395-  if (domainname == NULL)
396-    return NULL;
397-
398-  /* Compute length of added path element.  If we use setenv we don't need
399-     the first byts for NLSPATH=, but why complicate the code for this
400-     peanuts.  */
401-  new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname)
402-		+ sizeof ("/%L/LC_MESSAGES/%N.cat");
403-
404-  old_val = getenv ("NLSPATH");
405-  if (old_val == NULL || old_val[0] == '\0')
406-    {
407-      old_val = NULL;
408-      new_val_len += 1 + sizeof (LOCALEDIR) - 1
409-	             + sizeof ("/%L/LC_MESSAGES/%N.cat");
410-    }
411-  else
412-    new_val_len += strlen (old_val);
413-
414-  new_val = (char *) malloc (new_val_len);
415-  if (new_val == NULL)
416-    return NULL;
417-
418-# if HAVE_SETENV
419-  cp = new_val;
420-# else
421-  cp = stpcpy (new_val, "NLSPATH=");
422-# endif
423-
424-  cp = stpcpy (cp, dirname);
425-  cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:");
426-
427-  if (old_val == NULL)
428-    {
429-# if __STDC__
430-      stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat");
431-# else
432-
433-      cp = stpcpy (cp, LOCALEDIR);
434-      stpcpy (cp, "/%L/LC_MESSAGES/%N.cat");
435-# endif
436-    }
437-  else
438-    stpcpy (cp, old_val);
439-
440-# if HAVE_SETENV
441-  setenv ("NLSPATH", new_val, 1);
442-  free (new_val);
443-# else
444-  putenv (new_val);
445-  /* Do *not* free the environment entry we just entered.  It is used
446-     from now on.   */
447-# endif
448-
449-#endif
450-
451-  return (char *) domainname;
452-}
453-
454-#undef gettext
455-char *
456-gettext (msg)
457-     const char *msg;
458-{
459-  int msgid;
460-
461-  if (msg == NULL || catalog == (nl_catd) -1)
462-    return (char *) msg;
463-
464-  /* Get the message from the catalog.  We always use set number 1.
465-     The message ID is computed by the function `msg_to_cat_id'
466-     which works on the table generated by `po-to-tbl'.  */
467-  msgid = msg_to_cat_id (msg);
468-  if (msgid == -1)
469-    return (char *) msg;
470-
471-  return catgets (catalog, 1, msgid, (char *) msg);
472-}
473-
474-/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries
475-   for the one equal to msg.  If it is found return the ID.  In case when
476-   the string is not found return -1.  */
477-static int
478-msg_to_cat_id (msg)
479-     const char *msg;
480-{
481-  int cnt;
482-
483-  for (cnt = 0; cnt < _msg_tbl_length; ++cnt)
484-    if (strcmp (msg, _msg_tbl[cnt]._msg) == 0)
485-      return _msg_tbl[cnt]._msg_number;
486-
487-  return -1;
488-}
489-
490-
491-/* @@ begin of epilog @@ */
492-
493-/* We don't want libintl.a to depend on any other library.  So we
494-   avoid the non-standard function stpcpy.  In GNU C Library this
495-   function is available, though.  Also allow the symbol HAVE_STPCPY
496-   to be defined.  */
497-#if !_LIBC && !HAVE_STPCPY
498-static char *
499-stpcpy (dest, src)
500-     char *dest;
501-     const char *src;
502-{
503-  while ((*dest++ = *src++) != '\0')
504-    /* Do nothing. */ ;
505-  return dest - 1;
506-}
507-#endif
508diff -uprN clean/lrzsz-0.12.20/intl/ChangeLog lrzsz-0.12.20/intl/ChangeLog
509--- clean/lrzsz-0.12.20/intl/ChangeLog	1998-04-26 14:22:35.000000000 +0100
510+++ lrzsz-0.12.20/intl/ChangeLog	1970-01-01 01:00:00.000000000 +0100
511@@ -1,1022 +0,0 @@
512-1997-09-06 02:10  Ulrich Drepper  <drepper@cygnus.com>
513-
514-	* intlh.inst.in: Reformat copyright.
515-
516-1997-08-19 15:22  Ulrich Drepper  <drepper@cygnus.com>
517-
518-	* dcgettext.c (DCGETTEXT): Remove wrong comment.
519-
520-1997-08-16 00:13  Ulrich Drepper  <drepper@cygnus.com>
521-
522-	* Makefile.in (install-data): Don't change directory to install.
523-
524-1997-08-01 14:30  Ulrich Drepper  <drepper@cygnus.com>
525-
526-	* cat-compat.c: Fix copyright.
527-
528-	* localealias.c: Don't define strchr unless !HAVE_STRCHR.
529-
530-	* loadmsgcat.c: Update copyright.  Fix typos.
531-
532-	* l10nflist.c: Don't define strchr unless !HAVE_STRCHR.
533-	(_nl_make_l10nflist): Handle sponsor and revision correctly.
534-
535-	* gettext.c: Update copyright.
536-	* gettext.h: Likewise.
537-	* hash-string.h: Likewise.
538-
539-	* finddomain.c: Remoave dead code.  Define strchr only if
540-	!HAVE_STRCHR.
541-
542-	* explodename.c: Include <sys/types.h>.
543-
544-	* explodename.c: Reformat copyright text.
545-	(_nl_explode_name): Fix typo.
546-
547-	* dcgettext.c: Define and use __set_errno.
548-	(guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is
549-	not defined.
550-
551-	* bindtextdom.c: Pretty printing.
552-
553-1997-05-01 02:25  Ulrich Drepper  <drepper@cygnus.com>
554-
555-	* dcgettext.c (guess_category_value): Don't depend on
556-	HAVE_LC_MESSAGES.  We don't need the macro here.
557-	Patch by Bruno Haible <haible@ilog.fr>.
558-
559-	* cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL
560-	macro.  Instead use HAVE_LOCALE_NULL and define it when using
561-	glibc, as in dcgettext.c.
562-	Patch by Bruno Haible <haible@ilog.fr>.
563-
564-	* Makefile.in (CPPFLAGS): New variable.  Reported by Franc,ois
565-	Pinard.
566-
567-Mon Mar 10 06:51:17 1997  Ulrich Drepper  <drepper@cygnus.com>
568-
569-	* Makefile.in: Implement handling of libtool.
570-
571-	* gettextP.h: Change data structures for use of generic lowlevel
572-	i18n file handling.
573-
574-Wed Dec  4 20:21:18 1996  Ulrich Drepper  <drepper@cygnus.com>
575-
576-	* textdomain.c: Put parentheses around arguments of memcpy macro
577-	definition.
578-	* localealias.c: Likewise.
579-	* l10nflist.c: Likewise.
580-	* finddomain.c: Likewise.
581-	* bindtextdom.c: Likewise.
582-	Reported by Thomas Esken.
583-
584-Mon Nov 25 22:57:51 1996  Ulrich Drepper  <drepper@cygnus.com>
585-
586-	* textdomain.c: Move definition of `memcpy` macro to right
587-	position.
588-
589-Fri Nov 22 04:01:58 1996  Ulrich Drepper  <drepper@cygnus.com>
590-
591-	* finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using
592- 	bcopy if not already defined.  Reported by Thomas Esken.
593-	* bindtextdom.c: Likewise.
594-	* l10nflist.c: Likewise.
595-	* localealias.c: Likewise.
596-	* textdomain.c: Likewise.
597-
598-Tue Oct 29 11:10:27 1996  Ulrich Drepper  <drepper@cygnus.com>
599-
600-	* Makefile.in (libdir): Change to use exec_prefix instead of
601- 	prefix.  Reported by Knut-H�vardAksnes <etokna@eto.ericsson.se>.
602-
603-Sat Aug 31 03:07:09 1996  Ulrich Drepper  <drepper@cygnus.com>
604-
605-	* l10nflist.c (_nl_normalize_codeset): We convert to lower case,
606-	so don't prepend uppercase `ISO' for only numeric arg.
607-
608-Fri Jul 19 00:15:46 1996  Ulrich Drepper  <drepper@cygnus.com>
609-
610-	* l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after
611-	definition of _GNU_SOURCE.  Patch by Roland McGrath.
612-
613-	* Makefile.in (uninstall): Fix another bug with `for' loop and
614-	empty arguments.  Patch by Jim Meyering.  Correct name os
615-	uninstalled files: no intl- prefix anymore.
616-
617-	* Makefile.in (install-data): Again work around shells which
618-	cannot handle mpty for list.  Reported by Jim Meyering.
619-
620-Sat Jul 13 18:11:35 1996  Ulrich Drepper  <drepper@cygnus.com>
621-
622-	* Makefile.in (install): Split goal.  Now depend on install-exec
623-        and install-data.
624-	(install-exec, install-data): New goals.  Created from former
625-	install goal.
626-	Reported by Karl Berry.
627-
628-Sat Jun 22 04:58:14 1996  Ulrich Drepper  <drepper@cygnus.com>
629-
630-	* Makefile.in (MKINSTALLDIRS): New variable.  Path to
631-        mkinstalldirs script.
632-	(install): use MKINSTALLDIRS variable or if the script is not present
633-	try to find it in the $top_scrdir).
634-
635-Wed Jun 19 02:56:56 1996  Ulrich Drepper  <drepper@cygnus.com>
636-
637-	* l10nflist.c: Linux libc *partly* includes the argz_* functions.
638-	Grr.  Work around by renaming the static version and use macros
639-	for renaming.
640-
641-Tue Jun 18 20:11:17 1996  Ulrich Drepper  <drepper@cygnus.com>
642-
643-	* l10nflist.c: Correct presence test macros of __argz_* functions.
644-
645-	* l10nflist.c: Include <argz.h> based on test of it instead when
646-	__argz_* functions are available.
647-	Reported by Andreas Schwab.
648-
649-Thu Jun 13 15:17:44 1996  Ulrich Drepper  <drepper@cygnus.com>
650-
651-	* explodename.c, l10nflist.c: Define NULL for dumb systems.
652-
653-Tue Jun 11 17:05:13 1996  Ulrich Drepper  <drepper@cygnus.com>
654-
655-	* intlh.inst.in, libgettext.h (dcgettext): Rename local variable
656-	result to __result to prevent name clash.
657-
658-	* l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to
659-        get prototype for stpcpy and strcasecmp.
660-
661-	* intlh.inst.in, libgettext.h: Move declaration of
662-	`_nl_msg_cat_cntr' outside __extension__ block to prevent warning
663-	from gcc's -Wnested-extern option.
664-
665-Fri Jun  7 01:58:00 1996  Ulrich Drepper  <drepper@cygnus.com>
666-
667-	* Makefile.in (install): Remove comment.
668-
669-Thu Jun  6 17:28:17 1996  Ulrich Drepper  <drepper@cygnus.com>
670-
671-	* Makefile.in (install): Work around for another Buglix stupidity.
672-	Always use an `else' close for `if's.  Reported by Nelson Beebe.
673-
674-	* Makefile.in (intlh.inst): Correct typo in phony rule.
675-	Reported by Nelson Beebe.
676-
677-Thu Jun  6 01:49:52 1996  Ulrich Drepper  <drepper@cygnus.com>
678-
679-	* dcgettext.c (read_alias_file): Rename variable alloca_list to
680-	block_list as the macro calls assume.
681-	Patch by Eric Backus.
682-
683-	* localealias.c [!HAVE_ALLOCA]: Define alloca as macro using
684-        malloc.
685-	(read_alias_file): Rename varriabe alloca_list to block_list as the
686-	macro calls assume.
687-	Patch by Eric Backus.
688-
689-	* l10nflist.c: Correct conditional for <argz.h> inclusion.
690-	Reported by Roland McGrath.
691-
692-	* Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not
693-        all-@USE_NLS@.
694-
695-	* Makefile.in (install): intlh.inst comes from local dir, not
696-        $(srcdir).
697-
698-	* Makefile.in (intlh.inst): Special handling of this goal.  If
699-	used in gettext, this is really a rul to construct this file.  If
700-	used in any other package it is defined as a .PHONY rule with
701-	empty body.
702-
703-	* finddomain.c: Extract locale file information handling into
704-	l10nfile.c.  Rename local stpcpy__ function to stpcpy.
705-
706-	* dcgettext.c (stpcpy): Add local definition.
707-
708-	* l10nflist.c: Solve some portability problems.  Patches partly by
709-	Thomas Esken.  Add local definition of stpcpy.
710-
711-Tue Jun  4 02:47:49 1996  Ulrich Drepper  <drepper@cygnus.com>
712-
713-	* intlh.inst.in: Don't depend including <locale.h> on
714-	HAVE_LOCALE_H.  Instead configure must rewrite this fiile
715-	depending on the result of the configure run.
716-
717-	* Makefile.in (install): libintl.inst is now called intlh.inst.
718-	Add rules for updating intlh.inst from intlh.inst.in.
719-
720-	* libintl.inst: Renamed to intlh.inst.in.
721-
722-	* localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1
723-        because gcc has __buitlin_alloca.
724-	Reported by Roland McGrath.
725-
726-Mon Jun  3 00:32:16 1996  Ulrich Drepper  <drepper@cygnus.com>
727-
728-	* Makefile.in (installcheck): New goal to fulfill needs of
729-        automake's distcheck.
730-
731-	* Makefile.in (install): Reorder commands so that VERSION is
732-        found.
733-
734-	* Makefile.in (gettextsrcdir): Now use subdirectory intl/ in
735-        @datadir@/gettext.
736-	(COMSRCS): Add l10nfile.c.
737-	(OBJECTS): Add l10nfile.o.
738-	(DISTFILES): Rename to DISTFILE.normal.  Remove $(DISTFILES.common).
739-	(DISTFILE.gettext): Remove $(DISTFILES.common).
740-	(all-gettext): Remove goal.
741-	(install): If $(PACKAGE) = gettext install, otherwose do nothing.  No
742-	package but gettext itself should install libintl.h + headers.
743-	(dist): Extend goal to work for gettext, too.
744-	(dist-gettext): Remove goal.
745-
746-	* dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc.
747-
748-Sun Jun  2 17:33:06 1996  Ulrich Drepper  <drepper@cygnus.com>
749-
750-	* loadmsgcat.c (_nl_load_domain): Parameter is now comes from
751-        find_l10nfile.
752-
753-Sat Jun  1 02:23:03 1996  Ulrich Drepper  <drepper@cygnus.com>
754-
755-	* l10nflist.c (__argz_next): Add definition.
756-
757-	* dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca
758-	code.  Use new l10nfile handling.
759-
760-	* localealias.c [!HAVE_ALLOCA]: Add code for handling missing
761-        alloca code.
762-
763-	* l10nflist.c: Initial revision.
764-
765-Tue Apr  2 18:51:18 1996  Ulrich Drepper  <drepper@myware>
766-
767-	* Makefile.in (all-gettext): New goal.  Same as all-yes.
768-
769-Thu Mar 28 23:01:22 1996  Karl Eichwalder  <ke@ke.central.de>
770-
771-	* Makefile.in (gettextsrcdir): Define using @datadir@.
772-
773-Tue Mar 26 12:39:14 1996  Ulrich Drepper  <drepper@myware>
774-
775-	* finddomain.c: Include <ctype.h>.  Reported by Roland McGrath.
776-
777-Sat Mar 23 02:00:35 1996  Ulrich Drepper  <drepper@myware>
778-
779-	* finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing
780-        with external declaration.
781-
782-Sat Mar  2 00:47:09 1996  Ulrich Drepper  <drepper@myware>
783-
784-	* Makefile.in (all-no): Rename from all_no.
785-
786-Sat Feb 17 00:25:59 1996  Ulrich Drepper  <drepper@myware>
787-
788-	* gettextP.h [loaded_domain]: Array `successor' must now contain up
789-        to 63 elements (because of codeset name normalization).
790-
791-	* finddomain.c: Implement codeset name normalization.
792-
793-Thu Feb 15 04:39:09 1996  Ulrich Drepper  <drepper@myware>
794-
795-	* Makefile.in (all): Define to `all-@USE_NLS@'.
796-	(all-yes, all_no): New goals.  `all-no' is noop, `all-yes'
797-	is former all.
798-
799-Mon Jan 15 21:46:01 1996  Howard Gayle  <howard@hal.com>
800-
801-	* localealias.c (alias_compare): Increment string pointers in loop
802-        of strcasecmp replacement.
803-
804-Fri Dec 29 21:16:34 1995  Ulrich Drepper  <drepper@myware>
805-
806-	* Makefile.in (install-src): Who commented this goal out ? :-)
807-
808-Fri Dec 29 15:08:16 1995  Ulrich Drepper  <drepper@myware>
809-
810-	* dcgettext.c (DCGETTEXT): Save `errno'.  Failing system calls
811-	should not effect it because a missing catalog is no error.
812-	Reported by Harald K<o:>nig <koenig@tat.physik.uni-tuebingen.de>.
813-
814-Tue Dec 19 22:09:13 1995  Ulrich Drepper  <drepper@myware>
815-
816-	* Makefile.in (Makefile): Explicitly use $(SHELL) for running
817-        shell scripts.
818-
819-Fri Dec 15 17:34:59 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
820-
821-	* Makefile.in (install-src): Only install library and header when
822-	we use the own implementation.  Don't do it when using the
823-	system's gettext or catgets functions.
824-
825-	* dcgettext.c (find_msg): Must not swap domain->hash_size here.
826-
827-Sat Dec  9 16:24:37 1995  Ulrich Drepper  <drepper@myware>
828-
829-	* localealias.c, libintl.inst, libgettext.h, hash-string.h,
830-	gettextP.h, finddomain.c, dcgettext.c, cat-compat.c:
831-	Use PARAMS instead of __P.  Suggested by Roland McGrath.
832-
833-Tue Dec  5 11:39:14 1995  Larry Schwimmer  <rosebud@cyclone.stanford.edu>
834-
835-	* libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if
836-	!_LIBINTL_H' because Solaris defines _LIBINTL_H as empty.
837-
838-Mon Dec  4 15:42:07 1995  Ulrich Drepper  <drepper@myware>
839-
840-	* Makefile.in (install-src):
841-	Install libintl.inst instead of libintl.h.install.
842-
843-Sat Dec  2 22:51:38 1995  Marcus Daniels  <marcus@sysc.pdx.edu>
844-
845-	* cat-compat.c (textdomain):
846-	Reverse order in which files are tried you load.  First
847-	try local file, when this failed absolute path.
848-
849-Wed Nov 29 02:03:53 1995  Nelson H. F. Beebe  <beebe@math.utah.edu>
850-
851-	* cat-compat.c (bindtextdomain): Add missing { }.
852-
853-Sun Nov 26 18:21:41 1995  Ulrich Drepper  <drepper@myware>
854-
855-	* libintl.inst: Add missing __P definition.  Reported by Nelson Beebe.
856-
857-	* Makefile.in:
858-	Add dummy `all' and `dvi' goals.  Reported by Tom Tromey.
859-
860-Sat Nov 25 16:12:01 1995  Franc,ois Pinard  <pinard@iro.umontreal.ca>
861-
862-	* hash-string.h: Capitalize arguments of macros.
863-
864-Sat Nov 25 12:01:36 1995  Ulrich Drepper  <drepper@myware>
865-
866-	* Makefile.in (DISTFILES): Prevent files names longer than 13
867-	characters.  libintl.h.glibc->libintl.glibc,
868-	libintl.h.install->libintl.inst.  Reported by Joshua R. Poulson.
869-
870-Sat Nov 25 11:31:12 1995  Eric Backus  <ericb@lsid.hp.com>
871-
872-	* dcgettext.c: Fix bug in preprocessor conditionals.
873-
874-Sat Nov 25 02:35:27 1995  Nelson H. F. Beebe  <beebe@math.utah.edu>
875-
876-	* libgettext.h: Solaris cc does not understand
877-	 #if !SYMBOL1 && !SYMBOL2.  Sad	but true.
878-
879-Thu Nov 23 16:22:14 1995  Ulrich Drepper  <drepper@myware>
880-
881-	* hash-string.h (hash_string):
882-	Fix for machine with >32 bit `unsigned long's.
883-
884-	* dcgettext.c (DCGETTEXT):
885-	Fix horrible bug in loop for alternative translation.
886-
887-Thu Nov 23 01:45:29 1995  Ulrich Drepper  <drepper@myware>
888-
889-	* po2tbl.sed.in, linux-msg.sed, xopen-msg.sed:
890-	Some further simplifications in message number generation.
891-
892-Mon Nov 20 21:08:43 1995  Ulrich Drepper  <drepper@myware>
893-
894-	* libintl.h.glibc: Use __const instead of const in prototypes.
895-
896-	* Makefile.in (install-src):
897-	Install libintl.h.install instead of libintl.h.  This
898-	is a stripped-down version.  Suggested by Peter Miller.
899-
900-	* libintl.h.install, libintl.h.glibc: Initial revision.
901-
902-	* localealias.c (_nl_expand_alias, read_alias_file):
903-	Protect prototypes in type casts by __P.
904-
905-Tue Nov 14 16:43:58 1995  Ulrich Drepper  <drepper@myware>
906-
907-	* hash-string.h: Correct prototype for hash_string.
908-
909-Sun Nov 12 12:42:30 1995  Ulrich Drepper  <drepper@myware>
910-
911-	* hash-string.h (hash_string): Add prototype.
912-
913-	* gettextP.h: Fix copyright.
914-	(SWAP): Add prototype.
915-
916-Wed Nov  8 22:56:33 1995  Ulrich Drepper  <drepper@myware>
917-
918-	* localealias.c (read_alias_file): Forgot sizeof.
919-	Avoid calling *printf function.  This introduces a big overhead.
920-	Patch by Roland McGrath.
921-
922-Tue Nov  7 14:21:08 1995  Ulrich Drepper  <drepper@myware>
923-
924-	* finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy.
925-
926-	* finddomain.c (stpcpy):
927-	Define substitution function local.  The macro was to flaky.
928-
929-	* cat-compat.c: Fix typo.
930-
931-	* xopen-msg.sed, linux-msg.sed:
932-	While bringing message number to right place only accept digits.
933-
934-	* linux-msg.sed, xopen-msg.sed: Now that the counter does not have
935-	leading 0s we don't need to remove them.  Reported by Marcus
936-	Daniels.
937-
938-	* Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in
939-	dependency.  Reported by Marcus Daniels.
940-
941-	* cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement.
942-	Generally cleanup using #if instead of #ifndef.
943-
944-	* Makefile.in: Correct typos in comment.  By Franc,ois Pinard.
945-
946-Mon Nov  6 00:27:02 1995  Ulrich Drepper  <drepper@myware>
947-
948-	* Makefile.in (install-src): Don't install libintl.h and libintl.a
949-	if we use an available gettext implementation.
950-
951-Sun Nov  5 22:02:08 1995  Ulrich Drepper  <drepper@myware>
952-
953-	* libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS.  Reported
954-	by Franc,ois Pinard.
955-
956-	* libgettext.h: Use #if instead of #ifdef/#ifndef.
957-
958-	* finddomain.c:
959-	Comments describing what has to be done should start with FIXME.
960-
961-Sun Nov  5 19:38:01 1995  Ulrich Drepper  <drepper@myware>
962-
963-	* Makefile.in (DISTFILES): Split.  Use DISTFILES with normal meaning.
964-	DISTFILES.common names the files common to both dist goals.
965-	DISTFILES.gettext are the files only distributed in GNU gettext.
966-
967-Sun Nov  5 17:32:54 1995  Ulrich Drepper  <drepper@myware>
968-
969-	* dcgettext.c (DCGETTEXT): Correct searching in derived locales.
970-	This was necessary since a change in _nl_find_msg several weeks
971-	ago.  I really don't know this is still not fixed.
972-
973-Sun Nov  5 12:43:12 1995  Ulrich Drepper  <drepper@myware>
974-
975-	* loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL.  This
976-	might mark a special condition.
977-
978-	* finddomain.c (make_entry_rec): Don't make illegal entry as decided.
979-
980-	* Makefile.in (dist): Suppress error message when ln failed.
981-	Get files from $(srcdir) explicitly.
982-
983-	* libgettext.h (gettext_const): Rename to gettext_noop.
984-
985-Fri Nov  3 07:36:50 1995  Ulrich Drepper  <drepper@myware>
986-
987-	* finddomain.c (make_entry_rec):
988-	Protect against wrong locale names by testing mask.
989-
990-	* libgettext.h (gettext_const): Add macro definition.
991-	Capitalize macro arguments.
992-
993-Thu Nov  2 23:15:51 1995  Ulrich Drepper  <drepper@myware>
994-
995-	* finddomain.c (_nl_find_domain):
996-	Test for pointer != NULL before accessing value.
997-	Reported by Tom Tromey.
998-
999-	* gettext.c (NULL):
1000-	Define as (void*)0 instad of 0.  Reported by Franc,ois Pinard.
1001-
1002-Mon Oct 30 21:28:52 1995  Ulrich Drepper  <drepper@myware>
1003-
1004-	* po2tbl.sed.in: Serious typo bug fixed by Jim Meyering.
1005-
1006-Sat Oct 28 23:20:47 1995  Ulrich Drepper  <drepper@myware>
1007-
1008-	* libgettext.h: Disable dcgettext optimization for Solaris 2.3.
1009-
1010-	* localealias.c (alias_compare):
1011-	Peter Miller reported that tolower in some systems is
1012-	even dumber than I thought.  Protect call by `isupper'.
1013-
1014-Fri Oct 27 22:22:51 1995  Ulrich Drepper  <drepper@myware>
1015-
1016-	* Makefile.in (libdir, includedir): New variables.
1017-	(install-src): Install libintl.a and libintl.h in correct dirs.
1018-
1019-Fri Oct 27 22:07:29 1995  Ulrich Drepper  <drepper@myware>
1020-
1021-	* Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c.
1022-
1023-	* po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques.
1024-
1025-	* localealias.c:
1026-	Fix typo and superflous test.  Reported by Christian von Roques.
1027-
1028-Fri Oct  6 11:52:05 1995  Ulrich Drepper  <drepper@myware>
1029-
1030-	* finddomain.c (_nl_find_domain):
1031-	Correct some remainder from the pre-CEN syntax.  Now
1032-	we don't have a constant number of successors anymore.
1033-
1034-Wed Sep 27 21:41:13 1995  Ulrich Drepper  <drepper@myware>
1035-
1036-	* Makefile.in (DISTFILES): Add libintl.h.glibc.
1037-
1038-	* Makefile.in (dist-libc): Add goal for packing sources for glibc.
1039-	(COMSRCS, COMHDRS): Splitted to separate sources shared with glibc.
1040-
1041-	* loadmsgcat.c: Forget to continue #if line.
1042-
1043-	* localealias.c:
1044-	[_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name
1045-	space clean.
1046-
1047-	* dcgettext.c, finddomain.c: Better comment to last change.
1048-
1049-	* loadmsgcat.c:
1050-	[_LIBC]: Rename fstat, open, close, read, mmap, and munmap to
1051-	__fstat, __open, __close, __read, __mmap, and __munmap resp
1052-	to keep ANSI C name space clean.
1053-
1054-	* finddomain.c:
1055-	[_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean.
1056-
1057-	* dcgettext.c:
1058-	[_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to
1059-	keep ANSI C name space clean.
1060-
1061-	* libgettext.h:
1062-	Include sys/types.h for those old SysV systems out there.
1063-	Reported by Francesco Potorti`.
1064-
1065-	* loadmsgcat.c (use_mmap): Define if compiled for glibc.
1066-
1067-	* bindtextdom.c: Include all those standard headers
1068-	unconditionally if _LIBC is defined.
1069-
1070-	* finddomain.c: Fix 2 times defiend -> defined.
1071-
1072-	* textdomain.c: Include libintl.h instead of libgettext.h when
1073-	compiling for glibc.  Include all those standard headers
1074-	unconditionally if _LIBC is defined.
1075-
1076-	* localealias.c, loadmsgcat.c: Prepare to be compiled in glibc.
1077-
1078-	* gettext.c:
1079-	Include libintl.h instead of libgettext.h when compiling for glibc.
1080-	Get NULL from stddef.h if we compile for glibc.
1081-
1082-	* finddomain.c: Include libintl.h instead of libgettext.h when
1083-	compiling for glibc.  Include all those standard headers
1084-	unconditionally if _LIBC is defined.
1085-
1086-	* dcgettext.c: Include all those standard headers unconditionally
1087-	if _LIBC is defined.
1088-
1089-	* dgettext.c: If compiled in glibc include libintl.h instead of
1090-	libgettext.h.
1091-	(locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc.
1092-
1093-	* dcgettext.c: If compiled in glibc include libintl.h instead of
1094-	libgettext.h.
1095-	(getcwd): Don't rely on HAVE_GETCWD when compiling for glibc.
1096-
1097-	* bindtextdom.c:
1098-	If compiled in glibc include libintl.h instead of libgettext.h.
1099-
1100-Mon Sep 25 22:23:06 1995  Ulrich Drepper  <drepper@myware>
1101-
1102-	* localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0.
1103-	Reported by Marcus Daniels.
1104-
1105-	* cat-compat.c (bindtextdomain):
1106-	String used in putenv must not be recycled.
1107-	Reported by Marcus Daniels.
1108-
1109-	* libgettext.h (__USE_GNU_GETTEXT):
1110-	Additional symbol to signal that we use GNU gettext
1111-	library.
1112-
1113-	* cat-compat.c (bindtextdomain):
1114-	Fix bug with the strange stpcpy replacement.
1115-	Reported by Nelson Beebe.
1116-
1117-Sat Sep 23 08:23:51 1995  Ulrich Drepper  <drepper@myware>
1118-
1119-	* cat-compat.c: Include <string.h> for stpcpy prototype.
1120-
1121-	* localealias.c (read_alias_file):
1122-	While expand strdup code temporary variable `cp' hided
1123-	higher level variable with same name.  Rename to `tp'.
1124-
1125-	* textdomain.c (textdomain):
1126-	Avoid warning by using temporary variable in strdup code.
1127-
1128-	* finddomain.c (_nl_find_domain): Remove unused variable `application'.
1129-
1130-Thu Sep 21 15:51:44 1995  Ulrich Drepper  <drepper@myware>
1131-
1132-	* localealias.c (alias_compare):
1133-	Use strcasecmp() only if available.  Else use
1134-	implementation in place.
1135-
1136-	* intl-compat.c:
1137-	Wrapper functions now call *__ functions instead of __*.
1138-
1139-	* libgettext.h: Declare prototypes for *__ functions instead for __*.
1140-
1141-	* cat-compat.c, loadmsgcat.c:
1142-	Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
1143-	of the standard libc and so prevent libintl.a from being used
1144-	standalone.
1145-
1146-	* bindtextdom.c:
1147-	Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
1148-	of the standard libc and so prevent libintl.a from being used
1149-	standalone.
1150-	Rename to bindtextdomain__ if not used in GNU C Library.
1151-
1152-	* dgettext.c:
1153-	Rename function to dgettext__ if not used in GNU C Library.
1154-
1155-	* gettext.c:
1156-	Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
1157-	of the standard libc and so prevent libintl.a from being used
1158-	standalone.
1159-	Functions now called gettext__ if not used in GNU C Library.
1160-
1161-	* dcgettext.c, localealias.c, textdomain.c, finddomain.c:
1162-	Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
1163-	of the standard libc and so prevent libintl.a from being used
1164-	standalone.
1165-
1166-Sun Sep 17 23:14:49 1995  Ulrich Drepper  <drepper@myware>
1167-
1168-	* finddomain.c: Correct some bugs in handling of CEN standard
1169- 	locale definitions.
1170-
1171-Thu Sep  7 01:49:28 1995  Ulrich Drepper  <drepper@myware>
1172-
1173-	* finddomain.c: Implement CEN syntax.
1174-
1175-	* gettextP.h (loaded_domain): Extend number of successors to 31.
1176-
1177-Sat Aug 19 19:25:29 1995  Ulrich Drepper  <drepper@myware>
1178-
1179-	* Makefile.in (aliaspath): Remove path to X11 locale dir.
1180-
1181-	* Makefile.in: Make install-src depend on install.  This helps
1182- 	gettext to install the sources and other packages can use the
1183- 	install goal.
1184-
1185-Sat Aug 19 15:19:33 1995  Ulrich Drepper  <drepper@myware>
1186-
1187-	* Makefile.in (uninstall): Remove stuff installed by install-src.
1188-
1189-Tue Aug 15 13:13:53 1995  Ulrich Drepper  <drepper@myware>
1190-
1191-	* VERSION.in: Initial revision.
1192-
1193-	* Makefile.in (DISTFILES):
1194-	Add VERSION file.  This is not necessary for gettext, but
1195-	for other packages using this library.
1196-
1197-Tue Aug 15 06:16:44 1995  Ulrich Drepper  <drepper@myware>
1198-
1199-	* gettextP.h (_nl_find_domain):
1200-	New prototype after changing search strategy.
1201-
1202-	* finddomain.c (_nl_find_domain):
1203-	We now try only to find a specified catalog.  Fall back to other
1204-	catalogs listed in the locale list is now done in __dcgettext.
1205-
1206-	* dcgettext.c (__dcgettext):
1207-	Now we provide message fall back even to different languages.
1208-	I.e. if a message is not available in one language all the other
1209- 	in the locale list a tried.  Formerly fall back was only possible
1210- 	within one language.  Implemented by moving one loop from
1211- 	_nl_find_domain to here.
1212-
1213-Mon Aug 14 23:45:50 1995  Ulrich Drepper  <drepper@myware>
1214-
1215-	* Makefile.in (gettextsrcdir):
1216-	Directory where source of GNU gettext library are made
1217-	available.
1218-	(INSTALL, INSTALL_DATA): Programs used for installing sources.
1219-	(gettext-src): New.  Rule to install GNU gettext sources for use in
1220-	gettextize shell script.
1221-
1222-Sun Aug 13 14:40:48 1995  Ulrich Drepper  <drepper@myware>
1223-
1224-	* loadmsgcat.c (_nl_load_domain):
1225-	Use mmap for loading only when munmap function is
1226-	also available.
1227-
1228-	* Makefile.in (install): Depend on `all' goal.
1229-
1230-Wed Aug  9 11:04:33 1995  Ulrich Drepper  <drepper@myware>
1231-
1232-	* localealias.c (read_alias_file):
1233-	Do not overwrite '\n' when terminating alias value string.
1234-
1235-	* localealias.c (read_alias_file):
1236-	Handle long lines.  Ignore the rest not fitting in
1237-	the buffer after the initial `fgets' call.
1238-
1239-Wed Aug  9 00:54:29 1995  Ulrich Drepper  <drepper@myware>
1240-
1241-	* gettextP.h (_nl_load_domain):
1242-	Add prototype, replacing prototype for _nl_load_msg_cat.
1243-
1244-	* finddomain.c (_nl_find_domain):
1245-	Remove unneeded variable filename and filename_len.
1246-	(expand_alias): Remove prototype because functions does not
1247- 	exist anymore.
1248-
1249-	* localealias.c (read_alias_file):
1250-	Change type of fname_len parameter to int.
1251-	(xmalloc): Add prototype.
1252-
1253-	* loadmsgcat.c: Better prototypes for xmalloc.
1254-
1255-Tue Aug  8 22:30:39 1995  Ulrich Drepper  <drepper@myware>
1256-
1257-	* finddomain.c (_nl_find_domain):
1258-	Allow alias name to be constructed from the four components.
1259-
1260-	* Makefile.in (aliaspath): New variable.  Set to preliminary value.
1261-	(SOURCES): Add localealias.c.
1262-	(OBJECTS): Add localealias.o.
1263-
1264-	* gettextP.h: Add prototype for _nl_expand_alias.
1265-
1266-	* finddomain.c: Aliasing handled in intl/localealias.c.
1267-
1268-	* localealias.c: Aliasing for locale names.
1269-
1270-	* bindtextdom.c: Better prototypes for xmalloc and xstrdup.
1271-
1272-Mon Aug  7 23:47:42 1995  Ulrich Drepper  <drepper@myware>
1273-
1274-	* Makefile.in (DISTFILES): gettext.perl is now found in misc/.
1275-
1276-	* cat-compat.c (bindtextdomain):
1277-	Correct implementation.  dirname parameter was not used.
1278-	Reported by Marcus Daniels.
1279-
1280-	* gettextP.h (loaded_domain):
1281-	New fields `successor' and `decided' for oo, lazy
1282-	message handling implementation.
1283-
1284-	* dcgettext.c:
1285-	Adopt for oo, lazy message handliing.
1286-  	Now we can inherit translations from less specific locales.
1287-	(find_msg): New function.
1288-
1289-	* loadmsgcat.c, finddomain.c:
1290-	Complete rewrite.  Implement oo, lazy message handling :-).
1291-  	We now have an additional environment variable `LANGUAGE' with
1292- 	a higher priority than LC_ALL for the LC_MESSAGE locale.
1293-  	Here we can set a colon separated list of specifications each
1294- 	of the form `language[_territory[.codeset]][@modifier]'.
1295-
1296-Sat Aug  5 09:55:42 1995  Ulrich Drepper  <drepper@myware>
1297-
1298-	* finddomain.c (unistd.h):
1299-	Include to get _PC_PATH_MAX defined on system having it.
1300-
1301-Fri Aug  4 22:42:00 1995  Ulrich Drepper  <drepper@myware>
1302-
1303-	* finddomain.c (stpcpy): Include prototype.
1304-
1305-	* Makefile.in (dist): Remove `copying instead' message.
1306-
1307-Wed Aug  2 18:52:03 1995  Ulrich Drepper  <drepper@myware>
1308-
1309-	* Makefile.in (ID, TAGS): Do not use $^.
1310-
1311-Tue Aug  1 20:07:11 1995  Ulrich Drepper  <drepper@myware>
1312-
1313-	* Makefile.in (TAGS, ID): Use $^ as command argument.
1314-	(TAGS): Give etags -o option t write to current directory,
1315- 	not $(srcdir).
1316-	(ID): Use $(srcdir) instead os $(top_srcdir)/src.
1317-	(distclean): Remove ID.
1318-
1319-Sun Jul 30 11:51:46 1995  Ulrich Drepper  <drepper@myware>
1320-
1321-	* Makefile.in (gnulocaledir):
1322-	New variable, always using share/ for data directory.
1323-	(DEFS): Add GNULOCALEDIR, used in finddomain.c.
1324-
1325-	* finddomain.c (_nl_default_dirname):
1326-	Set to GNULOCALEDIR, because it always has to point
1327-	to the directory where GNU gettext Library writes it to.
1328-
1329-	* intl-compat.c (textdomain, bindtextdomain):
1330-	Undefine macros before function definition.
1331-
1332-Sat Jul 22 01:10:02 1995  Ulrich Drepper  <drepper@myware>
1333-
1334-	* libgettext.h (_LIBINTL_H):
1335-	Protect definition in case where this file is included as
1336-	libgettext.h on Solaris machines.  Add comment about this.
1337-
1338-Wed Jul 19 02:36:42 1995  Ulrich Drepper  <drepper@myware>
1339-
1340-	* intl-compat.c (textdomain): Correct typo.
1341-
1342-Wed Jul 19 01:51:35 1995  Ulrich Drepper  <drepper@myware>
1343-
1344-	* dcgettext.c (dcgettext): Function now called __dcgettext.
1345-
1346-	* dgettext.c (dgettext): Now called __dgettext and calls
1347- 	__dcgettext.
1348-
1349-	* gettext.c (gettext):
1350-	Function now called __gettext and calls __dgettext.
1351-
1352-	* textdomain.c (textdomain): Function now called __textdomain.
1353-
1354-	* bindtextdom.c (bindtextdomain): Function now called
1355- 	__bindtextdomain.
1356-
1357-	* intl-compat.c: Initial revision.
1358-
1359-	* Makefile.in (SOURCES): Add intl-compat.c.
1360-	(OBJECTS): We always compile the GNU gettext library functions.
1361-  	OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o,
1362- 	and intl-compat.o.
1363-  	(GETTOBJS): Contains now only intl-compat.o.
1364-
1365-	* libgettext.h:
1366-	Re-include protection matches dualistic character of libgettext.h.
1367-	For all functions in GNU gettext library define __ counter part.
1368-
1369-	* finddomain.c (strchr): Define as index if not found in C library.
1370-	(_nl_find_domain): For relative paths paste / in between.
1371-
1372-Tue Jul 18 16:37:45 1995  Ulrich Drepper  <drepper@myware>
1373-
1374-	* loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h.
1375-
1376-	* xopen-msg.sed: Fix bug with `msgstr ""' lines.
1377-	A little bit better comments.
1378-
1379-Tue Jul 18 01:18:27 1995  Ulrich Drepper  <drepper@myware>
1380-
1381-	* Makefile.in:
1382-	po-mode.el, makelinks, combine-sh are now found in ../misc.
1383-
1384-	* po-mode.el, makelinks, combine-sh, elisp-comp:
1385-	Moved to ../misc/.
1386-
1387-	* libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__.
1388-
1389-Sun Jul 16 22:33:02 1995  Ulrich Drepper  <drepper@myware>
1390-
1391-	* Makefile.in (INSTALL, INSTALL_DATA): New variables.
1392-	(install-data, uninstall): Install/uninstall .elc file.
1393-
1394-	* po-mode.el (Installation comment):
1395-	Add .pox as possible extension of .po files.
1396-
1397-Sun Jul 16 13:23:27 1995  Ulrich Drepper  <drepper@myware>
1398-
1399-	* elisp-comp: Complete new version by Franc,ois: This does not
1400- 	fail when not compiling in the source directory.
1401-
1402-Sun Jul 16 00:12:17 1995  Ulrich Drepper  <drepper@myware>
1403-
1404-	* Makefile.in (../po/cat-id-tbl.o):
1405-	Use $(MAKE) instead of make for recursive make.
1406-
1407-	* Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh.
1408-	(install-exec): Add missing dummy goal.
1409-	(install-data, uninstall): @ in multi-line shell command at
1410- 	beginning, not in front of echo.  Reported by Eric Backus.
1411-
1412-Sat Jul 15 00:21:28 1995  Ulrich Drepper  <drepper@myware>
1413-
1414-	* Makefile.in (DISTFILES):
1415-	Rename libgettext.perl to gettext.perl to fit in 14 chars
1416-	file systems.
1417-
1418-	* gettext.perl:
1419- 	Rename to gettext.perl to fit in 14 chars file systems.
1420-
1421-Thu Jul 13 23:17:20 1995  Ulrich Drepper  <drepper@myware>
1422-
1423-	* cat-compat.c: If !STDC_HEADERS try to include malloc.h.
1424-
1425-Thu Jul 13 20:55:02 1995  Ulrich Drepper  <drepper@myware>
1426-
1427-	* po2tbl.sed.in: Pretty printing.
1428-
1429-	* linux-msg.sed, xopen-msg.sed:
1430-	Correct bugs with handling substitute flags in branches.
1431-
1432-	* hash-string.h (hash_string):
1433-	Old K&R compilers don't under stand `unsigned char'.
1434-
1435-	* gettext.h (nls_uint32):
1436-	Some old K&R compilers (eg HP) don't understand `unsigned int'.
1437-
1438-	* cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes.
1439-
1440-Thu Jul 13 01:34:33 1995  Ulrich Drepper  <drepper@myware>
1441-
1442-	* Makefile.in (ELCFILES): New variable.
1443-	(DISTFILES): Add elisp-comp.
1444-	Add implicit rule for .el -> .elc compilation.
1445-	(install-data): install $ELCFILES
1446-	(clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp.
1447-
1448-	* elisp-comp: Initial revision
1449-
1450-Wed Jul 12 16:14:52 1995  Ulrich Drepper  <drepper@myware>
1451-
1452-	* Makefile.in:
1453-	cat-id-tbl.c is now found in po/.  This enables us to use an identical
1454-	intl/ directory in all packages.
1455-
1456-	* dcgettext.c (dcgettext): hashing does not work for table size <= 2.
1457-
1458-	* textdomain.c: fix typo (#if def -> #if defined)
1459-
1460-Tue Jul 11 18:44:43 1995  Ulrich Drepper  <drepper@myware>
1461-
1462-	* Makefile.in (stamp-cat-id): use top_srcdir to address source files
1463-	(DISTFILES,distclean): move tupdate.perl to src/
1464-
1465-	* po-to-tbl.sed.in:
1466-	add additional jump to clear change flag to recognize multiline strings
1467-
1468-Tue Jul 11 01:32:50 1995  Ulrich Drepper  <drepper@myware>
1469-
1470-	* textdomain.c: Protect inclusion of stdlib.h and string.h.
1471-
1472-	* loadmsgcat.c: Protect inclusion of stdlib.h.
1473-
1474-	* libgettext.h: Protect inclusion of locale.h.
1475-	Allow use in C++ programs.
1476-	Define NULL is not happened already.
1477-
1478-	* Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of
1479-	po-to-tbl.sed.
1480-	(distclean): remove po-to-tbl.sed and tupdate.perl.
1481-
1482-	* tupdate.perl.in: Substitute Perl path even in exec line.
1483-	Don't include entries without translation from old .po file.
1484-
1485-Tue Jul  4 00:41:51 1995  Ulrich Drepper  <drepper@myware>
1486-
1487-	* tupdate.perl.in: use "Updated: " in msgid "".
1488-
1489-	* cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR).
1490- 	Define getenv if !__STDC__.
1491-
1492-	* bindtextdom.c: Protect stdlib.h and string.h inclusion.
1493- 	Define free if !__STDC__.
1494-
1495-	* finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR.
1496- 	Define free if !__STDC__.
1497-
1498-	* cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR.
1499-
1500-Mon Jul  3 23:56:30 1995  Ulrich Drepper  <drepper@myware>
1501-
1502-	* Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR.
1503-	Remove unneeded $(srcdir) from Makefile.in dependency.
1504-
1505-	* makelinks: Add copyright and short description.
1506-
1507-	* po-mode.el: Last version for 0.7.
1508-
1509-	* tupdate.perl.in: Fix die message.
1510-
1511-	* dcgettext.c: Protect include of string.h.
1512-
1513-	* gettext.c: Protect include of stdlib.h and further tries to get NULL.
1514-
1515-	* finddomain.c: Some corrections in includes.
1516-
1517-	* Makefile.in (INCLUDES): Prune list correct path to Makefile.in.
1518-
1519-	* po-to-tbl.sed: Adopt for new .po file format.
1520-
1521-	* linux-msg.sed, xopen-msg.sed: Adopt for new .po file format.
1522-
1523-Sun Jul  2 23:55:03 1995  Ulrich Drepper  <drepper@myware>
1524-
1525-	* tupdate.perl.in: Complete rewrite for new .po file format.
1526-
1527-Sun Jul  2 02:06:50 1995  Ulrich Drepper  <drepper@myware>
1528-
1529-	* First official release.  This directory contains all the code
1530-	needed to internationalize own packages.  It provides functions
1531-	which allow to use the X/Open catgets function with an interface
1532-	like the Uniforum gettext function.  For system which does not
1533-	have neither of those a complete implementation is provided.
1534diff -uprN clean/lrzsz-0.12.20/intl/dcgettext.c lrzsz-0.12.20/intl/dcgettext.c
1535--- clean/lrzsz-0.12.20/intl/dcgettext.c	1998-04-26 14:22:36.000000000 +0100
1536+++ lrzsz-0.12.20/intl/dcgettext.c	1970-01-01 01:00:00.000000000 +0100
1537@@ -1,593 +0,0 @@
1538-/* Implementation of the dcgettext(3) function
1539-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
1540-
1541-   This program is free software; you can redistribute it and/or modify
1542-   it under the terms of the GNU General Public License as published by
1543-   the Free Software Foundation; either version 2, or (at your option)
1544-   any later version.
1545-
1546-   This program is distributed in the hope that it will be useful,
1547-   but WITHOUT ANY WARRANTY; without even the implied warranty of
1548-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1549-   GNU General Public License for more details.
1550-
1551-   You should have received a copy of the GNU General Public License
1552-   along with this program; if not, write to the Free Software Foundation,
1553-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
1554-
1555-#ifdef HAVE_CONFIG_H
1556-# include <config.h>
1557-#endif
1558-
1559-#include <sys/types.h>
1560-
1561-#ifdef __GNUC__
1562-# define alloca __builtin_alloca
1563-# define HAVE_ALLOCA 1
1564-#else
1565-# if defined HAVE_ALLOCA_H || defined _LIBC
1566-#  include <alloca.h>
1567-# else
1568-#  ifdef _AIX
1569- #pragma alloca
1570-#  else
1571-#   ifndef alloca
1572-char *alloca ();
1573-#   endif
1574-#  endif
1575-# endif
1576-#endif
1577-
1578-#include <errno.h>
1579-#ifndef errno
1580-extern int errno;
1581-#endif
1582-#ifndef __set_errno
1583-# define __set_errno(val) errno = (val)
1584-#endif
1585-
1586-#if defined STDC_HEADERS || defined _LIBC
1587-# include <stdlib.h>
1588-#else
1589-char *getenv ();
1590-# ifdef HAVE_MALLOC_H
1591-#  include <malloc.h>
1592-# else
1593-void free ();
1594-# endif
1595-#endif
1596-
1597-#if defined HAVE_STRING_H || defined _LIBC
1598-# ifndef _GNU_SOURCE
1599-#  define _GNU_SOURCE	1
1600-# endif
1601-# include <string.h>
1602-#else
1603-# include <strings.h>
1604-#endif
1605-#if !HAVE_STRCHR && !defined _LIBC
1606-# ifndef strchr
1607-#  define strchr index
1608-# endif
1609-#endif
1610-
1611-#if defined HAVE_UNISTD_H || defined _LIBC
1612-# include <unistd.h>
1613-#endif
1614-
1615-#include "gettext.h"
1616-#include "gettextP.h"
1617-#ifdef _LIBC
1618-# include <libintl.h>
1619-#else
1620-# include "libgettext.h"
1621-#endif
1622-#include "hash-string.h"
1623-
1624-/* @@ end of prolog @@ */
1625-
1626-#ifdef _LIBC
1627-/* Rename the non ANSI C functions.  This is required by the standard
1628-   because some ANSI C functions will require linking with this object
1629-   file and the name space must not be polluted.  */
1630-# define getcwd __getcwd
1631-# define stpcpy __stpcpy
1632-#else
1633-# if !defined HAVE_GETCWD
1634-char *getwd ();
1635-#  define getcwd(buf, max) getwd (buf)
1636-# else
1637-char *getcwd ();
1638-# endif
1639-# ifndef HAVE_STPCPY
1640-static char *stpcpy PARAMS ((char *dest, const char *src));
1641-# endif
1642-#endif
1643-
1644-/* Amount to increase buffer size by in each try.  */
1645-#define PATH_INCR 32
1646-
1647-/* The following is from pathmax.h.  */
1648-/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define
1649-   PATH_MAX but might cause redefinition warnings when sys/param.h is
1650-   later included (as on MORE/BSD 4.3).  */
1651-#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__))
1652-# include <limits.h>
1653-#endif
1654-
1655-#ifndef _POSIX_PATH_MAX
1656-# define _POSIX_PATH_MAX 255
1657-#endif
1658-
1659-#if !defined(PATH_MAX) && defined(_PC_PATH_MAX)
1660-# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX))
1661-#endif
1662-
1663-/* Don't include sys/param.h if it already has been.  */
1664-#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN)
1665-# include <sys/param.h>
1666-#endif
1667-
1668-#if !defined(PATH_MAX) && defined(MAXPATHLEN)
1669-# define PATH_MAX MAXPATHLEN
1670-#endif
1671-
1672-#ifndef PATH_MAX
1673-# define PATH_MAX _POSIX_PATH_MAX
1674-#endif
1675-
1676-/* XPG3 defines the result of `setlocale (category, NULL)' as:
1677-   ``Directs `setlocale()' to query `category' and return the current
1678-     setting of `local'.''
1679-   However it does not specify the exact format.  And even worse: POSIX
1680-   defines this not at all.  So we can use this feature only on selected
1681-   system (e.g. those using GNU C Library).  */
1682-#ifdef _LIBC
1683-# define HAVE_LOCALE_NULL
1684-#endif
1685-
1686-/* Name of the default domain used for gettext(3) prior any call to
1687-   textdomain(3).  The default value for this is "messages".  */
1688-const char _nl_default_default_domain[] = "messages";
1689-
1690-/* Value used as the default domain for gettext(3).  */
1691-const char *_nl_current_default_domain = _nl_default_default_domain;
1692-
1693-/* Contains the default location of the message catalogs.  */
1694-const char _nl_default_dirname[] = GNULOCALEDIR;
1695-
1696-/* List with bindings of specific domains created by bindtextdomain()
1697-   calls.  */
1698-struct binding *_nl_domain_bindings;
1699-
1700-/* Prototypes for local functions.  */
1701-static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file,
1702-			       const char *msgid));
1703-static const char *category_to_name PARAMS ((int category));
1704-static const char *guess_category_value PARAMS ((int category,
1705-						 const char *categoryname));
1706-
1707-
1708-/* For those loosing systems which don't have `alloca' we have to add
1709-   some additional code emulating it.  */
1710-#ifdef HAVE_ALLOCA
1711-/* Nothing has to be done.  */
1712-# define ADD_BLOCK(list, address) /* nothing */
1713-# define FREE_BLOCKS(list) /* nothing */
1714-#else
1715-struct block_list
1716-{
1717-  void *address;
1718-  struct block_list *next;
1719-};
1720-# define ADD_BLOCK(list, addr)						      \
1721-  do {									      \
1722-    struct block_list *newp = (struct block_list *) malloc (sizeof (*newp));  \
1723-    /* If we cannot get a free block we cannot add the new element to	      \
1724-       the list.  */							      \
1725-    if (newp != NULL) {							      \
1726-      newp->address = (addr);						      \
1727-      newp->next = (list);						      \
1728-      (list) = newp;							      \
1729-    }									      \
1730-  } while (0)
1731-# define FREE_BLOCKS(list)						      \
1732-  do {									      \
1733-    while (list != NULL) {						      \
1734-      struct block_list *old = list;					      \
1735-      list = list->next;						      \
1736-      free (old);							      \
1737-    }									      \
1738-  } while (0)
1739-# undef alloca
1740-# define alloca(size) (malloc (size))
1741-#endif	/* have alloca */
1742-
1743-
1744-/* Names for the libintl functions are a problem.  They must not clash
1745-   with existing names and they should follow ANSI C.  But this source
1746-   code is also used in GNU C Library where the names have a __
1747-   prefix.  So we have to make a difference here.  */
1748-#ifdef _LIBC
1749-# define DCGETTEXT __dcgettext
1750-#else
1751-# define DCGETTEXT dcgettext__
1752-#endif
1753-
1754-/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
1755-   locale.  */
1756-char *
1757-DCGETTEXT (domainname, msgid, category)
1758-     const char *domainname;
1759-     const char *msgid;
1760-     int category;
1761-{
1762-#ifndef HAVE_ALLOCA
1763-  struct block_list *block_list = NULL;
1764-#endif
1765-  struct loaded_l10nfile *domain;
1766-  struct binding *binding;
1767-  const char *categoryname;
1768-  const char *categoryvalue;
1769-  char *dirname, *xdomainname;
1770-  char *single_locale;
1771-  char *retval;
1772-  int saved_errno = errno;
1773-
1774-  /* If no real MSGID is given return NULL.  */
1775-  if (msgid == NULL)
1776-    return NULL;
1777-
1778-  /* If DOMAINNAME is NULL, we are interested in the default domain.  If
1779-     CATEGORY is not LC_MESSAGES this might not make much sense but the
1780-     defintion left this undefined.  */
1781-  if (domainname == NULL)
1782-    domainname = _nl_current_default_domain;
1783-
1784-  /* First find matching binding.  */
1785-  for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
1786-    {
1787-      int compare = strcmp (domainname, binding->domainname);
1788-      if (compare == 0)
1789-	/* We found it!  */
1790-	break;
1791-      if (compare < 0)
1792-	{
1793-	  /* It is not in the list.  */
1794-	  binding = NULL;
1795-	  break;
1796-	}
1797-    }
1798-
1799-  if (binding == NULL)
1800-    dirname = (char *) _nl_default_dirname;
1801-  else if (binding->dirname[0] == '/')
1802-    dirname = binding->dirname;
1803-  else
1804-    {
1805-      /* We have a relative path.  Make it absolute now.  */
1806-      size_t dirname_len = strlen (binding->dirname) + 1;
1807-      size_t path_max;
1808-      char *ret;
1809-
1810-      path_max = (unsigned) PATH_MAX;
1811-      path_max += 2;		/* The getcwd docs say to do this.  */
1812-
1813-      dirname = (char *) alloca (path_max + dirname_len);
1814-      ADD_BLOCK (block_list, dirname);
1815-
1816-      __set_errno (0);
1817-      while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE)
1818-	{
1819-	  path_max += PATH_INCR;
1820-	  dirname = (char *) alloca (path_max + dirname_len);
1821-	  ADD_BLOCK (block_list, dirname);
1822-	  __set_errno (0);
1823-	}
1824-
1825-      if (ret == NULL)
1826-	{
1827-	  /* We cannot get the current working directory.  Don't signal an
1828-	     error but simply return the default string.  */
1829-	  FREE_BLOCKS (block_list);
1830-	  __set_errno (saved_errno);
1831-	  return (char *) msgid;
1832-	}
1833-
1834-      stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname);
1835-    }
1836-
1837-  /* Now determine the symbolic name of CATEGORY and its value.  */
1838-  categoryname = category_to_name (category);
1839-  categoryvalue = guess_category_value (category, categoryname);
1840-
1841-  xdomainname = (char *) alloca (strlen (categoryname)
1842-				 + strlen (domainname) + 5);
1843-  ADD_BLOCK (block_list, xdomainname);
1844-
1845-  stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"),
1846-		  domainname),
1847-	  ".mo");
1848-
1849-  /* Creating working area.  */
1850-  single_locale = (char *) alloca (strlen (categoryvalue) + 1);
1851-  ADD_BLOCK (block_list, single_locale);
1852-
1853-
1854-  /* Search for the given string.  This is a loop because we perhaps
1855-     got an ordered list of languages to consider for th translation.  */
1856-  while (1)
1857-    {
1858-      /* Make CATEGORYVALUE point to the next element of the list.  */
1859-      while (categoryvalue[0] != '\0' && categoryvalue[0] == ':')
1860-	++categoryvalue;
1861-      if (categoryvalue[0] == '\0')
1862-	{
1863-	  /* The whole contents of CATEGORYVALUE has been searched but
1864-	     no valid entry has been found.  We solve this situation
1865-	     by implicitly appending a "C" entry, i.e. no translation
1866-	     will take place.  */
1867-	  single_locale[0] = 'C';
1868-	  single_locale[1] = '\0';
1869-	}
1870-      else
1871-	{
1872-	  char *cp = single_locale;
1873-	  while (categoryvalue[0] != '\0' && categoryvalue[0] != ':')
1874-	    *cp++ = *categoryvalue++;
1875-	  *cp = '\0';
1876-	}
1877-
1878-      /* If the current locale value is C (or POSIX) we don't load a
1879-	 domain.  Return the MSGID.  */
1880-      if (strcmp (single_locale, "C") == 0
1881-	  || strcmp (single_locale, "POSIX") == 0)
1882-	{
1883-	  FREE_BLOCKS (block_list);
1884-	  __set_errno (saved_errno);
1885-	  return (char *) msgid;
1886-	}
1887-
1888-
1889-      /* Find structure describing the message catalog matching the
1890-	 DOMAINNAME and CATEGORY.  */
1891-      domain = _nl_find_domain (dirname, single_locale, xdomainname);
1892-
1893-      if (domain != NULL)
1894-	{
1895-	  retval = find_msg (domain, msgid);
1896-
1897-	  if (retval == NULL)
1898-	    {
1899-	      int cnt;
1900-
1901-	      for (cnt = 0; domain->successor[cnt] != NULL; ++cnt)
1902-		{
1903-		  retval = find_msg (domain->successor[cnt], msgid);
1904-
1905-		  if (retval != NULL)
1906-		    break;
1907-		}
1908-	    }
1909-
1910-	  if (retval != NULL)
1911-	    {
1912-	      FREE_BLOCKS (block_list);
1913-	      __set_errno (saved_errno);
1914-	      return retval;
1915-	    }
1916-	}
1917-    }
1918-  /* NOTREACHED */
1919-}
1920-
1921-#ifdef _LIBC
1922-/* Alias for function name in GNU C Library.  */
1923-weak_alias (__dcgettext, dcgettext);
1924-#endif
1925-
1926-
1927-static char *
1928-find_msg (domain_file, msgid)
1929-     struct loaded_l10nfile *domain_file;
1930-     const char *msgid;
1931-{
1932-  size_t top, act, bottom;
1933-  struct loaded_domain *domain;
1934-
1935-  if (domain_file->decided == 0)
1936-    _nl_load_domain (domain_file);
1937-
1938-  if (domain_file->data == NULL)
1939-    return NULL;
1940-
1941-  domain = (struct loaded_domain *) domain_file->data;
1942-
1943-  /* Locate the MSGID and its translation.  */
1944-  if (domain->hash_size > 2 && domain->hash_tab != NULL)
1945-    {
1946-      /* Use the hashing table.  */
1947-      nls_uint32 len = strlen (msgid);
1948-      nls_uint32 hash_val = hash_string (msgid);
1949-      nls_uint32 idx = hash_val % domain->hash_size;
1950-      nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2));
1951-      nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]);
1952-
1953-      if (nstr == 0)
1954-	/* Hash table entry is empty.  */
1955-	return NULL;
1956-
1957-      if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len
1958-	  && strcmp (msgid,
1959-		     domain->data + W (domain->must_swap,
1960-				       domain->orig_tab[nstr - 1].offset)) == 0)
1961-	return (char *) domain->data + W (domain->must_swap,
1962-					  domain->trans_tab[nstr - 1].offset);
1963-
1964-      while (1)
1965-	{
1966-	  if (idx >= domain->hash_size - incr)
1967-	    idx -= domain->hash_size - incr;
1968-	  else
1969-	    idx += incr;
1970-
1971-	  nstr = W (domain->must_swap, domain->hash_tab[idx]);
1972-	  if (nstr == 0)
1973-	    /* Hash table entry is empty.  */
1974-	    return NULL;
1975-
1976-	  if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len
1977-	      && strcmp (msgid,
1978-			 domain->data + W (domain->must_swap,
1979-					   domain->orig_tab[nstr - 1].offset))
1980-	         == 0)
1981-	    return (char *) domain->data
1982-	      + W (domain->must_swap, domain->trans_tab[nstr - 1].offset);
1983-	}
1984-      /* NOTREACHED */
1985-    }
1986-
1987-  /* Now we try the default method:  binary search in the sorted
1988-     array of messages.  */
1989-  bottom = 0;
1990-  top = domain->nstrings;
1991-  while (bottom < top)
1992-    {
1993-      int cmp_val;
1994-
1995-      act = (bottom + top) / 2;
1996-      cmp_val = strcmp (msgid, domain->data
1997-			       + W (domain->must_swap,
1998-				    domain->orig_tab[act].offset));
1999-      if (cmp_val < 0)
2000-	top = act;
2001-      else if (cmp_val > 0)
2002-	bottom = act + 1;
2003-      else
2004-	break;
2005-    }
2006-
2007-  /* If an translation is found return this.  */
2008-  return bottom >= top ? NULL : (char *) domain->data
2009-                                + W (domain->must_swap,
2010-				     domain->trans_tab[act].offset);
2011-}
2012-
2013-
2014-/* Return string representation of locale CATEGORY.  */
2015-static const char *
2016-category_to_name (category)
2017-     int category;
2018-{
2019-  const char *retval;
2020-
2021-  switch (category)
2022-  {
2023-#ifdef LC_COLLATE
2024-  case LC_COLLATE:
2025-    retval = "LC_COLLATE";
2026-    break;
2027-#endif
2028-#ifdef LC_CTYPE
2029-  case LC_CTYPE:
2030-    retval = "LC_CTYPE";
2031-    break;
2032-#endif
2033-#ifdef LC_MONETARY
2034-  case LC_MONETARY:
2035-    retval = "LC_MONETARY";
2036-    break;
2037-#endif
2038-#ifdef LC_NUMERIC
2039-  case LC_NUMERIC:
2040-    retval = "LC_NUMERIC";
2041-    break;
2042-#endif
2043-#ifdef LC_TIME
2044-  case LC_TIME:
2045-    retval = "LC_TIME";
2046-    break;
2047-#endif
2048-#ifdef LC_MESSAGES
2049-  case LC_MESSAGES:
2050-    retval = "LC_MESSAGES";
2051-    break;
2052-#endif
2053-#ifdef LC_RESPONSE
2054-  case LC_RESPONSE:
2055-    retval = "LC_RESPONSE";
2056-    break;
2057-#endif
2058-#ifdef LC_ALL
2059-  case LC_ALL:
2060-    /* This might not make sense but is perhaps better than any other
2061-       value.  */
2062-    retval = "LC_ALL";
2063-    break;
2064-#endif
2065-  default:
2066-    /* If you have a better idea for a default value let me know.  */
2067-    retval = "LC_XXX";
2068-  }
2069-
2070-  return retval;
2071-}
2072-
2073-/* Guess value of current locale from value of the environment variables.  */
2074-static const char *
2075-guess_category_value (category, categoryname)
2076-     int category;
2077-     const char *categoryname;
2078-{
2079-  const char *retval;
2080-
2081-  /* The highest priority value is the `LANGUAGE' environment
2082-     variable.  This is a GNU extension.  */
2083-  retval = getenv ("LANGUAGE");
2084-  if (retval != NULL && retval[0] != '\0')
2085-    return retval;
2086-
2087-  /* `LANGUAGE' is not set.  So we have to proceed with the POSIX
2088-     methods of looking to `LC_ALL', `LC_xxx', and `LANG'.  On some
2089-     systems this can be done by the `setlocale' function itself.  */
2090-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL
2091-  return setlocale (category, NULL);
2092-#else
2093-  /* Setting of LC_ALL overwrites all other.  */
2094-  retval = getenv ("LC_ALL");
2095-  if (retval != NULL && retval[0] != '\0')
2096-    return retval;
2097-
2098-  /* Next comes the name of the desired category.  */
2099-  retval = getenv (categoryname);
2100-  if (retval != NULL && retval[0] != '\0')
2101-    return retval;
2102-
2103-  /* Last possibility is the LANG environment variable.  */
2104-  retval = getenv ("LANG");
2105-  if (retval != NULL && retval[0] != '\0')
2106-    return retval;
2107-
2108-  /* We use C as the default domain.  POSIX says this is implementation
2109-     defined.  */
2110-  return "C";
2111-#endif
2112-}
2113-
2114-/* @@ begin of epilog @@ */
2115-
2116-/* We don't want libintl.a to depend on any other library.  So we
2117-   avoid the non-standard function stpcpy.  In GNU C Library this
2118-   function is available, though.  Also allow the symbol HAVE_STPCPY
2119-   to be defined.  */
2120-#if !_LIBC && !HAVE_STPCPY
2121-static char *
2122-stpcpy (dest, src)
2123-     char *dest;
2124-     const char *src;
2125-{
2126-  while ((*dest++ = *src++) != '\0')
2127-    /* Do nothing. */ ;
2128-  return dest - 1;
2129-}
2130-#endif
2131diff -uprN clean/lrzsz-0.12.20/intl/dgettext.c lrzsz-0.12.20/intl/dgettext.c
2132--- clean/lrzsz-0.12.20/intl/dgettext.c	1998-04-26 14:20:52.000000000 +0100
2133+++ lrzsz-0.12.20/intl/dgettext.c	1970-01-01 01:00:00.000000000 +0100
2134@@ -1,59 +0,0 @@
2135-/* dgettext.c -- implementation of the dgettext(3) function
2136-   Copyright (C) 1995 Software Foundation, Inc.
2137-
2138-This program is free software; you can redistribute it and/or modify
2139-it under the terms of the GNU General Public License as published by
2140-the Free Software Foundation; either version 2, or (at your option)
2141-any later version.
2142-
2143-This program is distributed in the hope that it will be useful,
2144-but WITHOUT ANY WARRANTY; without even the implied warranty of
2145-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2146-GNU General Public License for more details.
2147-
2148-You should have received a copy of the GNU General Public License
2149-along with this program; if not, write to the Free Software
2150-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2151-
2152-#ifdef HAVE_CONFIG_H
2153-# include <config.h>
2154-#endif
2155-
2156-#if defined HAVE_LOCALE_H || defined _LIBC
2157-# include <locale.h>
2158-#endif
2159-
2160-#ifdef _LIBC
2161-# include <libintl.h>
2162-#else
2163-# include "libgettext.h"
2164-#endif
2165-
2166-/* @@ end of prolog @@ */
2167-
2168-/* Names for the libintl functions are a problem.  They must not clash
2169-   with existing names and they should follow ANSI C.  But this source
2170-   code is also used in GNU C Library where the names have a __
2171-   prefix.  So we have to make a difference here.  */
2172-#ifdef _LIBC
2173-# define DGETTEXT __dgettext
2174-# define DCGETTEXT __dcgettext
2175-#else
2176-# define DGETTEXT dgettext__
2177-# define DCGETTEXT dcgettext__
2178-#endif
2179-
2180-/* Look up MSGID in the DOMAINNAME message catalog of the current
2181-   LC_MESSAGES locale.  */
2182-char *
2183-DGETTEXT (domainname, msgid)
2184-     const char *domainname;
2185-     const char *msgid;
2186-{
2187-  return DCGETTEXT (domainname, msgid, LC_MESSAGES);
2188-}
2189-
2190-#ifdef _LIBC
2191-/* Alias for function name in GNU C Library.  */
2192-weak_alias (__dgettext, dgettext);
2193-#endif
2194diff -uprN clean/lrzsz-0.12.20/intl/explodename.c lrzsz-0.12.20/intl/explodename.c
2195--- clean/lrzsz-0.12.20/intl/explodename.c	1998-04-26 14:22:37.000000000 +0100
2196+++ lrzsz-0.12.20/intl/explodename.c	1970-01-01 01:00:00.000000000 +0100
2197@@ -1,181 +0,0 @@
2198-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
2199-   Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
2200-
2201-   This program is free software; you can redistribute it and/or modify
2202-   it under the terms of the GNU General Public License as published by
2203-   the Free Software Foundation; either version 2, or (at your option)
2204-   any later version.
2205-
2206-   This program is distributed in the hope that it will be useful,
2207-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2208-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2209-   GNU General Public License for more details.
2210-
2211-   You should have received a copy of the GNU General Public License
2212-   along with this program; if not, write to the Free Software Foundation,
2213-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2214-
2215-#ifdef HAVE_CONFIG_H
2216-# include <config.h>
2217-#endif
2218-
2219-#include <stdlib.h>
2220-#include <string.h>
2221-#include <sys/types.h>
2222-
2223-#include "loadinfo.h"
2224-
2225-/* On some strange systems still no definition of NULL is found.  Sigh!  */
2226-#ifndef NULL
2227-# if defined __STDC__ && __STDC__
2228-#  define NULL ((void *) 0)
2229-# else
2230-#  define NULL 0
2231-# endif
2232-#endif
2233-
2234-/* @@ end of prolog @@ */
2235-
2236-int
2237-_nl_explode_name (name, language, modifier, territory, codeset,
2238-		  normalized_codeset, special, sponsor, revision)
2239-     char *name;
2240-     const char **language;
2241-     const char **modifier;
2242-     const char **territory;
2243-     const char **codeset;
2244-     const char **normalized_codeset;
2245-     const char **special;
2246-     const char **sponsor;
2247-     const char **revision;
2248-{
2249-  enum { undecided, xpg, cen } syntax;
2250-  char *cp;
2251-  int mask;
2252-
2253-  *modifier = NULL;
2254-  *territory = NULL;
2255-  *codeset = NULL;
2256-  *normalized_codeset = NULL;
2257-  *special = NULL;
2258-  *sponsor = NULL;
2259-  *revision = NULL;
2260-
2261-  /* Now we determine the single parts of the locale name.  First
2262-     look for the language.  Termination symbols are `_' and `@' if
2263-     we use XPG4 style, and `_', `+', and `,' if we use CEN syntax.  */
2264-  mask = 0;
2265-  syntax = undecided;
2266-  *language = cp = name;
2267-  while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@'
2268-	 && cp[0] != '+' && cp[0] != ',')
2269-    ++cp;
2270-
2271-  if (*language == cp)
2272-    /* This does not make sense: language has to be specified.  Use
2273-       this entry as it is without exploding.  Perhaps it is an alias.  */
2274-    cp = strchr (*language, '\0');
2275-  else if (cp[0] == '_')
2276-    {
2277-      /* Next is the territory.  */
2278-      cp[0] = '\0';
2279-      *territory = ++cp;
2280-
2281-      while (cp[0] != '\0' && cp[0] != '.' && cp[0] != '@'
2282-	     && cp[0] != '+' && cp[0] != ',' && cp[0] != '_')
2283-	++cp;
2284-
2285-      mask |= TERRITORY;
2286-
2287-      if (cp[0] == '.')
2288-	{
2289-	  /* Next is the codeset.  */
2290-	  syntax = xpg;
2291-	  cp[0] = '\0';
2292-	  *codeset = ++cp;
2293-
2294-	  while (cp[0] != '\0' && cp[0] != '@')
2295-	    ++cp;
2296-
2297-	  mask |= XPG_CODESET;
2298-
2299-	  if (*codeset != cp && (*codeset)[0] != '\0')
2300-	    {
2301-	      *normalized_codeset = _nl_normalize_codeset (*codeset,
2302-							   cp - *codeset);
2303-	      if (strcmp (*codeset, *normalized_codeset) == 0)
2304-		free ((char *) *normalized_codeset);
2305-	      else
2306-		mask |= XPG_NORM_CODESET;
2307-	    }
2308-	}
2309-    }
2310-
2311-  if (cp[0] == '@' || (syntax != xpg && cp[0] == '+'))
2312-    {
2313-      /* Next is the modifier.  */
2314-      syntax = cp[0] == '@' ? xpg : cen;
2315-      cp[0] = '\0';
2316-      *modifier = ++cp;
2317-
2318-      while (syntax == cen && cp[0] != '\0' && cp[0] != '+'
2319-	     && cp[0] != ',' && cp[0] != '_')
2320-	++cp;
2321-
2322-      mask |= XPG_MODIFIER | CEN_AUDIENCE;
2323-    }
2324-
2325-  if (syntax != xpg && (cp[0] == '+' || cp[0] == ',' || cp[0] == '_'))
2326-    {
2327-      syntax = cen;
2328-
2329-      if (cp[0] == '+')
2330-	{
2331- 	  /* Next is special application (CEN syntax).  */
2332-	  cp[0] = '\0';
2333-	  *special = ++cp;
2334-
2335-	  while (cp[0] != '\0' && cp[0] != ',' && cp[0] != '_')
2336-	    ++cp;
2337-
2338-	  mask |= CEN_SPECIAL;
2339-	}
2340-
2341-      if (cp[0] == ',')
2342-	{
2343- 	  /* Next is sponsor (CEN syntax).  */
2344-	  cp[0] = '\0';
2345-	  *sponsor = ++cp;
2346-
2347-	  while (cp[0] != '\0' && cp[0] != '_')
2348-	    ++cp;
2349-
2350-	  mask |= CEN_SPONSOR;
2351-	}
2352-
2353-      if (cp[0] == '_')
2354-	{
2355- 	  /* Next is revision (CEN syntax).  */
2356-	  cp[0] = '\0';
2357-	  *revision = ++cp;
2358-
2359-	  mask |= CEN_REVISION;
2360-	}
2361-    }
2362-
2363-  /* For CEN syntax values it might be important to have the
2364-     separator character in the file name, not for XPG syntax.  */
2365-  if (syntax == xpg)
2366-    {
2367-      if (*territory != NULL && (*territory)[0] == '\0')
2368-	mask &= ~TERRITORY;
2369-
2370-      if (*codeset != NULL && (*codeset)[0] == '\0')
2371-	mask &= ~XPG_CODESET;
2372-
2373-      if (*modifier != NULL && (*modifier)[0] == '\0')
2374-	mask &= ~XPG_MODIFIER;
2375-    }
2376-
2377-  return mask;
2378-}
2379diff -uprN clean/lrzsz-0.12.20/intl/finddomain.c lrzsz-0.12.20/intl/finddomain.c
2380--- clean/lrzsz-0.12.20/intl/finddomain.c	1998-04-26 14:22:36.000000000 +0100
2381+++ lrzsz-0.12.20/intl/finddomain.c	1970-01-01 01:00:00.000000000 +0100
2382@@ -1,189 +0,0 @@
2383-/* Handle list of needed message catalogs
2384-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
2385-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
2386-
2387-   This program is free software; you can redistribute it and/or modify
2388-   it under the terms of the GNU General Public License as published by
2389-   the Free Software Foundation; either version 2, or (at your option)
2390-   any later version.
2391-
2392-   This program is distributed in the hope that it will be useful,
2393-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2394-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2395-   GNU General Public License for more details.
2396-
2397-   You should have received a copy of the GNU General Public License
2398-   along with this program; if not, write to the Free Software Foundation,
2399-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2400-
2401-#ifdef HAVE_CONFIG_H
2402-# include <config.h>
2403-#endif
2404-
2405-#include <ctype.h>
2406-#include <errno.h>
2407-#include <stdio.h>
2408-#include <sys/types.h>
2409-
2410-#if defined STDC_HEADERS || defined _LIBC
2411-# include <stdlib.h>
2412-#else
2413-# ifdef HAVE_MALLOC_H
2414-#  include <malloc.h>
2415-# else
2416-void free ();
2417-# endif
2418-#endif
2419-
2420-#if defined HAVE_STRING_H || defined _LIBC
2421-# include <string.h>
2422-#else
2423-# include <strings.h>
2424-# ifndef memcpy
2425-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
2426-# endif
2427-#endif
2428-#if !HAVE_STRCHR && !defined _LIBC
2429-# ifndef strchr
2430-#  define strchr index
2431-# endif
2432-#endif
2433-
2434-#if defined HAVE_UNISTD_H || defined _LIBC
2435-# include <unistd.h>
2436-#endif
2437-
2438-#include "gettext.h"
2439-#include "gettextP.h"
2440-#ifdef _LIBC
2441-# include <libintl.h>
2442-#else
2443-# include "libgettext.h"
2444-#endif
2445-
2446-/* @@ end of prolog @@ */
2447-/* List of already loaded domains.  */
2448-static struct loaded_l10nfile *_nl_loaded_domains;
2449-
2450-
2451-/* Return a data structure describing the message catalog described by
2452-   the DOMAINNAME and CATEGORY parameters with respect to the currently
2453-   established bindings.  */
2454-struct loaded_l10nfile *
2455-_nl_find_domain (dirname, locale, domainname)
2456-     const char *dirname;
2457-     char *locale;
2458-     const char *domainname;
2459-{
2460-  struct loaded_l10nfile *retval;
2461-  const char *language;
2462-  const char *modifier;
2463-  const char *territory;
2464-  const char *codeset;
2465-  const char *normalized_codeset;
2466-  const char *special;
2467-  const char *sponsor;
2468-  const char *revision;
2469-  const char *alias_value;
2470-  int mask;
2471-
2472-  /* LOCALE can consist of up to four recognized parts for the XPG syntax:
2473-
2474-		language[_territory[.codeset]][@modifier]
2475-
2476-     and six parts for the CEN syntax:
2477-
2478-	language[_territory][+audience][+special][,[sponsor][_revision]]
2479-
2480-     Beside the first all of them are allowed to be missing.  If the
2481-     full specified locale is not found, the less specific one are
2482-     looked for.  The various part will be stripped of according to
2483-     the following order:
2484-		(1) revision
2485-		(2) sponsor
2486-		(3) special
2487-		(4) codeset
2488-		(5) normalized codeset
2489-		(6) territory
2490-		(7) audience/modifier
2491-   */
2492-
2493-  /* If we have already tested for this locale entry there has to
2494-     be one data set in the list of loaded domains.  */
2495-  retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname,
2496-			       strlen (dirname) + 1, 0, locale, NULL, NULL,
2497-			       NULL, NULL, NULL, NULL, NULL, domainname, 0);
2498-  if (retval != NULL)
2499-    {
2500-      /* We know something about this locale.  */
2501-      int cnt;
2502-
2503-      if (retval->decided == 0)
2504-	_nl_load_domain (retval);
2505-
2506-      if (retval->data != NULL)
2507-	return retval;
2508-
2509-      for (cnt = 0; retval->successor[cnt] != NULL; ++cnt)
2510-	{
2511-	  if (retval->successor[cnt]->decided == 0)
2512-	    _nl_load_domain (retval->successor[cnt]);
2513-
2514-	  if (retval->successor[cnt]->data != NULL)
2515-	    break;
2516-	}
2517-      return cnt >= 0 ? retval : NULL;
2518-      /* NOTREACHED */
2519-    }
2520-
2521-  /* See whether the locale value is an alias.  If yes its value
2522-     *overwrites* the alias name.  No test for the original value is
2523-     done.  */
2524-  alias_value = _nl_expand_alias (locale);
2525-  if (alias_value != NULL)
2526-    {
2527-      size_t len = strlen (alias_value) + 1;
2528-      locale = (char *) malloc (len);
2529-      if (locale == NULL)
2530-	return NULL;
2531-
2532-      memcpy (locale, alias_value, len);
2533-    }
2534-
2535-  /* Now we determine the single parts of the locale name.  First
2536-     look for the language.  Termination symbols are `_' and `@' if
2537-     we use XPG4 style, and `_', `+', and `,' if we use CEN syntax.  */
2538-  mask = _nl_explode_name (locale, &language, &modifier, &territory,
2539-			   &codeset, &normalized_codeset, &special,
2540-			   &sponsor, &revision);
2541-
2542-  /* Create all possible locale entries which might be interested in
2543-     generalization.  */
2544-  retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname,
2545-			       strlen (dirname) + 1, mask, language, territory,
2546-			       codeset, normalized_codeset, modifier, special,
2547-			       sponsor, revision, domainname, 1);
2548-  if (retval == NULL)
2549-    /* This means we are out of core.  */
2550-    return NULL;
2551-
2552-  if (retval->decided == 0)
2553-    _nl_load_domain (retval);
2554-  if (retval->data == NULL)
2555-    {
2556-      int cnt;
2557-      for (cnt = 0; retval->successor[cnt] != NULL; ++cnt)
2558-	{
2559-	  if (retval->successor[cnt]->decided == 0)
2560-	    _nl_load_domain (retval->successor[cnt]);
2561-	  if (retval->successor[cnt]->data != NULL)
2562-	    break;
2563-	}
2564-    }
2565-
2566-  /* The room for an alias was dynamically allocated.  Free it now.  */
2567-  if (alias_value != NULL)
2568-    free (locale);
2569-
2570-  return retval;
2571-}
2572diff -uprN clean/lrzsz-0.12.20/intl/gettext.c lrzsz-0.12.20/intl/gettext.c
2573--- clean/lrzsz-0.12.20/intl/gettext.c	1998-04-26 14:22:36.000000000 +0100
2574+++ lrzsz-0.12.20/intl/gettext.c	1970-01-01 01:00:00.000000000 +0100
2575@@ -1,70 +0,0 @@
2576-/* Implementation of gettext(3) function
2577-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
2578-
2579-   This program is free software; you can redistribute it and/or modify
2580-   it under the terms of the GNU General Public License as published by
2581-   the Free Software Foundation; either version 2, or (at your option)
2582-   any later version.
2583-
2584-   This program is distributed in the hope that it will be useful,
2585-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2586-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2587-   GNU General Public License for more details.
2588-
2589-   You should have received a copy of the GNU General Public License
2590-   along with this program; if not, write to the Free Software Foundation,
2591-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2592-
2593-#ifdef HAVE_CONFIG_H
2594-# include <config.h>
2595-#endif
2596-
2597-#ifdef _LIBC
2598-# define __need_NULL
2599-# include <stddef.h>
2600-#else
2601-# ifdef STDC_HEADERS
2602-#  include <stdlib.h>		/* Just for NULL.  */
2603-# else
2604-#  ifdef HAVE_STRING_H
2605-#   include <string.h>
2606-#  else
2607-#   define NULL ((void *) 0)
2608-#  endif
2609-# endif
2610-#endif
2611-
2612-#ifdef _LIBC
2613-# include <libintl.h>
2614-#else
2615-# include "libgettext.h"
2616-#endif
2617-
2618-/* @@ end of prolog @@ */
2619-
2620-/* Names for the libintl functions are a problem.  They must not clash
2621-   with existing names and they should follow ANSI C.  But this source
2622-   code is also used in GNU C Library where the names have a __
2623-   prefix.  So we have to make a difference here.  */
2624-#ifdef _LIBC
2625-# define GETTEXT __gettext
2626-# define DGETTEXT __dgettext
2627-#else
2628-# define GETTEXT gettext__
2629-# define DGETTEXT dgettext__
2630-#endif
2631-
2632-/* Look up MSGID in the current default message catalog for the current
2633-   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
2634-   text).  */
2635-char *
2636-GETTEXT (msgid)
2637-     const char *msgid;
2638-{
2639-  return DGETTEXT (NULL, msgid);
2640-}
2641-
2642-#ifdef _LIBC
2643-/* Alias for function name in GNU C Library.  */
2644-weak_alias (__gettext, gettext);
2645-#endif
2646diff -uprN clean/lrzsz-0.12.20/intl/gettext.h lrzsz-0.12.20/intl/gettext.h
2647--- clean/lrzsz-0.12.20/intl/gettext.h	1998-04-26 14:22:35.000000000 +0100
2648+++ lrzsz-0.12.20/intl/gettext.h	1970-01-01 01:00:00.000000000 +0100
2649@@ -1,105 +0,0 @@
2650-/* Internal header for GNU gettext internationalization functions
2651-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
2652-
2653-   This program is free software; you can redistribute it and/or modify
2654-   it under the terms of the GNU General Public License as published by
2655-   the Free Software Foundation; either version 2, or (at your option)
2656-   any later version.
2657-
2658-   This program is distributed in the hope that it will be useful,
2659-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2660-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2661-   GNU General Public License for more details.
2662-
2663-   You should have received a copy of the GNU Library General Public
2664-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
2665-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
2666-   Boston, MA 02111-1307, USA.  */
2667-
2668-#ifndef _GETTEXT_H
2669-#define _GETTEXT_H 1
2670-
2671-#include <stdio.h>
2672-
2673-#if HAVE_LIMITS_H || _LIBC
2674-# include <limits.h>
2675-#endif
2676-
2677-/* @@ end of prolog @@ */
2678-
2679-/* The magic number of the GNU message catalog format.  */
2680-#define _MAGIC 0x950412de
2681-#define _MAGIC_SWAPPED 0xde120495
2682-
2683-/* Revision number of the currently used .mo (binary) file format.  */
2684-#define MO_REVISION_NUMBER 0
2685-
2686-/* The following contortions are an attempt to use the C preprocessor
2687-   to determine an unsigned integral type that is 32 bits wide.  An
2688-   alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but
2689-   doing that would require that the configure script compile and *run*
2690-   the resulting executable.  Locally running cross-compiled executables
2691-   is usually not possible.  */
2692-
2693-#if __STDC__
2694-# define UINT_MAX_32_BITS 4294967295U
2695-#else
2696-# define UINT_MAX_32_BITS 0xFFFFFFFF
2697-#endif
2698-
2699-/* If UINT_MAX isn't defined, assume it's a 32-bit type.
2700-   This should be valid for all systems GNU cares about because
2701-   that doesn't include 16-bit systems, and only modern systems
2702-   (that certainly have <limits.h>) have 64+-bit integral types.  */
2703-
2704-#ifndef UINT_MAX
2705-# define UINT_MAX UINT_MAX_32_BITS
2706-#endif
2707-
2708-#if UINT_MAX == UINT_MAX_32_BITS
2709-typedef unsigned nls_uint32;
2710-#else
2711-# if USHRT_MAX == UINT_MAX_32_BITS
2712-typedef unsigned short nls_uint32;
2713-# else
2714-#  if ULONG_MAX == UINT_MAX_32_BITS
2715-typedef unsigned long nls_uint32;
2716-#  else
2717-  /* The following line is intended to throw an error.  Using #error is
2718-     not portable enough.  */
2719-  "Cannot determine unsigned 32-bit data type."
2720-#  endif
2721-# endif
2722-#endif
2723-
2724-
2725-/* Header for binary .mo file format.  */
2726-struct mo_file_header
2727-{
2728-  /* The magic number.  */
2729-  nls_uint32 magic;
2730-  /* The revision number of the file format.  */
2731-  nls_uint32 revision;
2732-  /* The number of strings pairs.  */
2733-  nls_uint32 nstrings;
2734-  /* Offset of table with start offsets of original strings.  */
2735-  nls_uint32 orig_tab_offset;
2736-  /* Offset of table with start offsets of translation strings.  */
2737-  nls_uint32 trans_tab_offset;
2738-  /* Size of hashing table.  */
2739-  nls_uint32 hash_tab_size;
2740-  /* Offset of first hashing entry.  */
2741-  nls_uint32 hash_tab_offset;
2742-};
2743-
2744-struct string_desc
2745-{
2746-  /* Length of addressed string.  */
2747-  nls_uint32 length;
2748-  /* Offset of string in file.  */
2749-  nls_uint32 offset;
2750-};
2751-
2752-/* @@ begin of epilog @@ */
2753-
2754-#endif	/* gettext.h  */
2755diff -uprN clean/lrzsz-0.12.20/intl/gettextP.h lrzsz-0.12.20/intl/gettextP.h
2756--- clean/lrzsz-0.12.20/intl/gettextP.h	1998-04-26 14:22:35.000000000 +0100
2757+++ lrzsz-0.12.20/intl/gettextP.h	1970-01-01 01:00:00.000000000 +0100
2758@@ -1,73 +0,0 @@
2759-/* Header describing internals of gettext library
2760-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
2761-
2762-   This program is free software; you can redistribute it and/or modify
2763-   it under the terms of the GNU General Public License as published by
2764-   the Free Software Foundation; either version 2, or (at your option)
2765-   any later version.
2766-
2767-   This program is distributed in the hope that it will be useful,
2768-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2769-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2770-   GNU General Public License for more details.
2771-
2772-   You should have received a copy of the GNU General Public License
2773-   along with this program; if not, write to the Free Software Foundation,
2774-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2775-
2776-#ifndef _GETTEXTP_H
2777-#define _GETTEXTP_H
2778-
2779-#include "loadinfo.h"
2780-
2781-/* @@ end of prolog @@ */
2782-
2783-#ifndef PARAMS
2784-# if __STDC__
2785-#  define PARAMS(args) args
2786-# else
2787-#  define PARAMS(args) ()
2788-# endif
2789-#endif
2790-
2791-#ifndef W
2792-# define W(flag, data) ((flag) ? SWAP (data) : (data))
2793-#endif
2794-
2795-
2796-static nls_uint32 SWAP PARAMS ((nls_uint32 i));
2797-
2798-static inline nls_uint32
2799-SWAP (i)
2800-     nls_uint32 i;
2801-{
2802-  return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
2803-}
2804-
2805-
2806-struct loaded_domain
2807-{
2808-  const char *data;
2809-  int must_swap;
2810-  nls_uint32 nstrings;
2811-  struct string_desc *orig_tab;
2812-  struct string_desc *trans_tab;
2813-  nls_uint32 hash_size;
2814-  nls_uint32 *hash_tab;
2815-};
2816-
2817-struct binding
2818-{
2819-  struct binding *next;
2820-  char *domainname;
2821-  char *dirname;
2822-};
2823-
2824-struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
2825-						 char *__locale,
2826-						 const char *__domainname));
2827-void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain));
2828-
2829-/* @@ begin of epilog @@ */
2830-
2831-#endif /* gettextP.h  */
2832diff -uprN clean/lrzsz-0.12.20/intl/hash-string.h lrzsz-0.12.20/intl/hash-string.h
2833--- clean/lrzsz-0.12.20/intl/hash-string.h	1998-04-26 14:22:36.000000000 +0100
2834+++ lrzsz-0.12.20/intl/hash-string.h	1970-01-01 01:00:00.000000000 +0100
2835@@ -1,63 +0,0 @@
2836-/* Implements a string hashing function.
2837-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
2838-
2839-   This program is free software; you can redistribute it and/or modify
2840-   it under the terms of the GNU General Public License as published by
2841-   the Free Software Foundation; either version 2, or (at your option)
2842-   any later version.
2843-
2844-   This program is distributed in the hope that it will be useful,
2845-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2846-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2847-   GNU General Public License for more details.
2848-
2849-   You should have received a copy of the GNU Library General Public
2850-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
2851-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
2852-   Boston, MA 02111-1307, USA.  */
2853-
2854-#ifdef HAVE_VALUES_H
2855-# include <values.h>
2856-#endif
2857-
2858-/* @@ end of prolog @@ */
2859-
2860-#ifndef PARAMS
2861-# if __STDC__
2862-#  define PARAMS(Args) Args
2863-# else
2864-#  define PARAMS(Args) ()
2865-# endif
2866-#endif
2867-
2868-/* We assume to have `unsigned long int' value with at least 32 bits.  */
2869-#define HASHWORDBITS 32
2870-
2871-
2872-/* Defines the so called `hashpjw' function by P.J. Weinberger
2873-   [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
2874-   1986, 1987 Bell Telephone Laboratories, Inc.]  */
2875-static unsigned long hash_string PARAMS ((const char *__str_param));
2876-
2877-static inline unsigned long
2878-hash_string (str_param)
2879-     const char *str_param;
2880-{
2881-  unsigned long int hval, g;
2882-  const char *str = str_param;
2883-
2884-  /* Compute the hash value for the given string.  */
2885-  hval = 0;
2886-  while (*str != '\0')
2887-    {
2888-      hval <<= 4;
2889-      hval += (unsigned long) *str++;
2890-      g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4));
2891-      if (g != 0)
2892-	{
2893-	  hval ^= g >> (HASHWORDBITS - 8);
2894-	  hval ^= g;
2895-	}
2896-    }
2897-  return hval;
2898-}
2899diff -uprN clean/lrzsz-0.12.20/intl/intl-compat.c lrzsz-0.12.20/intl/intl-compat.c
2900--- clean/lrzsz-0.12.20/intl/intl-compat.c	1998-04-26 14:20:52.000000000 +0100
2901+++ lrzsz-0.12.20/intl/intl-compat.c	1970-01-01 01:00:00.000000000 +0100
2902@@ -1,76 +0,0 @@
2903-/* intl-compat.c - Stub functions to call gettext functions from GNU gettext
2904-   Library.
2905-   Copyright (C) 1995 Software Foundation, Inc.
2906-
2907-This program is free software; you can redistribute it and/or modify
2908-it under the terms of the GNU General Public License as published by
2909-the Free Software Foundation; either version 2, or (at your option)
2910-any later version.
2911-
2912-This program is distributed in the hope that it will be useful,
2913-but WITHOUT ANY WARRANTY; without even the implied warranty of
2914-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2915-GNU General Public License for more details.
2916-
2917-You should have received a copy of the GNU General Public License
2918-along with this program; if not, write to the Free Software
2919-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
2920-
2921-#ifdef HAVE_CONFIG_H
2922-# include <config.h>
2923-#endif
2924-
2925-#include "libgettext.h"
2926-
2927-/* @@ end of prolog @@ */
2928-
2929-
2930-#undef gettext
2931-#undef dgettext
2932-#undef dcgettext
2933-#undef textdomain
2934-#undef bindtextdomain
2935-
2936-
2937-char *
2938-bindtextdomain (domainname, dirname)
2939-     const char *domainname;
2940-     const char *dirname;
2941-{
2942-  return bindtextdomain__ (domainname, dirname);
2943-}
2944-
2945-
2946-char *
2947-dcgettext (domainname, msgid, category)
2948-     const char *domainname;
2949-     const char *msgid;
2950-     int category;
2951-{
2952-  return dcgettext__ (domainname, msgid, category);
2953-}
2954-
2955-
2956-char *
2957-dgettext (domainname, msgid)
2958-     const char *domainname;
2959-     const char *msgid;
2960-{
2961-  return dgettext__ (domainname, msgid);
2962-}
2963-
2964-
2965-char *
2966-gettext (msgid)
2967-     const char *msgid;
2968-{
2969-  return gettext__ (msgid);
2970-}
2971-
2972-
2973-char *
2974-textdomain (domainname)
2975-     const char *domainname;
2976-{
2977-  return textdomain__ (domainname);
2978-}
2979diff -uprN clean/lrzsz-0.12.20/intl/l10nflist.c lrzsz-0.12.20/intl/l10nflist.c
2980--- clean/lrzsz-0.12.20/intl/l10nflist.c	1998-04-26 14:22:37.000000000 +0100
2981+++ lrzsz-0.12.20/intl/l10nflist.c	1970-01-01 01:00:00.000000000 +0100
2982@@ -1,409 +0,0 @@
2983-/* Handle list of needed message catalogs
2984-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
2985-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
2986-
2987-   This program is free software; you can redistribute it and/or modify
2988-   it under the terms of the GNU General Public License as published by
2989-   the Free Software Foundation; either version 2, or (at your option)
2990-   any later version.
2991-
2992-   This program is distributed in the hope that it will be useful,
2993-   but WITHOUT ANY WARRANTY; without even the implied warranty of
2994-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2995-   GNU General Public License for more details.
2996-
2997-   You should have received a copy of the GNU General Public License
2998-   along with this program; if not, write to the Free Software Foundation,
2999-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3000-
3001-#ifdef HAVE_CONFIG_H
3002-# include <config.h>
3003-#endif
3004-
3005-
3006-#if defined HAVE_STRING_H || defined _LIBC
3007-# ifndef _GNU_SOURCE
3008-#  define _GNU_SOURCE	1
3009-# endif
3010-# include <string.h>
3011-#else
3012-# include <strings.h>
3013-# ifndef memcpy
3014-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
3015-# endif
3016-#endif
3017-#if !HAVE_STRCHR && !defined _LIBC
3018-# ifndef strchr
3019-#  define strchr index
3020-# endif
3021-#endif
3022-
3023-#if defined _LIBC || defined HAVE_ARGZ_H
3024-# include <argz.h>
3025-#endif
3026-#include <ctype.h>
3027-#include <sys/types.h>
3028-
3029-#if defined STDC_HEADERS || defined _LIBC
3030-# include <stdlib.h>
3031-#endif
3032-
3033-#include "loadinfo.h"
3034-
3035-/* On some strange systems still no definition of NULL is found.  Sigh!  */
3036-#ifndef NULL
3037-# if defined __STDC__ && __STDC__
3038-#  define NULL ((void *) 0)
3039-# else
3040-#  define NULL 0
3041-# endif
3042-#endif
3043-
3044-/* @@ end of prolog @@ */
3045-
3046-#ifdef _LIBC
3047-/* Rename the non ANSI C functions.  This is required by the standard
3048-   because some ANSI C functions will require linking with this object
3049-   file and the name space must not be polluted.  */
3050-# define stpcpy(dest, src) __stpcpy(dest, src)
3051-#else
3052-# ifndef HAVE_STPCPY
3053-static char *stpcpy PARAMS ((char *dest, const char *src));
3054-# endif
3055-#endif
3056-
3057-/* Define function which are usually not available.  */
3058-
3059-#if !defined _LIBC && !defined HAVE___ARGZ_COUNT
3060-/* Returns the number of strings in ARGZ.  */
3061-static size_t argz_count__ PARAMS ((const char *argz, size_t len));
3062-
3063-static size_t
3064-argz_count__ (argz, len)
3065-     const char *argz;
3066-     size_t len;
3067-{
3068-  size_t count = 0;
3069-  while (len > 0)
3070-    {
3071-      size_t part_len = strlen (argz);
3072-      argz += part_len + 1;
3073-      len -= part_len + 1;
3074-      count++;
3075-    }
3076-  return count;
3077-}
3078-# undef __argz_count
3079-# define __argz_count(argz, len) argz_count__ (argz, len)
3080-#endif	/* !_LIBC && !HAVE___ARGZ_COUNT */
3081-
3082-#if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY
3083-/* Make '\0' separated arg vector ARGZ printable by converting all the '\0's
3084-   except the last into the character SEP.  */
3085-static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep));
3086-
3087-static void
3088-argz_stringify__ (argz, len, sep)
3089-     char *argz;
3090-     size_t len;
3091-     int sep;
3092-{
3093-  while (len > 0)
3094-    {
3095-      size_t part_len = strlen (argz);
3096-      argz += part_len;
3097-      len -= part_len + 1;
3098-      if (len > 0)
3099-	*argz++ = sep;
3100-    }
3101-}
3102-# undef __argz_stringify
3103-# define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep)
3104-#endif	/* !_LIBC && !HAVE___ARGZ_STRINGIFY */
3105-
3106-#if !defined _LIBC && !defined HAVE___ARGZ_NEXT
3107-static char *argz_next__ PARAMS ((char *argz, size_t argz_len,
3108-				  const char *entry));
3109-
3110-static char *
3111-argz_next__ (argz, argz_len, entry)
3112-     char *argz;
3113-     size_t argz_len;
3114-     const char *entry;
3115-{
3116-  if (entry)
3117-    {
3118-      if (entry < argz + argz_len)
3119-        entry = strchr (entry, '\0') + 1;
3120-
3121-      return entry >= argz + argz_len ? NULL : (char *) entry;
3122-    }
3123-  else
3124-    if (argz_len > 0)
3125-      return argz;
3126-    else
3127-      return 0;
3128-}
3129-# undef __argz_next
3130-# define __argz_next(argz, len, entry) argz_next__ (argz, len, entry)
3131-#endif	/* !_LIBC && !HAVE___ARGZ_NEXT */
3132-
3133-
3134-/* Return number of bits set in X.  */
3135-static int pop PARAMS ((int x));
3136-
3137-static inline int
3138-pop (x)
3139-     int x;
3140-{
3141-  /* We assume that no more than 16 bits are used.  */
3142-  x = ((x & ~0x5555) >> 1) + (x & 0x5555);
3143-  x = ((x & ~0x3333) >> 2) + (x & 0x3333);
3144-  x = ((x >> 4) + x) & 0x0f0f;
3145-  x = ((x >> 8) + x) & 0xff;
3146-
3147-  return x;
3148-}
3149-
3150-
3151-struct loaded_l10nfile *
3152-_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
3153-		    territory, codeset, normalized_codeset, modifier, special,
3154-		    sponsor, revision, filename, do_allocate)
3155-     struct loaded_l10nfile **l10nfile_list;
3156-     const char *dirlist;
3157-     size_t dirlist_len;
3158-     int mask;
3159-     const char *language;
3160-     const char *territory;
3161-     const char *codeset;
3162-     const char *normalized_codeset;
3163-     const char *modifier;
3164-     const char *special;
3165-     const char *sponsor;
3166-     const char *revision;
3167-     const char *filename;
3168-     int do_allocate;
3169-{
3170-  char *abs_filename;
3171-  struct loaded_l10nfile *last = NULL;
3172-  struct loaded_l10nfile *retval;
3173-  char *cp;
3174-  size_t entries;
3175-  int cnt;
3176-
3177-  /* Allocate room for the full file name.  */
3178-  abs_filename = (char *) malloc (dirlist_len
3179-				  + strlen (language)
3180-				  + ((mask & TERRITORY) != 0
3181-				     ? strlen (territory) + 1 : 0)
3182-				  + ((mask & XPG_CODESET) != 0
3183-				     ? strlen (codeset) + 1 : 0)
3184-				  + ((mask & XPG_NORM_CODESET) != 0
3185-				     ? strlen (normalized_codeset) + 1 : 0)
3186-				  + (((mask & XPG_MODIFIER) != 0
3187-				      || (mask & CEN_AUDIENCE) != 0)
3188-				     ? strlen (modifier) + 1 : 0)
3189-				  + ((mask & CEN_SPECIAL) != 0
3190-				     ? strlen (special) + 1 : 0)
3191-				  + (((mask & CEN_SPONSOR) != 0
3192-				      || (mask & CEN_REVISION) != 0)
3193-				     ? (1 + ((mask & CEN_SPONSOR) != 0
3194-					     ? strlen (sponsor) + 1 : 0)
3195-					+ ((mask & CEN_REVISION) != 0
3196-					   ? strlen (revision) + 1 : 0)) : 0)
3197-				  + 1 + strlen (filename) + 1);
3198-
3199-  if (abs_filename == NULL)
3200-    return NULL;
3201-
3202-  retval = NULL;
3203-  last = NULL;
3204-
3205-  /* Construct file name.  */
3206-  memcpy (abs_filename, dirlist, dirlist_len);
3207-  __argz_stringify (abs_filename, dirlist_len, ':');
3208-  cp = abs_filename + (dirlist_len - 1);
3209-  *cp++ = '/';
3210-  cp = stpcpy (cp, language);
3211-
3212-  if ((mask & TERRITORY) != 0)
3213-    {
3214-      *cp++ = '_';
3215-      cp = stpcpy (cp, territory);
3216-    }
3217-  if ((mask & XPG_CODESET) != 0)
3218-    {
3219-      *cp++ = '.';
3220-      cp = stpcpy (cp, codeset);
3221-    }
3222-  if ((mask & XPG_NORM_CODESET) != 0)
3223-    {
3224-      *cp++ = '.';
3225-      cp = stpcpy (cp, normalized_codeset);
3226-    }
3227-  if ((mask & (XPG_MODIFIER | CEN_AUDIENCE)) != 0)
3228-    {
3229-      /* This component can be part of both syntaces but has different
3230-	 leading characters.  For CEN we use `+', else `@'.  */
3231-      *cp++ = (mask & CEN_AUDIENCE) != 0 ? '+' : '@';
3232-      cp = stpcpy (cp, modifier);
3233-    }
3234-  if ((mask & CEN_SPECIAL) != 0)
3235-    {
3236-      *cp++ = '+';
3237-      cp = stpcpy (cp, special);
3238-    }
3239-  if ((mask & (CEN_SPONSOR | CEN_REVISION)) != 0)
3240-    {
3241-      *cp++ = ',';
3242-      if ((mask & CEN_SPONSOR) != 0)
3243-	cp = stpcpy (cp, sponsor);
3244-      if ((mask & CEN_REVISION) != 0)
3245-	{
3246-	  *cp++ = '_';
3247-	  cp = stpcpy (cp, revision);
3248-	}
3249-    }
3250-
3251-  *cp++ = '/';
3252-  stpcpy (cp, filename);
3253-
3254-  /* Look in list of already loaded domains whether it is already
3255-     available.  */
3256-  last = NULL;
3257-  for (retval = *l10nfile_list; retval != NULL; retval = retval->next)
3258-    if (retval->filename != NULL)
3259-      {
3260-	int compare = strcmp (retval->filename, abs_filename);
3261-	if (compare == 0)
3262-	  /* We found it!  */
3263-	  break;
3264-	if (compare < 0)
3265-	  {
3266-	    /* It's not in the list.  */
3267-	    retval = NULL;
3268-	    break;
3269-	  }
3270-
3271-	last = retval;
3272-      }
3273-
3274-  if (retval != NULL || do_allocate == 0)
3275-    {
3276-      free (abs_filename);
3277-      return retval;
3278-    }
3279-
3280-  retval = (struct loaded_l10nfile *)
3281-    malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len)
3282-				* (1 << pop (mask))
3283-				* sizeof (struct loaded_l10nfile *)));
3284-  if (retval == NULL)
3285-    return NULL;
3286-
3287-  retval->filename = abs_filename;
3288-  retval->decided = (__argz_count (dirlist, dirlist_len) != 1
3289-		     || ((mask & XPG_CODESET) != 0
3290-			 && (mask & XPG_NORM_CODESET) != 0));
3291-  retval->data = NULL;
3292-
3293-  if (last == NULL)
3294-    {
3295-      retval->next = *l10nfile_list;
3296-      *l10nfile_list = retval;
3297-    }
3298-  else
3299-    {
3300-      retval->next = last->next;
3301-      last->next = retval;
3302-    }
3303-
3304-  entries = 0;
3305-  /* If the DIRLIST is a real list the RETVAL entry corresponds not to
3306-     a real file.  So we have to use the DIRLIST separation mechanism
3307-     of the inner loop.  */
3308-  cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask;
3309-  for (; cnt >= 0; --cnt)
3310-    if ((cnt & ~mask) == 0
3311-	&& ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0)
3312-	&& ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0))
3313-      {
3314-	/* Iterate over all elements of the DIRLIST.  */
3315-	char *dir = NULL;
3316-
3317-	while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir))
3318-	       != NULL)
3319-	  retval->successor[entries++]
3320-	    = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt,
3321-				  language, territory, codeset,
3322-				  normalized_codeset, modifier, special,
3323-				  sponsor, revision, filename, 1);
3324-      }
3325-  retval->successor[entries] = NULL;
3326-
3327-  return retval;
3328-}
3329-
3330-/* Normalize codeset name.  There is no standard for the codeset
3331-   names.  Normalization allows the user to use any of the common
3332-   names.  */
3333-const char *
3334-_nl_normalize_codeset (codeset, name_len)
3335-     const char *codeset;
3336-     size_t name_len;
3337-{
3338-  int len = 0;
3339-  int only_digit = 1;
3340-  char *retval;
3341-  char *wp;
3342-  size_t cnt;
3343-
3344-  for (cnt = 0; cnt < name_len; ++cnt)
3345-    if (isalnum (codeset[cnt]))
3346-      {
3347-	++len;
3348-
3349-	if (isalpha (codeset[cnt]))
3350-	  only_digit = 0;
3351-      }
3352-
3353-  retval = (char *) malloc ((only_digit ? 3 : 0) + len + 1);
3354-
3355-  if (retval != NULL)
3356-    {
3357-      if (only_digit)
3358-	wp = stpcpy (retval, "iso");
3359-      else
3360-	wp = retval;
3361-
3362-      for (cnt = 0; cnt < name_len; ++cnt)
3363-	if (isalpha (codeset[cnt]))
3364-	  *wp++ = tolower (codeset[cnt]);
3365-	else if (isdigit (codeset[cnt]))
3366-	  *wp++ = codeset[cnt];
3367-
3368-      *wp = '\0';
3369-    }
3370-
3371-  return (const char *) retval;
3372-}
3373-
3374-
3375-/* @@ begin of epilog @@ */
3376-
3377-/* We don't want libintl.a to depend on any other library.  So we
3378-   avoid the non-standard function stpcpy.  In GNU C Library this
3379-   function is available, though.  Also allow the symbol HAVE_STPCPY
3380-   to be defined.  */
3381-#if !_LIBC && !HAVE_STPCPY
3382-static char *
3383-stpcpy (dest, src)
3384-     char *dest;
3385-     const char *src;
3386-{
3387-  while ((*dest++ = *src++) != '\0')
3388-    /* Do nothing. */ ;
3389-  return dest - 1;
3390-}
3391-#endif
3392diff -uprN clean/lrzsz-0.12.20/intl/libgettext.h lrzsz-0.12.20/intl/libgettext.h
3393--- clean/lrzsz-0.12.20/intl/libgettext.h	1998-04-26 14:22:36.000000000 +0100
3394+++ lrzsz-0.12.20/intl/libgettext.h	1970-01-01 01:00:00.000000000 +0100
3395@@ -1,182 +0,0 @@
3396-/* Message catalogs for internationalization.
3397-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
3398-
3399-   This program is free software; you can redistribute it and/or modify
3400-   it under the terms of the GNU General Public License as published by
3401-   the Free Software Foundation; either version 2, or (at your option)
3402-   any later version.
3403-
3404-   This program is distributed in the hope that it will be useful,
3405-   but WITHOUT ANY WARRANTY; without even the implied warranty of
3406-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3407-   GNU General Public License for more details.
3408-
3409-   You should have received a copy of the GNU General Public License
3410-   along with this program; if not, write to the Free Software Foundation,
3411-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3412-
3413-/* Because on some systems (e.g. Solaris) we sometimes have to include
3414-   the systems libintl.h as well as this file we have more complex
3415-   include protection above.  But the systems header might perhaps also
3416-   define _LIBINTL_H and therefore we have to protect the definition here.  */
3417-
3418-#if !defined (_LIBINTL_H) || !defined (_LIBGETTEXT_H)
3419-#if !defined (_LIBINTL_H)
3420-# define _LIBINTL_H	1
3421-#endif
3422-#define _LIBGETTEXT_H	1
3423-
3424-/* We define an additional symbol to signal that we use the GNU
3425-   implementation of gettext.  */
3426-#define __USE_GNU_GETTEXT 1
3427-
3428-#include <sys/types.h>
3429-
3430-#if HAVE_LOCALE_H
3431-# include <locale.h>
3432-#endif
3433-
3434-
3435-#ifdef __cplusplus
3436-extern "C" {
3437-#endif
3438-
3439-/* @@ end of prolog @@ */
3440-
3441-#ifndef PARAMS
3442-# if __STDC__
3443-#  define PARAMS(args) args
3444-# else
3445-#  define PARAMS(args) ()
3446-# endif
3447-#endif
3448-
3449-#ifndef NULL
3450-# if !defined __cplusplus || defined __GNUC__
3451-#  define NULL ((void *) 0)
3452-# else
3453-#  define NULL (0)
3454-# endif
3455-#endif
3456-
3457-#if !HAVE_LC_MESSAGES
3458-/* This value determines the behaviour of the gettext() and dgettext()
3459-   function.  But some system does not have this defined.  Define it
3460-   to a default value.  */
3461-# define LC_MESSAGES (-1)
3462-#endif
3463-
3464-
3465-/* Declarations for gettext-using-catgets interface.  Derived from
3466-   Jim Meyering's libintl.h.  */
3467-struct _msg_ent
3468-{
3469-  const char *_msg;
3470-  int _msg_number;
3471-};
3472-
3473-
3474-#if HAVE_CATGETS
3475-/* These two variables are defined in the automatically by po-to-tbl.sed
3476-   generated file `cat-id-tbl.c'.  */
3477-extern const struct _msg_ent _msg_tbl[];
3478-extern int _msg_tbl_length;
3479-#endif
3480-
3481-
3482-/* For automatical extraction of messages sometimes no real
3483-   translation is needed.  Instead the string itself is the result.  */
3484-#define gettext_noop(Str) (Str)
3485-
3486-/* Look up MSGID in the current default message catalog for the current
3487-   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
3488-   text).  */
3489-extern char *gettext PARAMS ((const char *__msgid));
3490-extern char *gettext__ PARAMS ((const char *__msgid));
3491-
3492-/* Look up MSGID in the DOMAINNAME message catalog for the current
3493-   LC_MESSAGES locale.  */
3494-extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid));
3495-extern char *dgettext__ PARAMS ((const char *__domainname,
3496-				 const char *__msgid));
3497-
3498-/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
3499-   locale.  */
3500-extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid,
3501-				int __category));
3502-extern char *dcgettext__ PARAMS ((const char *__domainname,
3503-				  const char *__msgid, int __category));
3504-
3505-
3506-/* Set the current default message catalog to DOMAINNAME.
3507-   If DOMAINNAME is null, return the current default.
3508-   If DOMAINNAME is "", reset to the default of "messages".  */
3509-extern char *textdomain PARAMS ((const char *__domainname));
3510-extern char *textdomain__ PARAMS ((const char *__domainname));
3511-
3512-/* Specify that the DOMAINNAME message catalog will be found
3513-   in DIRNAME rather than in the system locale data base.  */
3514-extern char *bindtextdomain PARAMS ((const char *__domainname,
3515-				  const char *__dirname));
3516-extern char *bindtextdomain__ PARAMS ((const char *__domainname,
3517-				    const char *__dirname));
3518-
3519-#if ENABLE_NLS
3520-
3521-/* Solaris 2.3 has the gettext function but dcgettext is missing.
3522-   So we omit this optimization for Solaris 2.3.  BTW, Solaris 2.4
3523-   has dcgettext.  */
3524-# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT)
3525-
3526-#  define gettext(Msgid)						      \
3527-     dgettext (NULL, Msgid)
3528-
3529-#  define dgettext(Domainname, Msgid)					      \
3530-     dcgettext (Domainname, Msgid, LC_MESSAGES)
3531-
3532-#  if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7
3533-/* This global variable is defined in loadmsgcat.c.  We need a sign,
3534-   whether a new catalog was loaded, which can be associated with all
3535-   translations.  */
3536-extern int _nl_msg_cat_cntr;
3537-
3538-#   define dcgettext(Domainname, Msgid, Category)			      \
3539-  (__extension__							      \
3540-   ({									      \
3541-     char *__result;							      \
3542-     if (__builtin_constant_p (Msgid))					      \
3543-       {								      \
3544-	 static char *__translation__;					      \
3545-	 static int __catalog_counter__;				      \
3546-	 if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr)    \
3547-	   {								      \
3548-	     __translation__ =						      \
3549-	       dcgettext__ (Domainname, Msgid, Category);		      \
3550-	     __catalog_counter__ = _nl_msg_cat_cntr;			      \
3551-	   }								      \
3552-	 __result = __translation__;					      \
3553-       }								      \
3554-     else								      \
3555-       __result = dcgettext__ (Domainname, Msgid, Category);		      \
3556-     __result;								      \
3557-    }))
3558-#  endif
3559-# endif
3560-
3561-#else
3562-
3563-# define gettext(Msgid) (Msgid)
3564-# define dgettext(Domainname, Msgid) (Msgid)
3565-# define dcgettext(Domainname, Msgid, Category) (Msgid)
3566-# define textdomain(Domainname) while (0) /* nothing */
3567-# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */
3568-
3569-#endif
3570-
3571-/* @@ begin of epilog @@ */
3572-
3573-#ifdef __cplusplus
3574-}
3575-#endif
3576-
3577-#endif
3578diff -uprN clean/lrzsz-0.12.20/intl/linux-msg.sed lrzsz-0.12.20/intl/linux-msg.sed
3579--- clean/lrzsz-0.12.20/intl/linux-msg.sed	1998-04-26 14:20:52.000000000 +0100
3580+++ lrzsz-0.12.20/intl/linux-msg.sed	1970-01-01 01:00:00.000000000 +0100
3581@@ -1,100 +0,0 @@
3582-# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file
3583-# Copyright (C) 1995 Free Software Foundation, Inc.
3584-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
3585-#
3586-# This program is free software; you can redistribute it and/or modify
3587-# it under the terms of the GNU General Public License as published by
3588-# the Free Software Foundation; either version 2, or (at your option)
3589-# any later version.
3590-#
3591-# This program is distributed in the hope that it will be useful,
3592-# but WITHOUT ANY WARRANTY; without even the implied warranty of
3593-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3594-# GNU General Public License for more details.
3595-#
3596-# You should have received a copy of the GNU General Public License
3597-# along with this program; if not, write to the Free Software
3598-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3599-#
3600-#
3601-# The first directive in the .msg should be the definition of the
3602-# message set number.  We use always set number 1.
3603-#
3604-1 {
3605-  i\
3606-$set 1 # Automatically created by po2msg.sed
3607-  h
3608-  s/.*/0/
3609-  x
3610-}
3611-#
3612-# Mitch's old catalog format does not allow comments.
3613-#
3614-# We copy the original message as a comment into the .msg file.
3615-#
3616-/^msgid/ {
3617-  s/msgid[ 	]*"//
3618-#
3619-# This does not work now with the new format.
3620-# /"$/! {
3621-#   s/\\$//
3622-#   s/$/ ... (more lines following)"/
3623-# }
3624-  x
3625-# The following nice solution is by
3626-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
3627-  td
3628-# Increment a decimal number in pattern space.
3629-# First hide trailing `9' digits.
3630-  :d
3631-  s/9\(_*\)$/_\1/
3632-  td
3633-# Assure at least one digit is available.
3634-  s/^\(_*\)$/0\1/
3635-# Increment the last digit.
3636-  s/8\(_*\)$/9\1/
3637-  s/7\(_*\)$/8\1/
3638-  s/6\(_*\)$/7\1/
3639-  s/5\(_*\)$/6\1/
3640-  s/4\(_*\)$/5\1/
3641-  s/3\(_*\)$/4\1/
3642-  s/2\(_*\)$/3\1/
3643-  s/1\(_*\)$/2\1/
3644-  s/0\(_*\)$/1\1/
3645-# Convert the hidden `9' digits to `0's.
3646-  s/_/0/g
3647-  x
3648-  G
3649-  s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p
3650-}
3651-#
3652-# The .msg file contains, other then the .po file, only the translations
3653-# but each given a unique ID.  Starting from 1 and incrementing by 1 for
3654-# each message we assign them to the messages.
3655-# It is important that the .po file used to generate the cat-id-tbl.c file
3656-# (with po-to-tbl) is the same as the one used here.  (At least the order
3657-# of declarations must not be changed.)
3658-#
3659-/^msgstr/ {
3660-  s/msgstr[ 	]*"\(.*\)"/# \1/
3661-# Clear substitution flag.
3662-  tb
3663-# Append the next line.
3664-  :b
3665-  N
3666-# Look whether second part is continuation line.
3667-  s/\(.*\n\)"\(.*\)"/\1\2/
3668-# Yes, then branch.
3669-  ta
3670-  P
3671-  D
3672-# Note that D includes a jump to the start!!
3673-# We found a continuation line.  But before printing insert '\'.
3674-  :a
3675-  s/\(.*\)\(\n.*\)/\1\\\2/
3676-  P
3677-# We cannot use D here.
3678-  s/.*\n\(.*\)/\1/
3679-  tb
3680-}
3681-d
3682diff -uprN clean/lrzsz-0.12.20/intl/loadinfo.h lrzsz-0.12.20/intl/loadinfo.h
3683--- clean/lrzsz-0.12.20/intl/loadinfo.h	1998-04-26 14:20:52.000000000 +0100
3684+++ lrzsz-0.12.20/intl/loadinfo.h	1970-01-01 01:00:00.000000000 +0100
3685@@ -1,58 +0,0 @@
3686-#ifndef PARAMS
3687-# if __STDC__
3688-#  define PARAMS(args) args
3689-# else
3690-#  define PARAMS(args) ()
3691-# endif
3692-#endif
3693-
3694-/* Encoding of locale name parts.  */
3695-#define CEN_REVISION		1
3696-#define CEN_SPONSOR		2
3697-#define CEN_SPECIAL		4
3698-#define XPG_NORM_CODESET	8
3699-#define XPG_CODESET		16
3700-#define TERRITORY		32
3701-#define CEN_AUDIENCE		64
3702-#define XPG_MODIFIER		128
3703-
3704-#define CEN_SPECIFIC	(CEN_REVISION|CEN_SPONSOR|CEN_SPECIAL|CEN_AUDIENCE)
3705-#define XPG_SPECIFIC	(XPG_CODESET|XPG_NORM_CODESET|XPG_MODIFIER)
3706-
3707-
3708-struct loaded_l10nfile
3709-{
3710-  const char *filename;
3711-  int decided;
3712-
3713-  const void *data;
3714-
3715-  struct loaded_l10nfile *next;
3716-  struct loaded_l10nfile *successor[1];
3717-};
3718-
3719-
3720-extern const char *_nl_normalize_codeset PARAMS ((const char *codeset,
3721-						  size_t name_len));
3722-
3723-extern struct loaded_l10nfile *
3724-_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list,
3725-			    const char *dirlist, size_t dirlist_len, int mask,
3726-			    const char *language, const char *territory,
3727-			    const char *codeset,
3728-			    const char *normalized_codeset,
3729-			    const char *modifier, const char *special,
3730-			    const char *sponsor, const char *revision,
3731-			    const char *filename, int do_allocate));
3732-
3733-
3734-extern const char *_nl_expand_alias PARAMS ((const char *name));
3735-
3736-extern int _nl_explode_name PARAMS ((char *name, const char **language,
3737-				     const char **modifier,
3738-				     const char **territory,
3739-				     const char **codeset,
3740-				     const char **normalized_codeset,
3741-				     const char **special,
3742-				     const char **sponsor,
3743-				     const char **revision));
3744diff -uprN clean/lrzsz-0.12.20/intl/loadmsgcat.c lrzsz-0.12.20/intl/loadmsgcat.c
3745--- clean/lrzsz-0.12.20/intl/loadmsgcat.c	1998-04-26 14:22:37.000000000 +0100
3746+++ lrzsz-0.12.20/intl/loadmsgcat.c	1970-01-01 01:00:00.000000000 +0100
3747@@ -1,199 +0,0 @@
3748-/* Load needed message catalogs
3749-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
3750-
3751-   This program is free software; you can redistribute it and/or modify
3752-   it under the terms of the GNU General Public License as published by
3753-   the Free Software Foundation; either version 2, or (at your option)
3754-   any later version.
3755-
3756-   This program is distributed in the hope that it will be useful,
3757-   but WITHOUT ANY WARRANTY; without even the implied warranty of
3758-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3759-   GNU General Public License for more details.
3760-
3761-   You should have received a copy of the GNU General Public License
3762-   along with this program; if not, write to the Free Software Foundation,
3763-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3764-
3765-#ifdef HAVE_CONFIG_H
3766-# include <config.h>
3767-#endif
3768-
3769-#include <fcntl.h>
3770-#include <sys/types.h>
3771-#include <sys/stat.h>
3772-
3773-#if defined STDC_HEADERS || defined _LIBC
3774-# include <stdlib.h>
3775-#endif
3776-
3777-#if defined HAVE_UNISTD_H || defined _LIBC
3778-# include <unistd.h>
3779-#endif
3780-
3781-#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC
3782-# include <sys/mman.h>
3783-#endif
3784-
3785-#include "gettext.h"
3786-#include "gettextP.h"
3787-
3788-/* @@ end of prolog @@ */
3789-
3790-#ifdef _LIBC
3791-/* Rename the non ISO C functions.  This is required by the standard
3792-   because some ISO C functions will require linking with this object
3793-   file and the name space must not be polluted.  */
3794-# define fstat  __fstat
3795-# define open   __open
3796-# define close  __close
3797-# define read   __read
3798-# define mmap   __mmap
3799-# define munmap __munmap
3800-#endif
3801-
3802-/* We need a sign, whether a new catalog was loaded, which can be associated
3803-   with all translations.  This is important if the translations are
3804-   cached by one of GCC's features.  */
3805-int _nl_msg_cat_cntr = 0;
3806-
3807-
3808-/* Load the message catalogs specified by FILENAME.  If it is no valid
3809-   message catalog do nothing.  */
3810-void
3811-_nl_load_domain (domain_file)
3812-     struct loaded_l10nfile *domain_file;
3813-{
3814-  int fd;
3815-  struct stat st;
3816-  struct mo_file_header *data = (struct mo_file_header *) -1;
3817-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
3818-    || defined _LIBC
3819-  int use_mmap = 0;
3820-#endif
3821-  struct loaded_domain *domain;
3822-
3823-  domain_file->decided = 1;
3824-  domain_file->data = NULL;
3825-
3826-  /* If the record does not represent a valid locale the FILENAME
3827-     might be NULL.  This can happen when according to the given
3828-     specification the locale file name is different for XPG and CEN
3829-     syntax.  */
3830-  if (domain_file->filename == NULL)
3831-    return;
3832-
3833-  /* Try to open the addressed file.  */
3834-  fd = open (domain_file->filename, O_RDONLY);
3835-  if (fd == -1)
3836-    return;
3837-
3838-  /* We must know about the size of the file.  */
3839-  if (fstat (fd, &st) != 0
3840-      && st.st_size < (off_t) sizeof (struct mo_file_header))
3841-    {
3842-      /* Something went wrong.  */
3843-      close (fd);
3844-      return;
3845-    }
3846-
3847-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
3848-    || defined _LIBC
3849-  /* Now we are ready to load the file.  If mmap() is available we try
3850-     this first.  If not available or it failed we try to load it.  */
3851-  data = (struct mo_file_header *) mmap (NULL, st.st_size, PROT_READ,
3852-					 MAP_PRIVATE, fd, 0);
3853-
3854-  if (data != (struct mo_file_header *) -1)
3855-    {
3856-      /* mmap() call was successful.  */
3857-      close (fd);
3858-      use_mmap = 1;
3859-    }
3860-#endif
3861-
3862-  /* If the data is not yet available (i.e. mmap'ed) we try to load
3863-     it manually.  */
3864-  if (data == (struct mo_file_header *) -1)
3865-    {
3866-      off_t to_read;
3867-      char *read_ptr;
3868-
3869-      data = (struct mo_file_header *) malloc (st.st_size);
3870-      if (data == NULL)
3871-	return;
3872-
3873-      to_read = st.st_size;
3874-      read_ptr = (char *) data;
3875-      do
3876-	{
3877-	  long int nb = (long int) read (fd, read_ptr, to_read);
3878-	  if (nb == -1)
3879-	    {
3880-	      close (fd);
3881-	      return;
3882-	    }
3883-
3884-	  read_ptr += nb;
3885-	  to_read -= nb;
3886-	}
3887-      while (to_read > 0);
3888-
3889-      close (fd);
3890-    }
3891-
3892-  /* Using the magic number we can test whether it really is a message
3893-     catalog file.  */
3894-  if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED)
3895-    {
3896-      /* The magic number is wrong: not a message catalog file.  */
3897-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
3898-    || defined _LIBC
3899-      if (use_mmap)
3900-	munmap ((caddr_t) data, st.st_size);
3901-      else
3902-#endif
3903-	free (data);
3904-      return;
3905-    }
3906-
3907-  domain_file->data
3908-    = (struct loaded_domain *) malloc (sizeof (struct loaded_domain));
3909-  if (domain_file->data == NULL)
3910-    return;
3911-
3912-  domain = (struct loaded_domain *) domain_file->data;
3913-  domain->data = (char *) data;
3914-  domain->must_swap = data->magic != _MAGIC;
3915-
3916-  /* Fill in the information about the available tables.  */
3917-  switch (W (domain->must_swap, data->revision))
3918-    {
3919-    case 0:
3920-      domain->nstrings = W (domain->must_swap, data->nstrings);
3921-      domain->orig_tab = (struct string_desc *)
3922-	((char *) data + W (domain->must_swap, data->orig_tab_offset));
3923-      domain->trans_tab = (struct string_desc *)
3924-	((char *) data + W (domain->must_swap, data->trans_tab_offset));
3925-      domain->hash_size = W (domain->must_swap, data->hash_tab_size);
3926-      domain->hash_tab = (nls_uint32 *)
3927-	((char *) data + W (domain->must_swap, data->hash_tab_offset));
3928-      break;
3929-    default:
3930-      /* This is an illegal revision.  */
3931-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
3932-    || defined _LIBC
3933-      if (use_mmap)
3934-	munmap ((caddr_t) data, st.st_size);
3935-      else
3936-#endif
3937-	free (data);
3938-      free (domain);
3939-      domain_file->data = NULL;
3940-      return;
3941-    }
3942-
3943-  /* Show that one domain is changed.  This might make some cached
3944-     translations invalid.  */
3945-  ++_nl_msg_cat_cntr;
3946-}
3947diff -uprN clean/lrzsz-0.12.20/intl/localealias.c lrzsz-0.12.20/intl/localealias.c
3948--- clean/lrzsz-0.12.20/intl/localealias.c	1998-04-26 14:22:37.000000000 +0100
3949+++ lrzsz-0.12.20/intl/localealias.c	1970-01-01 01:00:00.000000000 +0100
3950@@ -1,378 +0,0 @@
3951-/* Handle aliases for locale names
3952-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
3953-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
3954-
3955-   This program is free software; you can redistribute it and/or modify
3956-   it under the terms of the GNU General Public License as published by
3957-   the Free Software Foundation; either version 2, or (at your option)
3958-   any later version.
3959-
3960-   This program is distributed in the hope that it will be useful,
3961-   but WITHOUT ANY WARRANTY; without even the implied warranty of
3962-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3963-   GNU General Public License for more details.
3964-
3965-   You should have received a copy of the GNU General Public License
3966-   along with this program; if not, write to the Free Software Foundation,
3967-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
3968-
3969-#ifdef HAVE_CONFIG_H
3970-# include <config.h>
3971-#endif
3972-
3973-#include <ctype.h>
3974-#include <stdio.h>
3975-#include <sys/types.h>
3976-
3977-#ifdef __GNUC__
3978-# define alloca __builtin_alloca
3979-# define HAVE_ALLOCA 1
3980-#else
3981-# if defined HAVE_ALLOCA_H || defined _LIBC
3982-#  include <alloca.h>
3983-# else
3984-#  ifdef _AIX
3985- #pragma alloca
3986-#  else
3987-#   ifndef alloca
3988-char *alloca ();
3989-#   endif
3990-#  endif
3991-# endif
3992-#endif
3993-
3994-#if defined STDC_HEADERS || defined _LIBC
3995-# include <stdlib.h>
3996-#else
3997-char *getenv ();
3998-# ifdef HAVE_MALLOC_H
3999-#  include <malloc.h>
4000-# else
4001-void free ();
4002-# endif
4003-#endif
4004-
4005-#if defined HAVE_STRING_H || defined _LIBC
4006-# ifndef _GNU_SOURCE
4007-#  define _GNU_SOURCE	1
4008-# endif
4009-# include <string.h>
4010-#else
4011-# include <strings.h>
4012-# ifndef memcpy
4013-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
4014-# endif
4015-#endif
4016-#if !HAVE_STRCHR && !defined _LIBC
4017-# ifndef strchr
4018-#  define strchr index
4019-# endif
4020-#endif
4021-
4022-#include "gettext.h"
4023-#include "gettextP.h"
4024-
4025-/* @@ end of prolog @@ */
4026-
4027-#ifdef _LIBC
4028-/* Rename the non ANSI C functions.  This is required by the standard
4029-   because some ANSI C functions will require linking with this object
4030-   file and the name space must not be polluted.  */
4031-# define strcasecmp __strcasecmp
4032-#endif
4033-
4034-
4035-/* For those loosing systems which don't have `alloca' we have to add
4036-   some additional code emulating it.  */
4037-#ifdef HAVE_ALLOCA
4038-/* Nothing has to be done.  */
4039-# define ADD_BLOCK(list, address) /* nothing */
4040-# define FREE_BLOCKS(list) /* nothing */
4041-#else
4042-struct block_list
4043-{
4044-  void *address;
4045-  struct block_list *next;
4046-};
4047-# define ADD_BLOCK(list, addr)						      \
4048-  do {									      \
4049-    struct block_list *newp = (struct block_list *) malloc (sizeof (*newp));  \
4050-    /* If we cannot get a free block we cannot add the new element to	      \
4051-       the list.  */							      \
4052-    if (newp != NULL) {							      \
4053-      newp->address = (addr);						      \
4054-      newp->next = (list);						      \
4055-      (list) = newp;							      \
4056-    }									      \
4057-  } while (0)
4058-# define FREE_BLOCKS(list)						      \
4059-  do {									      \
4060-    while (list != NULL) {						      \
4061-      struct block_list *old = list;					      \
4062-      list = list->next;						      \
4063-      free (old);							      \
4064-    }									      \
4065-  } while (0)
4066-# undef alloca
4067-# define alloca(size) (malloc (size))
4068-#endif	/* have alloca */
4069-
4070-
4071-struct alias_map
4072-{
4073-  const char *alias;
4074-  const char *value;
4075-};
4076-
4077-
4078-static struct alias_map *map;
4079-static size_t nmap = 0;
4080-static size_t maxmap = 0;
4081-
4082-
4083-/* Prototypes for local functions.  */
4084-static size_t read_alias_file PARAMS ((const char *fname, int fname_len));
4085-static void extend_alias_table PARAMS ((void));
4086-static int alias_compare PARAMS ((const struct alias_map *map1,
4087-				  const struct alias_map *map2));
4088-
4089-
4090-const char *
4091-_nl_expand_alias (name)
4092-    const char *name;
4093-{
4094-  static const char *locale_alias_path = LOCALE_ALIAS_PATH;
4095-  struct alias_map *retval;
4096-  size_t added;
4097-
4098-  do
4099-    {
4100-      struct alias_map item;
4101-
4102-      item.alias = name;
4103-
4104-      if (nmap > 0)
4105-	retval = (struct alias_map *) bsearch (&item, map, nmap,
4106-					       sizeof (struct alias_map),
4107-					       (int (*) PARAMS ((const void *,
4108-								 const void *))
4109-						) alias_compare);
4110-      else
4111-	retval = NULL;
4112-
4113-      /* We really found an alias.  Return the value.  */
4114-      if (retval != NULL)
4115-	return retval->value;
4116-
4117-      /* Perhaps we can find another alias file.  */
4118-      added = 0;
4119-      while (added == 0 && locale_alias_path[0] != '\0')
4120-	{
4121-	  const char *start;
4122-
4123-	  while (locale_alias_path[0] == ':')
4124-	    ++locale_alias_path;
4125-	  start = locale_alias_path;
4126-
4127-	  while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':')
4128-	    ++locale_alias_path;
4129-
4130-	  if (start < locale_alias_path)
4131-	    added = read_alias_file (start, locale_alias_path - start);
4132-	}
4133-    }
4134-  while (added != 0);
4135-
4136-  return NULL;
4137-}
4138-
4139-
4140-static size_t
4141-read_alias_file (fname, fname_len)
4142-     const char *fname;
4143-     int fname_len;
4144-{
4145-#ifndef HAVE_ALLOCA
4146-  struct block_list *block_list = NULL;
4147-#endif
4148-  FILE *fp;
4149-  char *full_fname;
4150-  size_t added;
4151-  static const char aliasfile[] = "/locale.alias";
4152-
4153-  full_fname = (char *) alloca (fname_len + sizeof aliasfile);
4154-  ADD_BLOCK (block_list, full_fname);
4155-  memcpy (full_fname, fname, fname_len);
4156-  memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile);
4157-
4158-  fp = fopen (full_fname, "r");
4159-  if (fp == NULL)
4160-    {
4161-      FREE_BLOCKS (block_list);
4162-      return 0;
4163-    }
4164-
4165-  added = 0;
4166-  while (!feof (fp))
4167-    {
4168-      /* It is a reasonable approach to use a fix buffer here because
4169-	 a) we are only interested in the first two fields
4170-	 b) these fields must be usable as file names and so must not
4171-	    be that long
4172-       */
4173-      char buf[BUFSIZ];
4174-      char *alias;
4175-      char *value;
4176-      char *cp;
4177-
4178-      if (fgets (buf, BUFSIZ, fp) == NULL)
4179-	/* EOF reached.  */
4180-	break;
4181-
4182-      cp = buf;
4183-      /* Ignore leading white space.  */
4184-      while (isspace (cp[0]))
4185-	++cp;
4186-
4187-      /* A leading '#' signals a comment line.  */
4188-      if (cp[0] != '\0' && cp[0] != '#')
4189-	{
4190-	  alias = cp++;
4191-	  while (cp[0] != '\0' && !isspace (cp[0]))
4192-	    ++cp;
4193-	  /* Terminate alias name.  */
4194-	  if (cp[0] != '\0')
4195-	    *cp++ = '\0';
4196-
4197-	  /* Now look for the beginning of the value.  */
4198-	  while (isspace (cp[0]))
4199-	    ++cp;
4200-
4201-	  if (cp[0] != '\0')
4202-	    {
4203-	      char *tp;
4204-	      size_t len;
4205-
4206-	      value = cp++;
4207-	      while (cp[0] != '\0' && !isspace (cp[0]))
4208-		++cp;
4209-	      /* Terminate value.  */
4210-	      if (cp[0] == '\n')
4211-		{
4212-		  /* This has to be done to make the following test
4213-		     for the end of line possible.  We are looking for
4214-		     the terminating '\n' which do not overwrite here.  */
4215-		  *cp++ = '\0';
4216-		  *cp = '\n';
4217-		}
4218-	      else if (cp[0] != '\0')
4219-		*cp++ = '\0';
4220-
4221-	      if (nmap >= maxmap)
4222-		extend_alias_table ();
4223-
4224-	      /* We cannot depend on strdup available in the libc.  Sigh!  */
4225-	      len = strlen (alias) + 1;
4226-	      tp = (char *) malloc (len);
4227-	      if (tp == NULL)
4228-		{
4229-		  FREE_BLOCKS (block_list);
4230-		  return added;
4231-		}
4232-	      memcpy (tp, alias, len);
4233-	      map[nmap].alias = tp;
4234-
4235-	      len = strlen (value) + 1;
4236-	      tp = (char *) malloc (len);
4237-	      if (tp == NULL)
4238-		{
4239-		  FREE_BLOCKS (block_list);
4240-		  return added;
4241-		}
4242-	      memcpy (tp, value, len);
4243-	      map[nmap].value = tp;
4244-
4245-	      ++nmap;
4246-	      ++added;
4247-	    }
4248-	}
4249-
4250-      /* Possibly not the whole line fits into the buffer.  Ignore
4251-	 the rest of the line.  */
4252-      while (strchr (cp, '\n') == NULL)
4253-	{
4254-	  cp = buf;
4255-	  if (fgets (buf, BUFSIZ, fp) == NULL)
4256-	    /* Make sure the inner loop will be left.  The outer loop
4257-	       will exit at the `feof' test.  */
4258-	    *cp = '\n';
4259-	}
4260-    }
4261-
4262-  /* Should we test for ferror()?  I think we have to silently ignore
4263-     errors.  --drepper  */
4264-  fclose (fp);
4265-
4266-  if (added > 0)
4267-    qsort (map, nmap, sizeof (struct alias_map),
4268-	   (int (*) PARAMS ((const void *, const void *))) alias_compare);
4269-
4270-  FREE_BLOCKS (block_list);
4271-  return added;
4272-}
4273-
4274-
4275-static void
4276-extend_alias_table ()
4277-{
4278-  size_t new_size;
4279-  struct alias_map *new_map;
4280-
4281-  new_size = maxmap == 0 ? 100 : 2 * maxmap;
4282-  new_map = (struct alias_map *) malloc (new_size
4283-					 * sizeof (struct alias_map));
4284-  if (new_map == NULL)
4285-    /* Simply don't extend: we don't have any more core.  */
4286-    return;
4287-
4288-  memcpy (new_map, map, nmap * sizeof (struct alias_map));
4289-
4290-  if (maxmap != 0)
4291-    free (map);
4292-
4293-  map = new_map;
4294-  maxmap = new_size;
4295-}
4296-
4297-
4298-static int
4299-alias_compare (map1, map2)
4300-     const struct alias_map *map1;
4301-     const struct alias_map *map2;
4302-{
4303-#if defined _LIBC || defined HAVE_STRCASECMP
4304-  return strcasecmp (map1->alias, map2->alias);
4305-#else
4306-  const unsigned char *p1 = (const unsigned char *) map1->alias;
4307-  const unsigned char *p2 = (const unsigned char *) map2->alias;
4308-  unsigned char c1, c2;
4309-
4310-  if (p1 == p2)
4311-    return 0;
4312-
4313-  do
4314-    {
4315-      /* I know this seems to be odd but the tolower() function in
4316-	 some systems libc cannot handle nonalpha characters.  */
4317-      c1 = isupper (*p1) ? tolower (*p1) : *p1;
4318-      c2 = isupper (*p2) ? tolower (*p2) : *p2;
4319-      if (c1 == '\0')
4320-	break;
4321-      ++p1;
4322-      ++p2;
4323-    }
4324-  while (c1 == c2);
4325-
4326-  return c1 - c2;
4327-#endif
4328-}
4329diff -uprN clean/lrzsz-0.12.20/intl/Makefile.in lrzsz-0.12.20/intl/Makefile.in
4330--- clean/lrzsz-0.12.20/intl/Makefile.in	1998-04-26 14:22:35.000000000 +0100
4331+++ lrzsz-0.12.20/intl/Makefile.in	1970-01-01 01:00:00.000000000 +0100
4332@@ -1,214 +0,0 @@
4333-# Makefile for directory with message catalog handling in GNU NLS Utilities.
4334-# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
4335-#
4336-# This program is free software; you can redistribute it and/or modify
4337-# it under the terms of the GNU General Public License as published by
4338-# the Free Software Foundation; either version 2, or (at your option)
4339-# any later version.
4340-#
4341-# This program is distributed in the hope that it will be useful,
4342-# but WITHOUT ANY WARRANTY; without even the implied warranty of
4343-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4344-# GNU General Public License for more details.
4345-#
4346-# You should have received a copy of the GNU General Public License
4347-# along with this program; if not, write to the Free Software
4348-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
4349-
4350-PACKAGE = @PACKAGE@
4351-VERSION = @VERSION@
4352-
4353-SHELL = /bin/sh
4354-
4355-srcdir = @srcdir@
4356-top_srcdir = @top_srcdir@
4357-top_builddir = ..
4358-VPATH = @srcdir@
4359-
4360-prefix = @prefix@
4361-exec_prefix = @exec_prefix@
4362-transform = @program_transform_name@
4363-libdir = $(exec_prefix)/lib
4364-includedir = $(prefix)/include
4365-datadir = $(prefix)/@DATADIRNAME@
4366-localedir = $(datadir)/locale
4367-gnulocaledir = $(prefix)/share/locale
4368-gettextsrcdir = @datadir@/gettext/intl
4369-aliaspath = $(localedir):.
4370-subdir = intl
4371-
4372-INSTALL = @INSTALL@
4373-INSTALL_DATA = @INSTALL_DATA@
4374-MKINSTALLDIRS = @MKINSTALLDIRS@
4375-
4376-l = @l@
4377-
4378-AR = ar
4379-CC = @CC@
4380-LIBTOOL = @LIBTOOL@
4381-RANLIB = @RANLIB@
4382-
4383-DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \
4384--DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@
4385-CPPFLAGS = @CPPFLAGS@
4386-CFLAGS = @CFLAGS@
4387-LDFLAGS = @LDFLAGS@
4388-
4389-COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
4390-
4391-HEADERS = $(COMHDRS) libgettext.h loadinfo.h
4392-COMHDRS = gettext.h gettextP.h hash-string.h
4393-SOURCES = $(COMSRCS) intl-compat.c cat-compat.c
4394-COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \
4395-finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \
4396-explodename.c
4397-OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \
4398-finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \
4399-explodename.$lo
4400-CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo
4401-GETTOBJS = intl-compat.$lo
4402-DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \
4403-xopen-msg.sed $(HEADERS) $(SOURCES)
4404-DISTFILES.normal = VERSION
4405-DISTFILES.gettext = libintl.glibc intlh.inst.in
4406-
4407-.SUFFIXES:
4408-.SUFFIXES: .c .o .lo
4409-.c.o:
4410-	$(COMPILE) $<
4411-.c.lo:
4412-	$(LIBTOOL) --mode=compile $(COMPILE) $<
4413-
4414-INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib
4415-
4416-all: all-@USE_INCLUDED_LIBINTL@
4417-
4418-all-yes: libintl.$la intlh.inst
4419-all-no:
4420-
4421-libintl.a: $(OBJECTS)
4422-	rm -f $@
4423-	$(AR) cru $@ $(OBJECTS)
4424-	$(RANLIB) $@
4425-
4426-libintl.la: $(OBJECTS)
4427-	$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \
4428-		   -version-info 1:0 -rpath $(libdir)
4429-
4430-../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot
4431-	cd ../po && $(MAKE) cat-id-tbl.$lo
4432-
4433-check: all
4434-
4435-# This installation goal is only used in GNU gettext.  Packages which
4436-# only use the library should use install instead.
4437-
4438-# We must not install the libintl.h/libintl.a files if we are on a
4439-# system which has the gettext() function in its C library or in a
4440-# separate library or use the catgets interface.  A special case is
4441-# where configure found a previously installed GNU gettext library.
4442-# If you want to use the one which comes with this version of the
4443-# package, you have to use `configure --with-included-gettext'.
4444-install: install-exec install-data
4445-install-exec: all
4446-	if test "$(PACKAGE)" = "gettext" \
4447-	   && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
4448-	  if test -r $(MKINSTALLDIRS); then \
4449-	    $(MKINSTALLDIRS) $(libdir) $(includedir); \
4450-	  else \
4451-	    $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \
4452-	  fi; \
4453-	  $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \
4454-	  $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \
4455-	else \
4456-	  : ; \
4457-	fi
4458-install-data: all
4459-	if test "$(PACKAGE)" = "gettext"; then \
4460-	  if test -r $(MKINSTALLDIRS); then \
4461-	    $(MKINSTALLDIRS) $(gettextsrcdir); \
4462-	  else \
4463-	    $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
4464-	  fi; \
4465-	  $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \
4466-	  dists="$(DISTFILES.common)"; \
4467-	  for file in $$dists; do \
4468-	    $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \
4469-	  done; \
4470-	else \
4471-	  : ; \
4472-	fi
4473-
4474-# Define this as empty until I found a useful application.
4475-installcheck:
4476-
4477-uninstall:
4478-	dists="$(DISTFILES.common)"; \
4479-	for file in $$dists; do \
4480-	  rm -f $(gettextsrcdir)/$$file; \
4481-	done
4482-
4483-info dvi:
4484-
4485-$(OBJECTS): ../config.h libgettext.h
4486-bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h
4487-dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h
4488-
4489-tags: TAGS
4490-
4491-TAGS: $(HEADERS) $(SOURCES)
4492-	here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES)
4493-
4494-id: ID
4495-
4496-ID: $(HEADERS) $(SOURCES)
4497-	here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES)
4498-
4499-
4500-mostlyclean:
4501-	rm -f *.a *.o *.lo core core.*
4502-
4503-clean: mostlyclean
4504-
4505-distclean: clean
4506-	rm -f Makefile ID TAGS po2msg.sed po2tbl.sed libintl.h
4507-
4508-maintainer-clean: distclean
4509-	@echo "This command is intended for maintainers to use;"
4510-	@echo "it deletes files that may require special tools to rebuild."
4511-
4512-
4513-# GNU gettext needs not contain the file `VERSION' but contains some
4514-# other files which should not be distributed in other packages.
4515-distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
4516-dist distdir: Makefile $(DISTFILES)
4517-	if test "$(PACKAGE)" = gettext; then \
4518-	  additional="$(DISTFILES.gettext)"; \
4519-	else \
4520-	  additional="$(DISTFILES.normal)"; \
4521-	fi; \
4522-	for file in $(DISTFILES.common) $$additional; do \
4523-	  ln $(srcdir)/$$file $(distdir) 2> /dev/null \
4524-	    || cp -p $(srcdir)/$$file $(distdir); \
4525-	done
4526-
4527-dist-libc:
4528-	tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc
4529-
4530-Makefile: Makefile.in ../config.status
4531-	cd .. \
4532-	  && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
4533-
4534-# The dependency for intlh.inst is different in gettext and all other
4535-# packages.  Because we cannot you GNU make features we have to solve
4536-# the problem while rewriting Makefile.in.
4537-@GT_YES@intlh.inst: intlh.inst.in ../config.status
4538-@GT_YES@	cd .. \
4539-@GT_YES@	&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \
4540-@GT_YES@	  $(SHELL) ./config.status
4541-@GT_NO@.PHONY: intlh.inst
4542-@GT_NO@intlh.inst:
4543-
4544-# Tell versions [3.59,3.63) of GNU make not to export all variables.
4545-# Otherwise a system limit (for SysV at least) may be exceeded.
4546-.NOEXPORT:
4547diff -uprN clean/lrzsz-0.12.20/intl/po2tbl.sed.in lrzsz-0.12.20/intl/po2tbl.sed.in
4548--- clean/lrzsz-0.12.20/intl/po2tbl.sed.in	1998-04-26 14:20:52.000000000 +0100
4549+++ lrzsz-0.12.20/intl/po2tbl.sed.in	1970-01-01 01:00:00.000000000 +0100
4550@@ -1,102 +0,0 @@
4551-# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets
4552-# Copyright (C) 1995 Free Software Foundation, Inc.
4553-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
4554-#
4555-# This program is free software; you can redistribute it and/or modify
4556-# it under the terms of the GNU General Public License as published by
4557-# the Free Software Foundation; either version 2, or (at your option)
4558-# any later version.
4559-#
4560-# This program is distributed in the hope that it will be useful,
4561-# but WITHOUT ANY WARRANTY; without even the implied warranty of
4562-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4563-# GNU General Public License for more details.
4564-#
4565-# You should have received a copy of the GNU General Public License
4566-# along with this program; if not, write to the Free Software
4567-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
4568-#
4569-1 {
4570-  i\
4571-/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot.  */\
4572-\
4573-#if HAVE_CONFIG_H\
4574-# include <config.h>\
4575-#endif\
4576-\
4577-#include "libgettext.h"\
4578-\
4579-const struct _msg_ent _msg_tbl[] = {
4580-  h
4581-  s/.*/0/
4582-  x
4583-}
4584-#
4585-# Write msgid entries in C array form.
4586-#
4587-/^msgid/ {
4588-  s/msgid[ 	]*\(".*"\)/  {\1/
4589-  tb
4590-# Append the next line
4591-  :b
4592-  N
4593-# Look whether second part is continuation line.
4594-  s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/
4595-# Yes, then branch.
4596-  ta
4597-# Because we assume that the input file correctly formed the line
4598-# just read cannot be again be a msgid line.  So it's safe to ignore
4599-# it.
4600-  s/\(.*\)\n.*/\1/
4601-  bc
4602-# We found a continuation line.  But before printing insert '\'.
4603-  :a
4604-  s/\(.*\)\(\n.*\)/\1\\\2/
4605-  P
4606-# We cannot use D here.
4607-  s/.*\n\(.*\)/\1/
4608-# Some buggy seds do not clear the `successful substitution since last ``t'''
4609-# flag on `N', so we do a `t' here to clear it.
4610-  tb
4611-# Not reached
4612-  :c
4613-  x
4614-# The following nice solution is by
4615-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
4616-  td
4617-# Increment a decimal number in pattern space.
4618-# First hide trailing `9' digits.
4619-  :d
4620-  s/9\(_*\)$/_\1/
4621-  td
4622-# Assure at least one digit is available.
4623-  s/^\(_*\)$/0\1/
4624-# Increment the last digit.
4625-  s/8\(_*\)$/9\1/
4626-  s/7\(_*\)$/8\1/
4627-  s/6\(_*\)$/7\1/
4628-  s/5\(_*\)$/6\1/
4629-  s/4\(_*\)$/5\1/
4630-  s/3\(_*\)$/4\1/
4631-  s/2\(_*\)$/3\1/
4632-  s/1\(_*\)$/2\1/
4633-  s/0\(_*\)$/1\1/
4634-# Convert the hidden `9' digits to `0's.
4635-  s/_/0/g
4636-  x
4637-  G
4638-  s/\(.*\)\n\([0-9]*\)/\1, \2},/
4639-  s/\(.*\)"$/\1/
4640-  p
4641-}
4642-#
4643-# Last line.
4644-#
4645-$ {
4646-  i\
4647-};\
4648-
4649-  g
4650-  s/0*\(.*\)/int _msg_tbl_length = \1;/p
4651-}
4652-d
4653diff -uprN clean/lrzsz-0.12.20/intl/textdomain.c lrzsz-0.12.20/intl/textdomain.c
4654--- clean/lrzsz-0.12.20/intl/textdomain.c	1998-04-26 14:22:37.000000000 +0100
4655+++ lrzsz-0.12.20/intl/textdomain.c	1970-01-01 01:00:00.000000000 +0100
4656@@ -1,106 +0,0 @@
4657-/* Implementation of the textdomain(3) function
4658-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
4659-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
4660-
4661-   This program is free software; you can redistribute it and/or modify
4662-   it under the terms of the GNU General Public License as published by
4663-   the Free Software Foundation; either version 2, or (at your option)
4664-   any later version.
4665-
4666-   This program is distributed in the hope that it will be useful,
4667-   but WITHOUT ANY WARRANTY; without even the implied warranty of
4668-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4669-   GNU General Public License for more details.
4670-
4671-   You should have received a copy of the GNU General Public License
4672-   along with this program; if not, write to the Free Software Foundation,
4673-   Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
4674-
4675-#ifdef HAVE_CONFIG_H
4676-# include <config.h>
4677-#endif
4678-
4679-#if defined STDC_HEADERS || defined _LIBC
4680-# include <stdlib.h>
4681-#endif
4682-
4683-#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC
4684-# include <string.h>
4685-#else
4686-# include <strings.h>
4687-# ifndef memcpy
4688-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
4689-# endif
4690-#endif
4691-
4692-#ifdef _LIBC
4693-# include <libintl.h>
4694-#else
4695-# include "libgettext.h"
4696-#endif
4697-
4698-/* @@ end of prolog @@ */
4699-
4700-/* Name of the default text domain.  */
4701-extern const char _nl_default_default_domain[];
4702-
4703-/* Default text domain in which entries for gettext(3) are to be found.  */
4704-extern const char *_nl_current_default_domain;
4705-
4706-
4707-/* Names for the libintl functions are a problem.  They must not clash
4708-   with existing names and they should follow ANSI C.  But this source
4709-   code is also used in GNU C Library where the names have a __
4710-   prefix.  So we have to make a difference here.  */
4711-#ifdef _LIBC
4712-# define TEXTDOMAIN __textdomain
4713-# define strdup(str) __strdup (str)
4714-#else
4715-# define TEXTDOMAIN textdomain__
4716-#endif
4717-
4718-/* Set the current default message catalog to DOMAINNAME.
4719-   If DOMAINNAME is null, return the current default.
4720-   If DOMAINNAME is "", reset to the default of "messages".  */
4721-char *
4722-TEXTDOMAIN (domainname)
4723-     const char *domainname;
4724-{
4725-  char *old;
4726-
4727-  /* A NULL pointer requests the current setting.  */
4728-  if (domainname == NULL)
4729-    return (char *) _nl_current_default_domain;
4730-
4731-  old = (char *) _nl_current_default_domain;
4732-
4733-  /* If domain name is the null string set to default domain "messages".  */
4734-  if (domainname[0] == '\0'
4735-      || strcmp (domainname, _nl_default_default_domain) == 0)
4736-    _nl_current_default_domain = _nl_default_default_domain;
4737-  else
4738-    {
4739-      /* If the following malloc fails `_nl_current_default_domain'
4740-	 will be NULL.  This value will be returned and so signals we
4741-	 are out of core.  */
4742-#if defined _LIBC || defined HAVE_STRDUP
4743-      _nl_current_default_domain = strdup (domainname);
4744-#else
4745-      size_t len = strlen (domainname) + 1;
4746-      char *cp = (char *) malloc (len);
4747-      if (cp != NULL)
4748-	memcpy (cp, domainname, len);
4749-      _nl_current_default_domain = cp;
4750-#endif
4751-    }
4752-
4753-  if (old != _nl_default_default_domain)
4754-    free (old);
4755-
4756-  return (char *) _nl_current_default_domain;
4757-}
4758-
4759-#ifdef _LIBC
4760-/* Alias for function name in GNU C Library.  */
4761-weak_alias (__textdomain, textdomain);
4762-#endif
4763diff -uprN clean/lrzsz-0.12.20/intl/VERSION lrzsz-0.12.20/intl/VERSION
4764--- clean/lrzsz-0.12.20/intl/VERSION	1998-04-26 14:22:37.000000000 +0100
4765+++ lrzsz-0.12.20/intl/VERSION	1970-01-01 01:00:00.000000000 +0100
4766@@ -1 +0,0 @@
4767-GNU gettext library from gettext-0.10.32
4768diff -uprN clean/lrzsz-0.12.20/intl/xopen-msg.sed lrzsz-0.12.20/intl/xopen-msg.sed
4769--- clean/lrzsz-0.12.20/intl/xopen-msg.sed	1998-04-26 14:20:52.000000000 +0100
4770+++ lrzsz-0.12.20/intl/xopen-msg.sed	1970-01-01 01:00:00.000000000 +0100
4771@@ -1,104 +0,0 @@
4772-# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file
4773-# Copyright (C) 1995 Free Software Foundation, Inc.
4774-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
4775-#
4776-# This program is free software; you can redistribute it and/or modify
4777-# it under the terms of the GNU General Public License as published by
4778-# the Free Software Foundation; either version 2, or (at your option)
4779-# any later version.
4780-#
4781-# This program is distributed in the hope that it will be useful,
4782-# but WITHOUT ANY WARRANTY; without even the implied warranty of
4783-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
4784-# GNU General Public License for more details.
4785-#
4786-# You should have received a copy of the GNU General Public License
4787-# along with this program; if not, write to the Free Software
4788-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
4789-#
4790-#
4791-# The first directive in the .msg should be the definition of the
4792-# message set number.  We use always set number 1.
4793-#
4794-1 {
4795-  i\
4796-$set 1 # Automatically created by po2msg.sed
4797-  h
4798-  s/.*/0/
4799-  x
4800-}
4801-#
4802-# We copy all comments into the .msg file.  Perhaps they can help.
4803-#
4804-/^#/ s/^#[ 	]*/$ /p
4805-#
4806-# We copy the original message as a comment into the .msg file.
4807-#
4808-/^msgid/ {
4809-# Does not work now
4810-#  /"$/! {
4811-#    s/\\$//
4812-#    s/$/ ... (more lines following)"/
4813-#  }
4814-  s/^msgid[ 	]*"\(.*\)"$/$ Original Message: \1/
4815-  p
4816-}
4817-#
4818-# The .msg file contains, other then the .po file, only the translations
4819-# but each given a unique ID.  Starting from 1 and incrementing by 1 for
4820-# each message we assign them to the messages.
4821-# It is important that the .po file used to generate the cat-id-tbl.c file
4822-# (with po-to-tbl) is the same as the one used here.  (At least the order
4823-# of declarations must not be changed.)
4824-#
4825-/^msgstr/ {
4826-  s/msgstr[ 	]*"\(.*\)"/\1/
4827-  x
4828-# The following nice solution is by
4829-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
4830-  td
4831-# Increment a decimal number in pattern space.
4832-# First hide trailing `9' digits.
4833-  :d
4834-  s/9\(_*\)$/_\1/
4835-  td
4836-# Assure at least one digit is available.
4837-  s/^\(_*\)$/0\1/
4838-# Increment the last digit.
4839-  s/8\(_*\)$/9\1/
4840-  s/7\(_*\)$/8\1/
4841-  s/6\(_*\)$/7\1/
4842-  s/5\(_*\)$/6\1/
4843-  s/4\(_*\)$/5\1/
4844-  s/3\(_*\)$/4\1/
4845-  s/2\(_*\)$/3\1/
4846-  s/1\(_*\)$/2\1/
4847-  s/0\(_*\)$/1\1/
4848-# Convert the hidden `9' digits to `0's.
4849-  s/_/0/g
4850-  x
4851-# Bring the line in the format `<number> <message>'
4852-  G
4853-  s/^[^\n]*$/& /
4854-  s/\(.*\)\n\([0-9]*\)/\2 \1/
4855-# Clear flag from last substitution.
4856-  tb
4857-# Append the next line.
4858-  :b
4859-  N
4860-# Look whether second part is a continuation line.
4861-  s/\(.*\n\)"\(.*\)"/\1\2/
4862-# Yes, then branch.
4863-  ta
4864-  P
4865-  D
4866-# Note that `D' includes a jump to the start!!
4867-# We found a continuation line.  But before printing insert '\'.
4868-  :a
4869-  s/\(.*\)\(\n.*\)/\1\\\2/
4870-  P
4871-# We cannot use the sed command `D' here
4872-  s/.*\n\(.*\)/\1/
4873-  tb
4874-}
4875-d
4876diff -uprN clean/lrzsz-0.12.20/lib/Makefile.am lrzsz-0.12.20/lib/Makefile.am
4877--- clean/lrzsz-0.12.20/lib/Makefile.am	1998-12-27 16:25:26.000000000 +0000
4878+++ lrzsz-0.12.20/lib/Makefile.am	2019-11-25 16:22:34.000000000 +0000
4879@@ -1,6 +1,4 @@
4880 noinst_LIBRARIES=libzmodem.a
4881-CFLAGS=@CFLAGS@
4882-AUTOMAKE_OPTIONS=ansi2knr
4883
4884 EXTRA_DIST = alloca.c ansi2knr.1 ansi2knr.c \
4885 	getopt.c getopt1.c mkdir.c mktime.c \
4886diff -uprN clean/lrzsz-0.12.20/Makefile.am lrzsz-0.12.20/Makefile.am
4887--- clean/lrzsz-0.12.20/Makefile.am	1998-12-30 11:19:40.000000000 +0000
4888+++ lrzsz-0.12.20/Makefile.am	2019-11-26 11:47:29.000000000 +0000
4889@@ -1,5 +1,5 @@
4890-SUBDIRS = lib intl src po man testsuite
4891-EXTRA_DIST = check.lrzsz COMPATABILITY README.cvs README.isdn4linux \
4892+SUBDIRS = lib src po man testsuite
4893+EXTRA_DIST = config.rpath m4/ChangeLog  check.lrzsz COMPATABILITY README.cvs README.isdn4linux \
4894 	README.gettext rpmrc buildrpm systype.in fastcheck.sh README.tests \
4895 	beos-runpiped.c fastcheck.beos
4896 noinst_SCRIPTS=systype
4897@@ -7,7 +7,6 @@ PR=@PACKAGE@-@VERSION@
4898 CLEAN_FILES=fastcheck.done
4899
4900 dist-hook:
4901-	mkdir $(distdir)/debian
4902 	cp -fa $(srcdir)/debian/changelog  $(distdir)/debian/
4903 	cp -fa $(srcdir)/debian/control  $(distdir)/debian/
4904 	cp -fa $(srcdir)/debian/copyright  $(distdir)/debian/
4905@@ -83,3 +82,5 @@ cvs-dist:
4906 rpm: $(PR).tar.gz Specfile
4907 	$(srcdir)/buildrpm $(srcdir)
4908
4909+
4910+ACLOCAL_AMFLAGS = -I m4
4911diff -uprN clean/lrzsz-0.12.20/po/cat-id-tbl.c lrzsz-0.12.20/po/cat-id-tbl.c
4912--- clean/lrzsz-0.12.20/po/cat-id-tbl.c	1998-12-29 09:24:24.000000000 +0000
4913+++ lrzsz-0.12.20/po/cat-id-tbl.c	1970-01-01 01:00:00.000000000 +0100
4914@@ -1,234 +0,0 @@
4915-/* Automatically generated by po2tbl.sed from lrzsz.pot.  */
4916-
4917-#if HAVE_CONFIG_H
4918-# include <config.h>
4919-#endif
4920-
4921-#include "libgettext.h"
4922-
4923-const struct _msg_ent _msg_tbl[] = {
4924-  {"", 1},
4925-  {"io_mode(,2) in rbsb.c not implemented\n", 2},
4926-  {"caught signal %d; exiting", 3},
4927-  {"command tries", 4},
4928-  {"packetlength", 5},
4929-  {"packetlength out of range 24..%ld", 6},
4930-  {"framelength", 7},
4931-  {"framelength out of range 32..%ld", 8},
4932-  {"min_bps", 9},
4933-  {"min_bps must be >= 0", 10},
4934-  {"min_bps_time", 11},
4935-  {"min_bps_time must be > 1", 12},
4936-  {"hour to large (0..23)", 13},
4937-  {"unparsable stop time\n", 14},
4938-  {"minute to large (0..59)", 15},
4939-  {"stop time to small", 16},
4940-  {"stop-at", 17},
4941-  {"timeout", 18},
4942-  {"timeout out of range 10..1000", 19},
4943-  {"security violation: can't do that under restricted shell\n", 20},
4944-  {"window size", 21},
4945-  {"cannot turnoff syslog", 22},
4946-  {"startup delay", 23},
4947-  {"out of memory", 24},
4948-  {"this program was never intended to be used setuid\n", 25},
4949-  {"need at least one file to send", 26},
4950-  {"Can't send command in restricted mode\n", 27},
4951-  {"hostname too long\n", 28},
4952-  {"illegal server address\n", 29},
4953-  {"can read only one file from stdin", 30},
4954-  {"Transfer incomplete\n", 31},
4955-  {"Transfer complete\n", 32},
4956-  {"send_pseudo %s: cannot open tmpfile %s: %s", 33},
4957-  {"send_pseudo %s: cannot lstat tmpfile %s: %s", 34},
4958-  {"send_pseudo %s: avoiding symlink trap", 35},
4959-  {"send_pseudo %s: cannot write to tmpfile %s: %s", 36},
4960-  {"send_pseudo %s: failed", 37},
4961-  {"send_pseudo %s: ok", 38},
4962-  {"tcp protocol init failed\n", 39},
4963-  {"Answering TIMESYNC at %s", 40},
4964-  {"timezone", 41},
4965-  {"timezone unknown", 42},
4966-  {"Can't open any requested files.", 43},
4967-  {"security violation: not allowed to upload from %s", 44},
4968-  {"cannot open %s", 45},
4969-  {"is not a file: %s", 46},
4970-  {"%s/%s: error occured", 47},
4971-  {"skipped: %s", 48},
4972-  {"%s/%s: skipped", 49},
4973-  {"Bytes Sent:%7ld   BPS:%-8ld                        \n", 50},
4974-  {"Sending %s, %ld blocks: ", 51},
4975-  {"Give your local XMODEM receive command now.", 52},
4976-  {"Sending: %s\n", 53},
4977-  {"Timeout on pathname", 54},
4978-  {"Receiver Cancelled", 55},
4979-  {"No ACK on EOT", 56},
4980-  {"Xmodem sectors/kbytes sent: %3d/%2dk", 57},
4981-  {"Ymodem sectors/kbytes sent: %3d/%2dk", 58},
4982-  {"Cancelled", 59},
4983-  {"Timeout on sector ACK", 60},
4984-  {"NAK on sector", 61},
4985-  {"Got burst for sector ACK", 62},
4986-  {"Got %02x for sector ACK", 63},
4987-  {"Retry Count Exceeded", 64},
4988-  {"Try `%s --help' for more information.\n", 65},
4989-  {"%s version %s\n", 66},
4990-  {"Usage: %s [options] file ...\n", 67},
4991-  {"   or: %s [options] -{c|i} COMMAND\n", 68},
4992-  {"Send file(s) with ZMODEM/YMODEM/XMODEM protocol\n", 69},
4993-  {"\
4994-    (X) = option applies to XMODEM only\n\
4995-    (Y) = option applies to YMODEM only\n\
4996-    (Z) = option applies to ZMODEM only\n", 70},
4997-  {"\
4998-  -+, --append                append to existing destination file (Z)\n\
4999-  -2, --twostop               use 2 stop bits\n\
5000-  -4, --try-4k                go up to 4K blocksize\n\
5001-      --start-4k              start with 4K blocksize (doesn't try 8)\n\
5002-  -8, --try-8k                go up to 8K blocksize\n\
5003-      --start-8k              start with 8K blocksize\n\
5004-  -a, --ascii                 ASCII transfer (change CR/LF to LF)\n\
5005-  -b, --binary                binary transfer\n\
5006-  -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)\n\
5007-  -c, --command COMMAND       execute remote command COMMAND (Z)\n\
5008-  -C, --command-tries N       try N times to execute a command (Z)\n\
5009-  -d, --dot-to-slash          change '.' to '/' in pathnames (Y/Z)\n\
5010-      --delay-startup N       sleep N seconds before doing anything\n\
5011-  -e, --escape                escape all control characters (Z)\n\
5012-  -E, --rename                force receiver to rename files it already has\n\
5013-  -f, --full-path             send full pathname (Y/Z)\n\
5014-  -i, --immediate-command CMD send remote CMD, return immediately (Z)\n\
5015-  -h, --help                  print this usage message\n\
5016-  -k, --1k                    send 1024 byte packets (X)\n\
5017-  -L, --packetlen N           limit subpacket length to N bytes (Z)\n\
5018-  -l, --framelen N            limit frame length to N bytes (l>=L) (Z)\n\
5019-  -m, --min-bps N             stop transmission if BPS below N\n\
5020-  -M, --min-bps-time N          for at least N seconds (default: 120)\n", 71},
5021-  {"\
5022-  -n, --newer                 send file if source newer (Z)\n\
5023-  -N, --newer-or-longer       send file if source newer or longer (Z)\n\
5024-  -o, --16-bit-crc            use 16 bit CRC instead of 32 bit CRC (Z)\n\
5025-  -O, --disable-timeouts      disable timeout code, wait forever\n\
5026-  -p, --protect               protect existing destination file (Z)\n\
5027-  -r, --resume                resume interrupted file transfer (Z)\n\
5028-  -R, --restricted            restricted, more secure mode\n\
5029-  -q, --quiet                 quiet (no progress reports)\n\
5030-  -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds\n\
5031-      --tcp                   build a TCP connection to transmit files\n\
5032-      --tcp-server            open socket, wait for connection\n\
5033-  -u, --unlink                unlink file after transmission\n\
5034-  -U, --unrestrict            turn off restricted mode (if allowed to)\n\
5035-  -v, --verbose               be verbose, provide debugging information\n\
5036-  -w, --windowsize N          Window is N bytes (Z)\n\
5037-  -X, --xmodem                use XMODEM protocol\n\
5038-  -y, --overwrite             overwrite existing files\n\
5039-  -Y, --overwrite-or-skip     overwrite existing files, else skip\n\
5040-      --ymodem                use YMODEM protocol\n\
5041-  -Z, --zmodem                use ZMODEM protocol\n\
5042-\n\
5043-short options use the same arguments as the long ones\n", 72},
5044-  {"got ZRQINIT", 73},
5045-  {"got ZCAN", 74},
5046-  {"blklen now %d\n", 75},
5047-  {"zsendfdata: bps rate %ld below min %ld", 76},
5048-  {"zsendfdata: reached stop time", 77},
5049-  {"Bytes Sent:%7ld/%7ld   BPS:%-8ld ETA %02d:%02d  ", 78},
5050-  {"calc_blklen: reduced to %d due to error\n", 79},
5051-  {"calc_blklen: returned old value %d due to low bpe diff\n", 80},
5052-  {"calc_blklen: old %ld, new %ld, d %ld\n", 81},
5053-  {"calc_blklen: calc total_bytes=%ld, bpe=%ld, ec=%ld\n", 82},
5054-  {"calc_blklen: blklen %d, ok %ld, failed %ld -> %lu\n", 83},
5055-  {"calc_blklen: returned %d as best\n", 84},
5056-  {"\
5057-\n\
5058-countem: Total %d %ld\n", 85},
5059-  {"Bad escape sequence %x", 86},
5060-  {"Sender Canceled", 87},
5061-  {"TIMEOUT", 88},
5062-  {"Bad data subpacket", 89},
5063-  {"Data subpacket too long", 90},
5064-  {"Garbage count exceeded", 91},
5065-  {"Got %s", 92},
5066-  {"Retry %d: ", 93},
5067-  {"don't have settimeofday, will not set time\n", 94},
5068-  {"not running as root (this is good!), can not set time\n", 95},
5069-  {"bytes_per_error", 96},
5070-  {"bytes-per-error should be >100", 97},
5071-  {"O_SYNC not supported by the kernel", 98},
5072-  {"garbage on commandline", 99},
5073-  {"Usage: %s [options] [filename.if.xmodem]\n", 100},
5074-  {"Receive files with ZMODEM/YMODEM/XMODEM protocol\n", 101},
5075-  {"\
5076-  -+, --append                append to existing files\n\
5077-  -a, --ascii                 ASCII transfer (change CR/LF to LF)\n\
5078-  -b, --binary                binary transfer\n\
5079-  -B, --bufsize N             buffer N bytes (N==auto: buffer whole file)\n\
5080-  -c, --with-crc              Use 16 bit CRC (X)\n\
5081-  -C, --allow-remote-commands allow execution of remote commands (Z)\n\
5082-  -D, --null                  write all received data to /dev/null\n\
5083-      --delay-startup N       sleep N seconds before doing anything\n\
5084-  -e, --escape                Escape control characters (Z)\n\
5085-  -E, --rename                rename any files already existing\n\
5086-      --errors N              generate CRC error every N bytes (debugging)\n\
5087-  -h, --help                  Help, print this usage message\n\
5088-  -m, --min-bps N             stop transmission if BPS below N\n\
5089-  -M, --min-bps-time N          for at least N seconds (default: 120)\n\
5090-  -O, --disable-timeouts      disable timeout code, wait forever for data\n\
5091-      --o-sync                open output file(s) in synchronous write mode\n\
5092-  -p, --protect               protect existing files\n\
5093-  -q, --quiet                 quiet, no progress reports\n\
5094-  -r, --resume                try to resume interrupted file transfer (Z)\n\
5095-  -R, --restricted            restricted, more secure mode\n\
5096-  -s, --stop-at {HH:MM|+N}    stop transmission at HH:MM or in N seconds\n\
5097-  -S, --timesync              request remote time (twice: set local time)\n\
5098-      --syslog[=off]          turn syslog on or off, if possible\n\
5099-  -t, --timeout N             set timeout to N tenths of a second\n\
5100-  -u, --keep-uppercase        keep upper case filenames\n\
5101-  -U, --unrestrict            disable restricted mode (if allowed to)\n\
5102-  -v, --verbose               be verbose, provide debugging information\n\
5103-  -w, --windowsize N          Window is N bytes (Z)\n\
5104-  -X  --xmodem                use XMODEM protocol\n\
5105-  -y, --overwrite             Yes, clobber existing file if any\n\
5106-      --ymodem                use YMODEM protocol\n\
5107-  -Z, --zmodem                use ZMODEM protocol\n\
5108-\n\
5109-short options use the same arguments as the long ones\n", 102},
5110-  {"%s waiting to receive.", 103},
5111-  {"\rBytes received: %7ld/%7ld   BPS:%-6ld                \r\n", 104},
5112-  {"%s: ready to receive %s", 105},
5113-  {"\rBytes received: %7ld   BPS:%-6ld                \r\n", 106},
5114-  {"\
5115-\r\n\
5116-%s: %s removed.\r\n", 107},
5117-  {"Pathname fetch returned EOT", 108},
5118-  {"Received dup Sector", 109},
5119-  {"Sync Error", 110},
5120-  {"CRC", 111},
5121-  {"Checksum", 112},
5122-  {"Sector number garbled", 113},
5123-  {"Sender Cancelled", 114},
5124-  {"Got 0%o sector header", 115},
5125-  {"file name ends with a /, skipped: %s\n", 116},
5126-  {"zmanag=%d, Lzmanag=%d\n", 117},
5127-  {"zconv=%d\n", 118},
5128-  {"file exists, skipped: %s\n", 119},
5129-  {"TIMESYNC: here %ld, remote %ld, diff %ld seconds\n", 120},
5130-  {"TIMESYNC: cannot set time: %s\n", 121},
5131-  {"cannot tmpfile() for tcp protocol synchronization", 122},
5132-  {"Topipe", 123},
5133-  {"Receiving: %s\n", 124},
5134-  {"Blocks received: %d", 125},
5135-  {"%s: %s exists\n", 126},
5136-  {"%s:\tSecurity Violation", 127},
5137-  {"remote command execution requested", 128},
5138-  {"not executed", 129},
5139-  {"got ZRINIT", 130},
5140-  {"Skipped", 131},
5141-  {"rzfile: bps rate %ld below min %ld", 132},
5142-  {"rzfile: reached stop time", 133},
5143-  {"\rBytes received: %7ld/%7ld   BPS:%-6ld ETA %02d:%02d  ", 134},
5144-  {"fgets for tcp protocol synchronization failed: ", 135},
5145-  {"file close error", 136},
5146-};
5147-
5148-int _msg_tbl_length = 136;
5149Binary files clean/lrzsz-0.12.20/po/de.gmo and lrzsz-0.12.20/po/de.gmo differ
5150diff -uprN clean/lrzsz-0.12.20/po/de.po lrzsz-0.12.20/po/de.po
5151--- clean/lrzsz-0.12.20/po/de.po	1998-12-30 16:31:46.000000000 +0000
5152+++ lrzsz-0.12.20/po/de.po	2019-11-26 11:42:07.000000000 +0000
5153@@ -6,10 +6,12 @@
5154 msgid ""
5155 msgstr ""
5156 "Project-Id-Version: PACKAGE VERSION\n"
5157-"POT-Creation-Date: 1998-12-30 08:49+0100\n"
5158+"Report-Msgid-Bugs-To: \n"
5159+"POT-Creation-Date: 2019-11-26 11:39+0000\n"
5160 "PO-Revision-Date: 1997-06-01 19:00+0200\n"
5161 "Last-Translator: FULL NAME <uwe@ohse.de>\n"
5162 "Language-Team: none. try <uwe@ohse.de>\n"
5163+"Language: de\n"
5164 "MIME-Version: 1.0\n"
5165 "Content-Type: text/plain; charset=iso-8859-1\n"
5166 "Content-Transfer-Encoding: 8bit\n"
5167@@ -18,7 +20,7 @@ msgstr ""
5168 msgid "io_mode(,2) in rbsb.c not implemented\n"
5169 msgstr "io_mode(2) in rbsb.c nicht implementiert\n"
5170
5171-#: src/lrz.c:201 src/lsz.c:230
5172+#: src/lsz.c:230 src/lrz.c:201
5173 #, c-format
5174 msgid "caught signal %d; exiting"
5175 msgstr "erhielt Signal %d; Programmabbruch"
5176@@ -45,7 +47,7 @@ msgstr "Framel�nge"
5177 msgid "framelength out of range 32..%ld"
5178 msgstr "Argument der Option l au�erhalb des Bereichs 32..%ld"
5179
5180-#: src/lrz.c:323 src/lsz.c:450
5181+#: src/lsz.c:450 src/lrz.c:323
5182 msgid "min_bps"
5183 msgstr "minimale BPS-Rate"
5184
5185@@ -53,65 +55,65 @@ msgstr "minimale BPS-Rate"
5186 msgid "min_bps must be >= 0"
5187 msgstr "minimale BPS-Rate mu� >= 0 sein"
5188
5189-#: src/lrz.c:329 src/lsz.c:458
5190+#: src/lsz.c:458 src/lrz.c:329
5191 msgid "min_bps_time"
5192 msgstr ""
5193
5194-#: src/lrz.c:331 src/lsz.c:460
5195+#: src/lsz.c:460 src/lrz.c:331
5196 msgid "min_bps_time must be > 1"
5197 msgstr "Zeitfenster f�r minimale BPS-Rate mu� > 1 Sekunde sein"
5198
5199-#: src/lrz.c:347 src/lsz.c:484
5200+#: src/lsz.c:484 src/lrz.c:347
5201 msgid "hour to large (0..23)"
5202 msgstr "Stunde zu gross (0..23)"
5203
5204-#: src/lrz.c:349 src/lsz.c:486
5205+#: src/lsz.c:486 src/lrz.c:349
5206 msgid "unparsable stop time\n"
5207 msgstr "unparsbare Endzeit\n"
5208
5209-#: src/lrz.c:353 src/lsz.c:490
5210+#: src/lsz.c:490 src/lrz.c:353
5211 msgid "minute to large (0..59)"
5212 msgstr "Minute zu gro� (0..59)"
5213
5214-#: src/lrz.c:363 src/lrz.c:370 src/lsz.c:500 src/lsz.c:507
5215+#: src/lsz.c:500 src/lsz.c:507 src/lrz.c:363 src/lrz.c:370
5216 msgid "stop time to small"
5217 msgstr "Stopzeit zu kurz"
5218
5219-#: src/lrz.c:368 src/lsz.c:505
5220+#: src/lsz.c:505 src/lrz.c:368
5221 msgid "stop-at"
5222 msgstr ""
5223
5224-#: src/lrz.c:399 src/lsz.c:516
5225+#: src/lsz.c:516 src/lrz.c:399
5226 msgid "timeout"
5227 msgstr "Timeout"
5228
5229-#: src/lrz.c:401 src/lsz.c:518
5230+#: src/lsz.c:518 src/lrz.c:401
5231 msgid "timeout out of range 10..1000"
5232 msgstr "Argument der Option t au�erhalb des Bereichs 10..1000"
5233
5234-#: src/lrz.c:417 src/lsz.c:526
5235+#: src/lsz.c:526 src/lrz.c:417
5236 msgid "security violation: can't do that under restricted shell\n"
5237 msgstr "Sicherheitsversto�: Ausf�hrung unter eingeschr�nkter Shell verboten\n"
5238
5239-#: src/lrz.c:407 src/lsz.c:533
5240+#: src/lsz.c:533 src/lrz.c:407
5241 msgid "window size"
5242 msgstr "Fenstergr��e"
5243
5244-#: src/lrz.c:432 src/lrz.c:439 src/lsz.c:556 src/lsz.c:563
5245+#: src/lsz.c:556 src/lsz.c:563 src/lrz.c:432 src/lrz.c:439
5246 msgid "cannot turnoff syslog"
5247 msgstr "kann syslogging nicht abschalten"
5248
5249-#: src/lrz.c:454 src/lsz.c:571
5250+#: src/lsz.c:571 src/lrz.c:454
5251 msgid "startup delay"
5252 msgstr "Startverz�gerung"
5253
5254+#: src/lsz.c:583 src/lsz.c:692 src/lsz.c:831 src/lsz.c:1080 src/zreadline.c:127
5255 #: src/lrz.c:470 src/lrz.c:755 src/lrz.c:1117 src/lrz.c:1243 src/lrz.c:1300
5256-#: src/lrz.c:1317 src/lrz.c:1332 src/lrz.c:1431 src/lsz.c:583 src/lsz.c:692
5257-#: src/lsz.c:831 src/lsz.c:1080 src/zreadline.c:127
5258+#: src/lrz.c:1317 src/lrz.c:1332 src/lrz.c:1431
5259 msgid "out of memory"
5260 msgstr "Kein Speicher mehr frei"
5261
5262-#: src/lrz.c:480 src/lsz.c:595
5263+#: src/lsz.c:595 src/lrz.c:480
5264 msgid "this program was never intended to be used setuid\n"
5265 msgstr "dieses Programm darf nicht setuid laufen\n"
5266
5267@@ -120,14 +122,15 @@ msgid "need at least one file to send"
5268 msgstr "es mu� mindestens ein Name einer zu sendenden Datei angegeben werden"
5269
5270 #: src/lsz.c:628
5271+#, c-format
5272 msgid "Can't send command in restricted mode\n"
5273 msgstr "Im eingeschr�nkten Modus ist das Senden von Kommandos verboten\n"
5274
5275-#: src/lrz.c:524 src/lsz.c:655
5276+#: src/lsz.c:655 src/lrz.c:524
5277 msgid "hostname too long\n"
5278 msgstr "Hostname zu lang\n"
5279
5280-#: src/lrz.c:539 src/lsz.c:670
5281+#: src/lsz.c:670 src/lrz.c:539
5282 msgid "illegal server address\n"
5283 msgstr "Illegale Serveraddresse\n"
5284
5285@@ -135,11 +138,11 @@ msgstr "Illegale Serveraddresse\n"
5286 msgid "can read only one file from stdin"
5287 msgstr "kann nur eine Datei von der Standardeingabe lesen"
5288
5289-#: src/lrz.c:571 src/lsz.c:806
5290+#: src/lsz.c:806 src/lrz.c:571
5291 msgid "Transfer incomplete\n"
5292 msgstr "�bertragung nicht abgeschlossen\n"
5293
5294-#: src/lrz.c:573 src/lsz.c:808
5295+#: src/lsz.c:808 src/lrz.c:573
5296 msgid "Transfer complete\n"
5297 msgstr "�bertragung abgeschlossen\n"
5298
5299@@ -197,9 +200,9 @@ msgstr "Kann keine der angeforderten Dat
5300 #: src/lsz.c:1028
5301 #, c-format
5302 msgid "security violation: not allowed to upload from %s"
5303-msgstr "Sicherheitsversto�: Ausf�hrung unter eingeschr�nkter Shell verboten"
5304+msgstr "Sicherheitsversto�: Ausf�hrung unter %s verboten"
5305
5306-#: src/lrz.c:1392 src/lsz.c:1046
5307+#: src/lsz.c:1046 src/lrz.c:1392
5308 #, c-format
5309 msgid "cannot open %s"
5310 msgstr "kann %s nicht �ffnen"
5311@@ -290,12 +293,12 @@ msgstr "Erhielt %02x als Sektorbest�tigu
5312 msgid "Retry Count Exceeded"
5313 msgstr "Maximale Wiederholungsanzahl �berschritten"
5314
5315-#: src/lrz.c:593 src/lsz.c:1521
5316+#: src/lsz.c:1521 src/lrz.c:593
5317 #, c-format
5318 msgid "Try `%s --help' for more information.\n"
5319 msgstr "`%s --help' gibt weitere Informationen.\n"
5320
5321-#: src/lrz.c:598 src/lsz.c:1526
5322+#: src/lsz.c:1526 src/lrz.c:598
5323 #, c-format
5324 msgid "%s version %s\n"
5325 msgstr "%s Version %s\n"
5326@@ -315,7 +318,7 @@ msgid "Send file(s) with ZMODEM/YMODEM/X
5327 msgstr "Dateien mit ZMODEM/YMODEM/XMODEM �bertragen\n"
5328
5329 # src/lrz.c:475 src/lsz.c:1330 xx
5330-#: src/lrz.c:604 src/lsz.c:1534
5331+#: src/lsz.c:1534 src/lrz.c:604
5332 msgid ""
5333 "    (X) = option applies to XMODEM only\n"
5334 "    (Y) = option applies to YMODEM only\n"
5335@@ -431,7 +434,7 @@ msgstr ""
5336 msgid "got ZRQINIT"
5337 msgstr "erhielt ZRQINIT"
5338
5339-#: src/lrz.c:1074 src/lrz.c:1787 src/lsz.c:1792
5340+#: src/lsz.c:1792 src/lrz.c:1074 src/lrz.c:1787
5341 msgid "got ZCAN"
5342 msgstr "erhielt ZCAN"
5343
5344@@ -472,7 +475,7 @@ msgstr "calc_blklen: alt %ld, neu %ld, D
5345 #: src/lsz.c:2272
5346 #, c-format
5347 msgid "calc_blklen: calc total_bytes=%ld, bpe=%ld, ec=%ld\n"
5348-msgstr "calc_blklen: kalkuliere gesamt_bytes=%ld, bpe=%le, ec=%ld\n"
5349+msgstr "calc_blklen: kalkuliere gesamt_bytes=%ld, bpe=%ld, ec=%ld\n"
5350
5351 #: src/lsz.c:2283
5352 #, c-format
5353@@ -493,6 +496,10 @@ msgstr ""
5354 "\n"
5355 "countem: Gesamt %d %ld\n"
5356
5357+#: src/zm.c:91
5358+msgid "Bad CRC"
5359+msgstr ""
5360+
5361 #: src/zm.c:244
5362 #, c-format
5363 msgid "Bad escape sequence %x"
5364@@ -502,7 +509,7 @@ msgstr "Falsche Escapesequenz %x"
5365 msgid "Sender Canceled"
5366 msgstr "Sender brach ab"
5367
5368-#: src/lrz.c:997 src/zm.c:585 src/zm.c:644
5369+#: src/zm.c:585 src/zm.c:644 src/lrz.c:997
5370 msgid "TIMEOUT"
5371 msgstr "TIMEOUT"
5372
5373@@ -772,13 +779,11 @@ msgstr "Erhielt unerwartetes ZRINIT"
5374 msgid "Skipped"
5375 msgstr "�bersprungen"
5376
5377-#. too bad
5378 #: src/lrz.c:2064
5379 #, c-format
5380 msgid "rzfile: bps rate %ld below min %ld"
5381 msgstr "rzfile: BPS-Rate %ld unter Minimum %ld"
5382
5383-#. too bad
5384 #: src/lrz.c:2079
5385 msgid "rzfile: reached stop time"
5386 msgstr "rzfile: Abbruchzeit erreicht"
5387diff -uprN clean/lrzsz-0.12.20/po/lrzsz.pot lrzsz-0.12.20/po/lrzsz.pot
5388--- clean/lrzsz-0.12.20/po/lrzsz.pot	1998-12-30 07:50:00.000000000 +0000
5389+++ lrzsz-0.12.20/po/lrzsz.pot	2019-11-26 11:39:12.000000000 +0000
5390@@ -1,24 +1,27 @@
5391 # SOME DESCRIPTIVE TITLE.
5392 # Copyright (C) YEAR Free Software Foundation, Inc.
5393+# This file is distributed under the same license as the lrzsz package.
5394 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5395 #
5396 #, fuzzy
5397 msgid ""
5398 msgstr ""
5399-"Project-Id-Version: PACKAGE VERSION\n"
5400-"POT-Creation-Date: 1998-12-30 08:49+0100\n"
5401+"Project-Id-Version: lrzsz 0.12.20\n"
5402+"Report-Msgid-Bugs-To: \n"
5403+"POT-Creation-Date: 2019-11-26 11:39+0000\n"
5404 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
5405 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
5406 "Language-Team: LANGUAGE <LL@li.org>\n"
5407+"Language: \n"
5408 "MIME-Version: 1.0\n"
5409 "Content-Type: text/plain; charset=CHARSET\n"
5410-"Content-Transfer-Encoding: ENCODING\n"
5411+"Content-Transfer-Encoding: 8bit\n"
5412
5413 #: src/lsz.c:228
5414 msgid "io_mode(,2) in rbsb.c not implemented\n"
5415 msgstr ""
5416
5417-#: src/lrz.c:201 src/lsz.c:230
5418+#: src/lsz.c:230 src/lrz.c:201
5419 #, c-format
5420 msgid "caught signal %d; exiting"
5421 msgstr ""
5422@@ -45,7 +48,7 @@ msgstr ""
5423 msgid "framelength out of range 32..%ld"
5424 msgstr ""
5425
5426-#: src/lrz.c:323 src/lsz.c:450
5427+#: src/lsz.c:450 src/lrz.c:323
5428 msgid "min_bps"
5429 msgstr ""
5430
5431@@ -53,65 +56,65 @@ msgstr ""
5432 msgid "min_bps must be >= 0"
5433 msgstr ""
5434
5435-#: src/lrz.c:329 src/lsz.c:458
5436+#: src/lsz.c:458 src/lrz.c:329
5437 msgid "min_bps_time"
5438 msgstr ""
5439
5440-#: src/lrz.c:331 src/lsz.c:460
5441+#: src/lsz.c:460 src/lrz.c:331
5442 msgid "min_bps_time must be > 1"
5443 msgstr ""
5444
5445-#: src/lrz.c:347 src/lsz.c:484
5446+#: src/lsz.c:484 src/lrz.c:347
5447 msgid "hour to large (0..23)"
5448 msgstr ""
5449
5450-#: src/lrz.c:349 src/lsz.c:486
5451+#: src/lsz.c:486 src/lrz.c:349
5452 msgid "unparsable stop time\n"
5453 msgstr ""
5454
5455-#: src/lrz.c:353 src/lsz.c:490
5456+#: src/lsz.c:490 src/lrz.c:353
5457 msgid "minute to large (0..59)"
5458 msgstr ""
5459
5460-#: src/lrz.c:363 src/lrz.c:370 src/lsz.c:500 src/lsz.c:507
5461+#: src/lsz.c:500 src/lsz.c:507 src/lrz.c:363 src/lrz.c:370
5462 msgid "stop time to small"
5463 msgstr ""
5464
5465-#: src/lrz.c:368 src/lsz.c:505
5466+#: src/lsz.c:505 src/lrz.c:368
5467 msgid "stop-at"
5468 msgstr ""
5469
5470-#: src/lrz.c:399 src/lsz.c:516
5471+#: src/lsz.c:516 src/lrz.c:399
5472 msgid "timeout"
5473 msgstr ""
5474
5475-#: src/lrz.c:401 src/lsz.c:518
5476+#: src/lsz.c:518 src/lrz.c:401
5477 msgid "timeout out of range 10..1000"
5478 msgstr ""
5479
5480-#: src/lrz.c:417 src/lsz.c:526
5481+#: src/lsz.c:526 src/lrz.c:417
5482 msgid "security violation: can't do that under restricted shell\n"
5483 msgstr ""
5484
5485-#: src/lrz.c:407 src/lsz.c:533
5486+#: src/lsz.c:533 src/lrz.c:407
5487 msgid "window size"
5488 msgstr ""
5489
5490-#: src/lrz.c:432 src/lrz.c:439 src/lsz.c:556 src/lsz.c:563
5491+#: src/lsz.c:556 src/lsz.c:563 src/lrz.c:432 src/lrz.c:439
5492 msgid "cannot turnoff syslog"
5493 msgstr ""
5494
5495-#: src/lrz.c:454 src/lsz.c:571
5496+#: src/lsz.c:571 src/lrz.c:454
5497 msgid "startup delay"
5498 msgstr ""
5499
5500+#: src/lsz.c:583 src/lsz.c:692 src/lsz.c:831 src/lsz.c:1080 src/zreadline.c:127
5501 #: src/lrz.c:470 src/lrz.c:755 src/lrz.c:1117 src/lrz.c:1243 src/lrz.c:1300
5502-#: src/lrz.c:1317 src/lrz.c:1332 src/lrz.c:1431 src/lsz.c:583 src/lsz.c:692
5503-#: src/lsz.c:831 src/lsz.c:1080 src/zreadline.c:127
5504+#: src/lrz.c:1317 src/lrz.c:1332 src/lrz.c:1431
5505 msgid "out of memory"
5506 msgstr ""
5507
5508-#: src/lrz.c:480 src/lsz.c:595
5509+#: src/lsz.c:595 src/lrz.c:480
5510 msgid "this program was never intended to be used setuid\n"
5511 msgstr ""
5512
5513@@ -120,14 +123,15 @@ msgid "need at least one file to send"
5514 msgstr ""
5515
5516 #: src/lsz.c:628
5517+#, c-format
5518 msgid "Can't send command in restricted mode\n"
5519 msgstr ""
5520
5521-#: src/lrz.c:524 src/lsz.c:655
5522+#: src/lsz.c:655 src/lrz.c:524
5523 msgid "hostname too long\n"
5524 msgstr ""
5525
5526-#: src/lrz.c:539 src/lsz.c:670
5527+#: src/lsz.c:670 src/lrz.c:539
5528 msgid "illegal server address\n"
5529 msgstr ""
5530
5531@@ -135,11 +139,11 @@ msgstr ""
5532 msgid "can read only one file from stdin"
5533 msgstr ""
5534
5535-#: src/lrz.c:571 src/lsz.c:806
5536+#: src/lsz.c:806 src/lrz.c:571
5537 msgid "Transfer incomplete\n"
5538 msgstr ""
5539
5540-#: src/lrz.c:573 src/lsz.c:808
5541+#: src/lsz.c:808 src/lrz.c:573
5542 msgid "Transfer complete\n"
5543 msgstr ""
5544
5545@@ -199,7 +203,7 @@ msgstr ""
5546 msgid "security violation: not allowed to upload from %s"
5547 msgstr ""
5548
5549-#: src/lrz.c:1392 src/lsz.c:1046
5550+#: src/lsz.c:1046 src/lrz.c:1392
5551 #, c-format
5552 msgid "cannot open %s"
5553 msgstr ""
5554@@ -290,12 +294,12 @@ msgstr ""
5555 msgid "Retry Count Exceeded"
5556 msgstr ""
5557
5558-#: src/lrz.c:593 src/lsz.c:1521
5559+#: src/lsz.c:1521 src/lrz.c:593
5560 #, c-format
5561 msgid "Try `%s --help' for more information.\n"
5562 msgstr ""
5563
5564-#: src/lrz.c:598 src/lsz.c:1526
5565+#: src/lsz.c:1526 src/lrz.c:598
5566 #, c-format
5567 msgid "%s version %s\n"
5568 msgstr ""
5569@@ -314,7 +318,7 @@ msgstr ""
5570 msgid "Send file(s) with ZMODEM/YMODEM/XMODEM protocol\n"
5571 msgstr ""
5572
5573-#: src/lrz.c:604 src/lsz.c:1534
5574+#: src/lsz.c:1534 src/lrz.c:604
5575 msgid ""
5576 "    (X) = option applies to XMODEM only\n"
5577 "    (Y) = option applies to YMODEM only\n"
5578@@ -378,7 +382,7 @@ msgstr ""
5579 msgid "got ZRQINIT"
5580 msgstr ""
5581
5582-#: src/lrz.c:1074 src/lrz.c:1787 src/lsz.c:1792
5583+#: src/lsz.c:1792 src/lrz.c:1074 src/lrz.c:1787
5584 msgid "got ZCAN"
5585 msgstr ""
5586
5587@@ -438,6 +442,10 @@ msgid ""
5588 "countem: Total %d %ld\n"
5589 msgstr ""
5590
5591+#: src/zm.c:91
5592+msgid "Bad CRC"
5593+msgstr ""
5594+
5595 #: src/zm.c:244
5596 #, c-format
5597 msgid "Bad escape sequence %x"
5598@@ -447,7 +455,7 @@ msgstr ""
5599 msgid "Sender Canceled"
5600 msgstr ""
5601
5602-#: src/lrz.c:997 src/zm.c:585 src/zm.c:644
5603+#: src/zm.c:585 src/zm.c:644 src/lrz.c:997
5604 msgid "TIMEOUT"
5605 msgstr ""
5606
5607@@ -678,13 +686,11 @@ msgstr ""
5608 msgid "Skipped"
5609 msgstr ""
5610
5611-#. too bad
5612 #: src/lrz.c:2064
5613 #, c-format
5614 msgid "rzfile: bps rate %ld below min %ld"
5615 msgstr ""
5616
5617-#. too bad
5618 #: src/lrz.c:2079
5619 msgid "rzfile: reached stop time"
5620 msgstr ""
5621diff -uprN clean/lrzsz-0.12.20/po/Makevars lrzsz-0.12.20/po/Makevars
5622--- clean/lrzsz-0.12.20/po/Makevars	1970-01-01 01:00:00.000000000 +0100
5623+++ lrzsz-0.12.20/po/Makevars	2019-11-25 18:09:52.000000000 +0000
5624@@ -0,0 +1,78 @@
5625+# Makefile variables for PO directory in any package using GNU gettext.
5626+
5627+# Usually the message domain is the same as the package name.
5628+DOMAIN = $(PACKAGE)
5629+
5630+# These two variables depend on the location of this directory.
5631+subdir = po
5632+top_builddir = ..
5633+
5634+# These options get passed to xgettext.
5635+XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
5636+
5637+# This is the copyright holder that gets inserted into the header of the
5638+# $(DOMAIN).pot file.  Set this to the copyright holder of the surrounding
5639+# package.  (Note that the msgstr strings, extracted from the package's
5640+# sources, belong to the copyright holder of the package.)  Translators are
5641+# expected to transfer the copyright for their translations to this person
5642+# or entity, or to disclaim their copyright.  The empty string stands for
5643+# the public domain; in this case the translators are expected to disclaim
5644+# their copyright.
5645+COPYRIGHT_HOLDER = Free Software Foundation, Inc.
5646+
5647+# This tells whether or not to prepend "GNU " prefix to the package
5648+# name that gets inserted into the header of the $(DOMAIN).pot file.
5649+# Possible values are "yes", "no", or empty.  If it is empty, try to
5650+# detect it automatically by scanning the files in $(top_srcdir) for
5651+# "GNU packagename" string.
5652+PACKAGE_GNU =
5653+
5654+# This is the email address or URL to which the translators shall report
5655+# bugs in the untranslated strings:
5656+# - Strings which are not entire sentences, see the maintainer guidelines
5657+#   in the GNU gettext documentation, section 'Preparing Strings'.
5658+# - Strings which use unclear terms or require additional context to be
5659+#   understood.
5660+# - Strings which make invalid assumptions about notation of date, time or
5661+#   money.
5662+# - Pluralisation problems.
5663+# - Incorrect English spelling.
5664+# - Incorrect formatting.
5665+# It can be your email address, or a mailing list address where translators
5666+# can write to without being subscribed, or the URL of a web page through
5667+# which the translators can contact you.
5668+MSGID_BUGS_ADDRESS =
5669+
5670+# This is the list of locale categories, beyond LC_MESSAGES, for which the
5671+# message catalogs shall be used.  It is usually empty.
5672+EXTRA_LOCALE_CATEGORIES =
5673+
5674+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
5675+# context.  Possible values are "yes" and "no".  Set this to yes if the
5676+# package uses functions taking also a message context, like pgettext(), or
5677+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
5678+USE_MSGCTXT = no
5679+
5680+# These options get passed to msgmerge.
5681+# Useful options are in particular:
5682+#   --previous            to keep previous msgids of translated messages,
5683+#   --quiet               to reduce the verbosity.
5684+MSGMERGE_OPTIONS =
5685+
5686+# These options get passed to msginit.
5687+# If you want to disable line wrapping when writing PO files, add
5688+# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
5689+# MSGINIT_OPTIONS.
5690+MSGINIT_OPTIONS =
5691+
5692+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
5693+# has changed.  Possible values are "yes" and "no".  Set this to no if
5694+# the POT file is checked in the repository and the version control
5695+# program ignores timestamps.
5696+PO_DEPENDS_ON_POT = yes
5697+
5698+# This tells whether or not to forcibly update $(DOMAIN).pot and
5699+# regenerate PO files on "make dist".  Possible values are "yes" and
5700+# "no".  Set this to no if the POT file and PO files are maintained
5701+# externally.
5702+DIST_DEPENDS_ON_UPDATE_PO = yes
5703diff -uprN clean/lrzsz-0.12.20/po/stamp-cat-id lrzsz-0.12.20/po/stamp-cat-id
5704--- clean/lrzsz-0.12.20/po/stamp-cat-id	1998-12-30 07:50:01.000000000 +0000
5705+++ lrzsz-0.12.20/po/stamp-cat-id	1970-01-01 01:00:00.000000000 +0100
5706@@ -1 +0,0 @@
5707-timestamp
5708diff -uprN clean/lrzsz-0.12.20/po/stamp-po lrzsz-0.12.20/po/stamp-po
5709--- clean/lrzsz-0.12.20/po/stamp-po	1970-01-01 01:00:00.000000000 +0100
5710+++ lrzsz-0.12.20/po/stamp-po	2019-11-26 11:42:09.000000000 +0000
5711@@ -0,0 +1 @@
5712+timestamp
5713diff -uprN clean/lrzsz-0.12.20/src/Makefile.am lrzsz-0.12.20/src/Makefile.am
5714--- clean/lrzsz-0.12.20/src/Makefile.am	1998-12-28 08:38:47.000000000 +0000
5715+++ lrzsz-0.12.20/src/Makefile.am	2019-11-25 16:22:49.000000000 +0000
5716@@ -2,13 +2,11 @@ bin_PROGRAMS=lrz lsz
5717 lrz_SOURCES=lrz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c
5718 lsz_SOURCES=lsz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c
5719 noinst_HEADERS = timing.h zglobal.h zmodem.h
5720-datadir = $(prefix)/@DATADIRNAME@
5721+datadir = $(prefix)/share
5722 localedir = $(datadir)/locale
5723-CFLAGS=@CFLAGS@
5724 DISTCLEAN_FILES=lrzszbug
5725
5726-LDADD = ../lib/libzmodem.a @INTLLIBS@
5727-AUTOMAKE_OPTIONS=ansi2knr
5728+LDADD = ../lib/libzmodem.a @LIBINTL@
5729 EXTRA_DIST = ansi2knr.1 ansi2knr.c lrzszbug.in
5730 INCLUDES = -I.. -I$(srcdir) -I$(top_srcdir)/src -I../intl -I$(top_srcdir)/lib
5731 #DEFS = -DLOCALEDIR=\"$(localedir)\" -DOS=\"@host_os@\" -DCPU=\"@host_cpu@\"
5732diff -uprN clean/lrzsz-0.12.20/src/zglobal.h lrzsz-0.12.20/src/zglobal.h
5733--- clean/lrzsz-0.12.20/src/zglobal.h	1998-12-29 12:34:59.000000000 +0000
5734+++ lrzsz-0.12.20/src/zglobal.h	2019-11-25 16:32:42.000000000 +0000
5735@@ -180,9 +180,6 @@ struct termios;
5736 #if HAVE_LOCALE_H
5737 # include <locale.h>
5738 #endif
5739-#if !HAVE_SETLOCALE
5740-# define setlocale(Category, Locale) /* empty */
5741-#endif
5742
5743 #if ENABLE_NLS
5744 # include <libintl.h>
5745diff -uprN clean/lrzsz-0.12.20/stamp-h.in lrzsz-0.12.20/stamp-h.in
5746--- clean/lrzsz-0.12.20/stamp-h.in	1998-12-30 07:51:07.000000000 +0000
5747+++ lrzsz-0.12.20/stamp-h.in	1970-01-01 01:00:00.000000000 +0100
5748@@ -1 +0,0 @@
5749-timestamp
5750