Parcourir la source

initial port to Tru64/OSF1 4.0F and IRIX 6.5.21m (still unfinished, because Tru64 still has one more problem and on IRIX RPM segfaults although it now builds)

Ralf S. Engelschall il y a 21 ans
Parent
commit
d51d6d4f8a

+ 1 - 0
openpkg/HISTORY

@@ -2,6 +2,7 @@
 2004
 ====
 
+20040415 initial port to Tru64/OSF1 4.0F and IRIX 6.5.21m
 20040412 remove RPM's "lib64" hack to port to NetBSD/sparc64
 20040410 fix GNU tar patch
 20040408 upgraded to GNU shtool 2.0b3

+ 6 - 3
openpkg/openpkg.spec

@@ -39,7 +39,7 @@
 #   o any cc(1)
 
 #   the package version/release
-%define       V_openpkg  20040512
+%define       V_openpkg  20040515
 
 #   the used software versions
 %define       V_rpm      4.2.1
@@ -239,7 +239,6 @@ Provides:     openpkg = 2.0.3-2.0.3
     echo >>.buildenv '    fi'
     echo >>.buildenv '}'
     echo >>.buildenv 'VERBOSE () {'
-    echo >>.buildenv '    set +x'
     echo >>.buildenv '    if [ -f "%{_specdir}/rpmtool" ]; then'
     echo >>.buildenv '        echo "$*" | sh %{_specdir}/rpmtool msg'
     echo >>.buildenv '    else'
@@ -491,6 +490,10 @@ Provides:     openpkg = 2.0.3-2.0.3
     ) || exit $?
     ( cd beecrypt-%{V_beecrypt}
       ${l_patch} -p0 <`SOURCE beecrypt.patch`
+      sh $shtool subst \
+          -e 's;^[ 	][ 	]*#;#;' \
+          aes.c base64.c blowfish.c entropy.c fips186.c fips186.h md5.c \
+          md5.h mp.c mtprng.c mtprng.h sha1.c sha1.h sha256.c sha256.h timestamp.c
     ) || exit $?
 
     #   display verbosity header
@@ -583,7 +586,7 @@ Provides:     openpkg = 2.0.3-2.0.3
     #   build ZLIB library
     ( cd zlib-%{V_zlib}
       CC="${l_cc}" CFLAGS="-O" ./configure
-      ${l_make} CC="${l_cc}" CFLAGS="-O" libz.a || exit $?
+      ${l_make} CC="${l_cc}" libz.a || exit $? # intentionally do not pass CFLAGS here
     ) || exit $?
 
     #   display verbosity header

+ 3 - 3
openpkg/rpm.patch.bugfix

@@ -10,7 +10,7 @@
 ##  'patch' tool to upgrade those files. Each patch snippet is annotated
 ##  with a short description.
 ##
-##  Created on: 12-May-2004
+##  Created on: 15-May-2004
 ##
 ##  ATTENTION: THIS PATCH FILE WAS AUTO-GENERATED FROM AN OPENPKG
 ##             RPM CVS REPOSITORY, HENCE DO NOT EDIT THIS FILE.
