summary refs log tree commit diff
diff options
context:
space:
mode:
authorDan McGee <dpmcgee@gmail.com>2008-05-03 14:55:33 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2008-05-03 15:02:38 +0800
commite46fbc52b79410d9b236883060339f830c34818f (patch)
treee88f697e54e79a74fe04fb4b21009114038b7d4f
parent[ERROR] Set default exvwarning2 arg0 for errors during early initialisation (diff)
downloaddash-e46fbc52b79410d9b236883060339f830c34818f.tar.gz
dash-e46fbc52b79410d9b236883060339f830c34818f.zip
[SHELL] Fixed klibc/klcc build problems
klibc does not have mempcpy, so system.h must be included where this is used
to provide the replacement. glob.h doesn't exist, so we need to guard this
include with the HAVE_GLOB definition. Finally, klcc didn't like the syntax
of the main definition in mksignames, and the resulting program segfaulted
when trying to dereference any part of the argv array. Updating the main
function definition solved the problem.

Signed-off-by: Dan McGee <dpmcgee@gmail.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r--ChangeLog4
-rw-r--r--src/arith_yylex.c1
-rw-r--r--src/expand.c2
-rw-r--r--src/mksignames.c4
-rw-r--r--src/parser.c1
5 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 773b36e..d52c521 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-05-03  Dan McGee <dpmcgee@gmail.com>
+
+	* Fixed klibc/klcc build problems.
+
 2008-05-03  Herbert Xu <herbert@gondor.apana.org.au>
 
 	* Fixed _PATH_BSHELL warning.
diff --git a/src/arith_yylex.c b/src/arith_yylex.c
index 2c15657..c4458a4 100644
--- a/src/arith_yylex.c
+++ b/src/arith_yylex.c
@@ -41,6 +41,7 @@
 #include "shell.h"
 #include "memalloc.h"
 #include "syntax.h"
+#include "system.h"
 
 #if ARITH_BOR + 11 != ARITH_BORASS || ARITH_ASS + 11 != ARITH_EQ
 #error Arithmetic tokens are out of order.
diff --git a/src/expand.c b/src/expand.c
index 5986236..2c52781 100644
--- a/src/expand.c
+++ b/src/expand.c
@@ -46,7 +46,9 @@
 #include <limits.h>
 #include <string.h>
 #include <fnmatch.h>
+#ifdef HAVE_GLOB
 #include <glob.h>
+#endif
 #include <ctype.h>
 
 /*
diff --git a/src/mksignames.c b/src/mksignames.c
index 03b8742..a832eab 100644
--- a/src/mksignames.c
+++ b/src/mksignames.c
@@ -382,9 +382,7 @@ write_signames (stream)
 }
 
 int
-main (argc, argv)
-     int argc;
-     char **argv;
+main(int argc, char **argv)
 {
   char *stream_name;
   FILE *stream;
diff --git a/src/parser.c b/src/parser.c
index 9dd6185..32ed044 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -51,6 +51,7 @@
 #include "alias.h"
 #include "show.h"
 #include "builtins.h"
+#include "system.h"
 #ifndef SMALL
 #include "myhistedit.h"
 #endif