From 1aea045b09fd01fd02ff712d981895c7ead00562 Mon Sep 17 00:00:00 2001 From: joerg Date: Fri, 19 Sep 2008 20:02:23 +0000 Subject: Fix build on amd64. I'm taking the aggressive approach of using va_copy here, the #if can be easily modified for those platforms missing it. --- shells/es/distinfo | 8 +++++--- shells/es/patches/patch-af | 10 ++++++++-- shells/es/patches/patch-ag | 40 +++++++++++++++++++++++++++++++++++++--- shells/es/patches/patch-ah | 13 +++++++++++++ shells/es/patches/patch-ai | 16 ++++++++++++++++ 5 files changed, 79 insertions(+), 8 deletions(-) create mode 100644 shells/es/patches/patch-ah create mode 100644 shells/es/patches/patch-ai (limited to 'shells') diff --git a/shells/es/distinfo b/shells/es/distinfo index 35eb0882f2b..c052e1206f5 100644 --- a/shells/es/distinfo +++ b/shells/es/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.11 2006/01/08 20:59:05 joerg Exp $ +$NetBSD: distinfo,v 1.12 2008/09/19 20:02:23 joerg Exp $ SHA1 (es-0.9-alpha1.tar.gz) = 5027c9dade742c437b8e471a356d15883ebc4732 RMD160 (es-0.9-alpha1.tar.gz) = ca2307202ab6e65c49188e3228d1af6426a23952 @@ -8,5 +8,7 @@ SHA1 (patch-ab) = bd58fbbf71d5c9dc76bdc380cb7b93ad3f5f1c72 SHA1 (patch-ac) = 978debd8079eedf7d09862e9946bfd9957c46732 SHA1 (patch-ad) = 63bf69c25dc9e610b9375685459a1fd05ea66e1e SHA1 (patch-ae) = 3625310b30bbf64f24d6efbcd1864b7e8a92ff59 -SHA1 (patch-af) = e637be09b74092fb2fc5c34a7c09b824da4eea26 -SHA1 (patch-ag) = 04e043548a7dc3502b158d5b1a7e22602e237b68 +SHA1 (patch-af) = 58f29fb3e35236810efc14f1b25fcc4412736404 +SHA1 (patch-ag) = adc7c22ebc2f35f76f85a1ef25b2a1a18a19898e +SHA1 (patch-ah) = 19427378a3e9a40681bad72921cd98f7a6b3a79d +SHA1 (patch-ai) = 3d9beee005db42b4b7af1bc5529b23d1347a8778 diff --git a/shells/es/patches/patch-af b/shells/es/patches/patch-af index f180b924b2c..e520307fdac 100644 --- a/shells/es/patches/patch-af +++ b/shells/es/patches/patch-af @@ -1,6 +1,6 @@ -$NetBSD: patch-af,v 1.1 2005/03/10 15:18:31 tv Exp $ +$NetBSD: patch-af,v 1.2 2008/09/19 20:02:23 joerg Exp $ ---- config.h.orig 1995-05-30 07:13:53.000000000 -0400 +--- config.h.orig 1995-05-30 13:13:53.000000000 +0200 +++ config.h @@ -378,6 +378,15 @@ #endif @@ -18,3 +18,9 @@ $NetBSD: patch-af,v 1.1 2005/03/10 15:18:31 tv Exp $ /* * default defaults -- don't change this section +@@ -533,3 +542,5 @@ + #undef SYSV_SIGNALS + #define SYSV_SIGNALS 0 + #endif ++ ++#include diff --git a/shells/es/patches/patch-ag b/shells/es/patches/patch-ag index c70f443c006..664f877341f 100644 --- a/shells/es/patches/patch-ag +++ b/shells/es/patches/patch-ag @@ -1,8 +1,17 @@ -$NetBSD: patch-ag,v 1.1 2006/01/08 20:59:05 joerg Exp $ +$NetBSD: patch-ag,v 1.2 2008/09/19 20:02:23 joerg Exp $ ---- print.c.orig 2006-01-08 20:57:49.000000000 +0000 +--- print.c.orig 1995-05-30 13:13:51.000000000 +0200 +++ print.c -@@ -90,7 +90,7 @@ static void intconv(Format *format, unsi +@@ -3,6 +3,8 @@ + #include "es.h" + #include "print.h" + ++#include ++ + #define MAXCONV 256 + + /* +@@ -90,7 +92,7 @@ static void intconv(Format *format, unsi if (flags & FMT_long) n = va_arg(format->args, long); else if (flags & FMT_short) @@ -11,3 +20,28 @@ $NetBSD: patch-ag,v 1.1 2006/01/08 20:59:05 joerg Exp $ else n = va_arg(format->args, int); +@@ -267,12 +269,23 @@ extern int printfmt(Format *format, cons + + extern int fmtprint VARARGS2(Format *, format, const char *, fmt) { + int n = -format->flushed; +- va_list saveargs = format->args; ++ va_list saveargs; ++ ++#if 1 ++ va_copy(saveargs, format->args); ++#else ++ saveargs = format->args; ++#endif + + VA_START(format->args, fmt); + n += printfmt(format, fmt); + va_end(format->args); ++ ++#if 1 ++ va_copy(format->args, saveargs); ++#else + format->args = saveargs; ++#endif + + return n + format->flushed; + } diff --git a/shells/es/patches/patch-ah b/shells/es/patches/patch-ah new file mode 100644 index 00000000000..60d320617e8 --- /dev/null +++ b/shells/es/patches/patch-ah @@ -0,0 +1,13 @@ +$NetBSD: patch-ah,v 1.1 2008/09/19 20:02:23 joerg Exp $ + +--- gc.c.orig 2008-09-19 21:53:44.000000000 +0200 ++++ gc.c +@@ -294,7 +294,7 @@ extern void globalroot(void *addr) { + + /* not portable to word addressed machines */ + #define TAG(p) (((Tag **) p)[-1]) +-#define FORWARDED(tagp) (((int) tagp) & 1) ++#define FORWARDED(tagp) (((size_t) tagp) & 1) + #define FOLLOWTO(p) ((Tag *) (((char *) p) + 1)) + #define FOLLOW(tagp) ((void *) (((char *) tagp) - 1)) + diff --git a/shells/es/patches/patch-ai b/shells/es/patches/patch-ai new file mode 100644 index 00000000000..bbd8b425284 --- /dev/null +++ b/shells/es/patches/patch-ai @@ -0,0 +1,16 @@ +$NetBSD: patch-ai,v 1.1 2008/09/19 20:02:23 joerg Exp $ + +--- str.c.orig 2008-09-19 21:59:39.000000000 +0200 ++++ str.c +@@ -21,7 +21,11 @@ extern char *strv(const char *fmt, va_li + gcdisable(); + buf = openbuffer(0); + format.u.p = buf; ++#if 1 ++ va_copy(format.args, args); ++#else + format.args = args; ++#endif + format.buf = buf->str; + format.bufbegin = buf->str; + format.bufend = buf->str + buf->len; -- cgit v1.2.3