@@ -50,7 +50,7 @@ Index: build/parsePrep.c
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -416,7 +417,7 @@
  AC_CHECK_HEADER([beecrypt/beecrypt.h], [
  	AC_CHECK_LIB(beecrypt, mpfprintln, [
@@ -67,7 +67,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -1274,7 +1299,6 @@
  	python/rpmdb/Makefile
  	python/test/Makefile

+ 5 - 5
openpkg/rpm.patch.feature

@@ -10,7 +10,7 @@
 ##  'patch' tool to upgrade those files. Each patch snippet is annotated
 ##  with a short description.
 ##
-##  Created on: 12-May-2004
+##  Created on: 15-May-2004
 ##
 ##  ATTENTION: THIS PATCH FILE WAS AUTO-GENERATED FROM AN OPENPKG
 ##             RPM CVS REPOSITORY, HENCE DO NOT EDIT THIS FILE.
@@ -837,7 +837,7 @@ Index: build/spec.c
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -53,7 +53,7 @@
  AS=${AS-as}
  AC_SUBST(AS)
@@ -871,7 +871,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -310,7 +311,7 @@
  WITH_ZLIB_SUBDIR=
  WITH_ZLIB_INCLUDE=
@@ -889,7 +889,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -324,38 +325,38 @@
  
  localdone=
@@ -967,7 +967,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -1200,12 +1199,12 @@
  AC_SUBST(LOCALEDIR)
  LIBDIR="`echo $libdir | sed 's-/lib$-/%{_lib}-'`"

+ 174 - 21
openpkg/rpm.patch.porting

@@ -10,7 +10,7 @@
 ##  'patch' tool to upgrade those files. Each patch snippet is annotated
 ##  with a short description.
 ##
-##  Created on: 12-May-2004
+##  Created on: 15-May-2004
 ##
 ##  ATTENTION: THIS PATCH FILE WAS AUTO-GENERATED FROM AN OPENPKG
 ##             RPM CVS REPOSITORY, HENCE DO NOT EDIT THIS FILE.
@@ -38,7 +38,7 @@ Index: ltconfig
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -446,14 +447,14 @@
      AC_CHECK_LIB(socket, socket)
  ])
@@ -68,7 +68,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -963,12 +964,13 @@
  AC_CHECK_FUNCS(getpassphrase)
  
@@ -91,7 +91,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -1141,9 +1143,6 @@
  
  dnl XXX Choose /usr/lib or /usr/lib64 for library installs.
@@ -113,7 +113,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: configure.ac
 --- configure.ac	2 Jul 2003 19:20:52 -0000	1.1.1.4
-+++ configure.ac	11 May 2004 07:14:52 -0000
++++ configure.ac	12 May 2004 14:34:30 -0000	1.3
 @@ -1249,11 +1248,37 @@
  
  AC_SUBST(OBJDUMP)
@@ -160,7 +160,7 @@ Index: configure.ac
 +---------------------------------------------------------------------------
 Index: popt/configure.ac
 --- popt/configure.ac	27 Mar 2003 17:23:18 -0000	1.1.1.3
-+++ popt/configure.ac	12 May 2004 13:26:31 -0000
++++ popt/configure.ac	12 May 2004 14:34:35 -0000	1.2
 @@ -53,9 +53,6 @@
  
  dnl XXX Choose /usr/lib or /usr/lib64 for library installs.
@@ -351,10 +351,11 @@ Index: tools/Makefile.in
 +---------------------------------------------------------------------------
 | Drop GCC "inline" attribute if not compiling with GCC.
 | Workaround some other GCC'isms, too.
+| Do not take over "const" replacements from Zlib.
 +---------------------------------------------------------------------------
 Index: file/system.h
 --- file/system.h	24 Jan 2003 19:41:56 -0000	1.1.1.1
-+++ file/system.h	18 Apr 2004 11:17:25 -0000
++++ file/system.h	14 May 2004 20:36:49 -0000
 @@ -13,6 +13,9 @@
  #endif
  
@@ -374,7 +375,15 @@ Index: file/system.h
  #endif
  #endif
  
-@@ -246,7 +251,11 @@
+@@ -194,6 +199,7 @@
+ 
+ #ifdef HAVE_LIBZ
+ #include <zlib.h>
++#undef const
+ #endif
+ 
+ #ifndef HAVE_STRERROR
+@@ -246,7 +252,11 @@
   */
  /*@-shadow@*/
  /*@unused@*/ /*@exits@*/ /*@only@*/
@@ -386,7 +395,7 @@ Index: file/system.h
  	/*@globals fileSystem @*/
  	/*@modifies fileSystem @*/
  {
-@@ -286,9 +295,33 @@
+@@ -286,9 +296,33 @@
  
  #if !defined(__LCLINT__)
  /* Memory allocation via macro defs to get meaningful locations from mtrace() */
@@ -420,7 +429,7 @@ Index: file/system.h
  #define	xstrdup(_str)	(strcpy(xmalloc(strlen(_str)+1), (_str)))
  #endif
  
-@@ -314,9 +347,14 @@
+@@ -314,9 +348,14 @@
  
  #if defined(__LCLINT__)
  #define FILE_RCSID(id)
@@ -456,6 +465,140 @@ Index: file/file.h
  #define BIT(A)   (1 << (A))
  #define STRING_IGNORE_LOWERCASE		BIT(0)
 
++---------------------------------------------------------------------------
+| Add int32_t detection and automatic fallback support.
++---------------------------------------------------------------------------
+Index: file/config.h.in
+--- file/config.h.in	7 Mar 2003 19:39:18 -0000	1.1.1.1
++++ file/config.h.in	14 May 2004 20:40:17 -0000
+@@ -106,6 +106,9 @@
+ /* Define to 1 if you have the <unistd.h> header file. */
+ #undef HAVE_UNISTD_H
+ 
++/* Define to 1 if you have the `vsnprintf' function. */
++#undef HAVE_VSNPRINTF
++
+ /* Define to 1 if `major', `minor', and `makedev' are declared in <mkdev.h>.
+    */
+ #undef MAJOR_IN_MKDEV
+@@ -162,6 +165,9 @@
+ /* Define to empty if `const' does not conform to ANSI C. */
+ #undef const
+ 
++/* int32_t */
++#undef int32_t
++
+ /* Define to `long' if <sys/types.h> does not define. */
+ #undef off_t
+ 
+
++---------------------------------------------------------------------------
+| Add int32_t detection and automatic fallback support.
++---------------------------------------------------------------------------
+Index: file/configure.ac
+--- file/configure.ac	1 Dec 2002 21:34:06 -0000	1.1.1.1
++++ file/configure.ac	14 May 2004 20:39:10 -0000
+@@ -92,6 +92,7 @@
+ AC_CHECK_TYPE_STDC(uint8_t, unsigned char)
+ AC_CHECK_TYPE_STDC(uint16_t, unsigned short)
+ AC_CHECK_TYPE_STDC(uint32_t, unsigned int)
++AC_CHECK_TYPE_STDC(int32_t, int)
+ AC_C_LONG_LONG
+ if test $ac_cv_c_long_long = yes; then
+   long64='unsigned long long';
+@@ -107,7 +108,7 @@
+ AC_CHECK_SIZEOF_STDC_HEADERS(uint64_t, 0)
+ 
+ dnl Checks for functions
+-AC_CHECK_FUNCS(error mtrace mkstemp mmap strdup strerror strtoul)
++AC_CHECK_FUNCS(error mtrace mkstemp mmap strdup strerror strtoul vsnprintf)
+ 
+ dnl Checks for libraries
+ AC_CHECK_LIB(z, gzopen)
+
++---------------------------------------------------------------------------
+| Add int32_t detection and automatic fallback support.
++---------------------------------------------------------------------------
+Index: file/configure
+--- file/configure	16 Jul 2003 17:05:25 -0000	1.1.1.2
++++ file/configure	14 May 2004 20:40:04 -0000
+@@ -10847,6 +10847,46 @@
+ 
+ fi
+ 
++echo "$as_me:$LINENO: checking for int32_t" >&5
++echo $ECHO_N "checking for int32_t... $ECHO_C" >&6
++if test "${ac_cv_type_int32_t+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++#line $LINENO "configure"
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#if HAVE_STDINT_H
++#include <stdint.h>
++#endif
++#include <sys/types.h>
++#if STDC_HEADERS
++#include <stdlib.h>
++#include <stddef.h>
++#endif
++_ACEOF
++if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
++  $EGREP "(^|[^a-zA-Z_0-9])int32_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
++  ac_cv_type_int32_t=yes
++else
++  ac_cv_type_int32_t=no
++fi
++rm -f conftest*
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_type_int32_t" >&5
++echo "${ECHO_T}$ac_cv_type_int32_t" >&6
++if test $ac_cv_type_int32_t = no; then
++
++cat >>confdefs.h <<\_ACEOF
++#define int32_t int
++_ACEOF
++
++fi
++
+ echo "$as_me:$LINENO: checking for long long" >&5
+ echo $ECHO_N "checking for long long... $ECHO_C" >&6
+ if test "${ac_cv_c_long_long+set}" = set; then
+@@ -11220,7 +11260,8 @@
+ 
+ 
+ 
+-for ac_func in error mtrace mkstemp mmap strdup strerror strtoul
++
++for ac_func in error mtrace mkstemp mmap strdup strerror strtoul vsnprintf
+ do
+ as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ echo "$as_me:$LINENO: checking for $ac_func" >&5
+
++---------------------------------------------------------------------------
+| Fallback to vsprintf(3) if vsnprintf(3) does not exist.
++---------------------------------------------------------------------------
+Index: file/print.c
+--- file/print.c	24 Jan 2003 19:41:56 -0000	1.1.1.1
++++ file/print.c	14 May 2004 20:39:45 -0000
+@@ -187,7 +187,11 @@
+ 
+ 	va_start(va, f);
+ /*@-boundswrite@*/
++#ifdef HAVE_VSNPRINTF
+ 	rc = vsnprintf(fm->obp, fm->nob, f, va);
++#else
++	rc = vsprintf(fm->obp, f, va);
++#endif
+ /*@=boundswrite@*/
+ 	va_end(va);
+ 
+
 +---------------------------------------------------------------------------
 | Use GNU libtool's weaker -static (link with own static libraries)
 | instead of the strong -all-static (link even with static libc, etc),
@@ -640,7 +783,7 @@ Index: rpmio/fts.h
 +---------------------------------------------------------------------------
 Index: rpmio/fts.c
 --- rpmio/fts.c	18 Jan 2003 16:13:17 -0000	1.1.1.3
-+++ rpmio/fts.c	18 Apr 2004 11:16:24 -0000
++++ rpmio/fts.c	14 May 2004 20:53:39 -0000
 @@ -34,6 +34,8 @@
  static char sccsid[] = "@(#)fts.c	8.6 (Berkeley) 8/14/94";
  #endif /* LIBC_SCCS and not lint */
@@ -650,7 +793,7 @@ Index: rpmio/fts.c
  #if defined(_LIBC)
  #include <sys/param.h>
  #include <include/sys/stat.h>
-@@ -53,12 +55,27 @@
+@@ -53,12 +55,33 @@
  #   define _STAT_VER		0
  #   define __fxstat64(_stat_ver, _fd, _sbp)	fstat((_fd), (_sbp))
  #endif
@@ -675,11 +818,17 @@ Index: rpmio/fts.c
 +#   define _STAT_VER            0
 +#   define __fxstat64(_stat_ver, _fd, _sbp)     fstat((_fd), (_sbp))
 +#   define _D_EXACT_NAMLEN(d) ((d)->d_namlen)
++#endif
++#if defined(OPENPKG_IRIX64)
++#   define __errno_location()   (&errno)
++#   define dirfd(dirp)          -1
++#   define __fxstat64(_stat_ver, _fd, _sbp)     fstat((_fd), (_sbp))
++#   define _D_EXACT_NAMLEN(d) ((d)->d_reclen)
 +#endif
  #include "system.h"
  #include "fts.h"
  #include "rpmio.h"
-@@ -73,7 +90,12 @@
+@@ -73,7 +96,12 @@
  /* Largest alignment size needed, minus one.
     Usually long double is the worst case.  */
  #ifndef ALIGNBYTES
@@ -692,7 +841,7 @@ Index: rpmio/fts.c
  #endif
  /* Align P to that size.  */
  #ifndef ALIGN
-@@ -107,9 +129,13 @@
+@@ -107,9 +135,13 @@
  	/*@modifies fileSystem, internalState @*/;
  
  #ifndef MAX
@@ -733,7 +882,7 @@ Index: rpmio/rpmio.h
 +---------------------------------------------------------------------------
 Index: rpmio/rpmrpc.c
 --- rpmio/rpmrpc.c	29 May 2003 22:14:04 -0000	1.1.1.8
-+++ rpmio/rpmrpc.c	18 Apr 2004 11:15:27 -0000
++++ rpmio/rpmrpc.c	14 May 2004 20:53:59 -0000
 @@ -1079,6 +1079,8 @@
      return rc;
  }
@@ -777,7 +926,7 @@ Index: rpmio/rpmrpc.c
  /*@unchecked@*/
  static int ftpmagicdir = 0x8440291;
 -#define	ISFTPMAGIC(_dir) (!memcmp((_dir), &ftpmagicdir, sizeof(ftpmagicdir)))
-+#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__) && !defined(sun) && !defined(OPENPKG_UNIXWARE) && !defined(OPENPKG_DARWIN) && !defined(__osf__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__) && !defined(sun) && !defined(OPENPKG_UNIXWARE) && !defined(OPENPKG_DARWIN) && !defined(__osf__) && !defined(OPENPKG_IRIX64)
 +#define SETFTPMAGIC(_dir) ((_dir)->fd) = ftpmagicdir
 +#define ISFTPMAGIC(_dir) ((_dir)->fd == ftpmagicdir)
 +#else
@@ -930,7 +1079,7 @@ Index: rpmio/rpmrpc.c
 +    strncpy(dp->d_name, av[i].name, sizeof(dp->d_name) - 1);
 +    dp->d_name[sizeof(dp->d_name)-1] = '\0';
 +    dp->d_namlen = strlen(dp->d_name);
-+#elif defined(hpux) || defined(sun) || defined(OPENPKG_UNIXWARE) || defined(__osf__)
++#elif defined(hpux) || defined(sun) || defined(OPENPKG_UNIXWARE) || defined(__osf__) || defined(OPENPKG_IRIX64)
 +    /* XXX glob(3) uses REAL_DIR_ENTRY(dp) test on d_ino */
 +    dp->d_ino = i + 1;		/* W2DO? */
 +    dp->d_reclen = 0;		/* W2DO? */
@@ -970,7 +1119,7 @@ Index: rpmio/rpmrpc.c
 +---------------------------------------------------------------------------
 Index: system.h
 --- system.h	1 Mar 2003 19:53:08 -0000	1.1.1.10
-+++ system.h	22 Jan 2004 21:42:11 -0000	1.2
++++ system.h	15 May 2004 10:47:24 -0000
 @@ -256,10 +256,6 @@
  #include <err.h>
  #endif
@@ -988,7 +1137,7 @@ Index: system.h
 +---------------------------------------------------------------------------
 Index: system.h
 --- system.h	1 Mar 2003 19:53:08 -0000	1.1.1.10
-+++ system.h	22 Jan 2004 21:42:11 -0000	1.2
++++ system.h	15 May 2004 10:47:24 -0000
 @@ -550,7 +546,7 @@
  #define lchown chown
  #endif
@@ -1004,8 +1153,8 @@ Index: system.h
 +---------------------------------------------------------------------------
 Index: system.h
 --- system.h	1 Mar 2003 19:53:08 -0000	1.1.1.10
-+++ system.h	22 Jan 2004 21:42:11 -0000	1.2
-@@ -603,11 +599,16 @@
++++ system.h	15 May 2004 10:47:24 -0000
+@@ -603,11 +599,20 @@
  
  #if defined(__LCLINT__)
  #define FILE_RCSID(id)
@@ -1020,6 +1169,10 @@ Index: system.h
 +static const char *rcsid(const char *p) { \
 +        return rcsid(p = id); \
 +}
++#endif
++
++#ifndef HAVE_BASENAME
++extern char *basename(const char *);
  #endif
  
  #endif	/* H_SYSTEM */

+ 3 - 3
openpkg/rpm.patch.regen

@@ -10,7 +10,7 @@
 ##  'patch' tool to upgrade those files. Each patch snippet is annotated
 ##  with a short description.
 ##
-##  Created on: 12-May-2004
+##  Created on: 15-May-2004
 ##
 ##  ATTENTION: THIS PATCH FILE WAS AUTO-GENERATED FROM AN OPENPKG
 ##             RPM CVS REPOSITORY, HENCE DO NOT EDIT THIS FILE.
@@ -105,7 +105,7 @@ Index: config.h.in
 +---------------------------------------------------------------------------
 Index: configure
 --- configure	16 Jul 2003 17:05:55 -0000	1.1.1.23
-+++ configure	11 May 2004 12:06:15 -0000
++++ configure	12 May 2004 14:34:31 -0000	1.22
 @@ -467,7 +467,7 @@
  # include <unistd.h>
  #endif"
@@ -1150,7 +1150,7 @@ Index: configure
 +---------------------------------------------------------------------------
 Index: popt/configure
 --- popt/configure	16 Jul 2003 17:04:51 -0000	1.1.1.16
-+++ popt/configure	12 May 2004 13:27:20 -0000
++++ popt/configure	12 May 2004 14:34:35 -0000	1.18
 @@ -9359,9 +9359,6 @@
  
  

+ 1 - 1
openpkg/rpmtool

@@ -1339,7 +1339,7 @@ EOT
             echo . | awk '{ printf("\r"); }'
         fi
         echo "+----------------------------------${title}------------------------------------+"
-        expand -8 | sed -e 's; *$;;' | awk '{ printf("| %-75s |\n", substr($0, 0, 75)); }'
+        expand -t 8 | sed -e 's; *$;;' | awk '{ printf("| %-75s |\n", substr($0, 0, 75)); }'
         echo "+-----------------------------------------------------------------------------+"
         ;;
     check-class )

+ 11 - 0
openpkg/tar.patch

@@ -23,3 +23,14 @@ Index: src/utf8.c
  #endif
  
  struct langtab
+Index: src/xheader.c
+--- src/xheader.c.orig	2004-04-04 11:53:30.000000000 +0200
++++ src/xheader.c	2004-05-14 16:17:02.000000000 +0200
+@@ -21,6 +21,7 @@
+ #include <hash.h>
+ #include <quotearg.h>
+ #include <xstrtol.h>
++#include <stpcpy.h>
+ 
+ #include "common.h"
+