diff options
author | Eric Andersen | 2000-07-09 06:59:58 +0000 |
---|---|---|
committer | Eric Andersen | 2000-07-09 06:59:58 +0000 |
commit | 999bf72f49a501e47448010c4ddb06dc03ed1612 (patch) | |
tree | 75d6c4187384bc385d59838834bac80f53a077cd | |
parent | e9b527ae48cb9609ea0668974de32da523ebd231 (diff) | |
download | busybox-999bf72f49a501e47448010c4ddb06dc03ed1612.zip busybox-999bf72f49a501e47448010c4ddb06dc03ed1612.tar.gz |
More portability updates. Now compiles cleanly vs glibc, libc5, and uclibc
(except for mkfs_minix and fsck_minix -- and it doesn't yet link vs uclibc due
to missing stuff in the library).
-Erik
-rw-r--r-- | console-tools/loadacm.c | 2 | ||||
-rw-r--r-- | coreutils/md5sum.c | 8 | ||||
-rw-r--r-- | coreutils/uudecode.c | 1 | ||||
-rw-r--r-- | coreutils/uuencode.c | 1 | ||||
-rw-r--r-- | insmod.c | 5 | ||||
-rw-r--r-- | loadacm.c | 2 | ||||
-rw-r--r-- | md5sum.c | 8 | ||||
-rw-r--r-- | modutils/insmod.c | 5 | ||||
-rw-r--r-- | networking/ping.c | 4 | ||||
-rw-r--r-- | ping.c | 4 | ||||
-rw-r--r-- | sysklogd/syslogd.c | 2 | ||||
-rw-r--r-- | syslogd.c | 2 | ||||
-rw-r--r-- | uudecode.c | 1 | ||||
-rw-r--r-- | uuencode.c | 1 |
14 files changed, 34 insertions, 12 deletions
diff --git a/console-tools/loadacm.c b/console-tools/loadacm.c index cf393d9..a64c691 100644 --- a/console-tools/loadacm.c +++ b/console-tools/loadacm.c @@ -68,7 +68,7 @@ int screen_map_load(int fd, FILE * fp) int parse_failed = 0; int is_unicode; - if (fstat(fp->_fileno, &stbuf)) + if (fstat(fileno(fp), &stbuf)) perror("Cannot stat map file"), exit(1); /* first try a UTF screen-map: either ASCII (no restriction) or binary (regular file) */ diff --git a/coreutils/md5sum.c b/coreutils/md5sum.c index ffa9e6b..f4a8b99 100644 --- a/coreutils/md5sum.c +++ b/coreutils/md5sum.c @@ -24,6 +24,14 @@ #include <stdio.h> #include <errno.h> #include <ctype.h> +#include <getopt.h> + +/* It turns out that libc5 doesn't have this in its headers + * even though it is actually in the lib. Force it to work */ +#if ! defined __GLIBC__ && ! defined __UCLIBC__ +#define getline __getline +extern _IO_ssize_t getline __P ((char **, size_t *, FILE *)); +#endif //---------------------------------------------------------------------------- //--------md5.c diff --git a/coreutils/uudecode.c b/coreutils/uudecode.c index 752497c..ac33762 100644 --- a/coreutils/uudecode.c +++ b/coreutils/uudecode.c @@ -55,6 +55,7 @@ #include <stdio.h> #include <errno.h> +#include <getopt.h> #include <pwd.h> /*struct passwd *getpwnam();*/ diff --git a/coreutils/uuencode.c b/coreutils/uuencode.c index 97801aa..e4fc1a0 100644 --- a/coreutils/uuencode.c +++ b/coreutils/uuencode.c @@ -56,6 +56,7 @@ #include <stdio.h> #include <errno.h> +#include <getopt.h> #include <pwd.h> #define RW (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH) @@ -38,6 +38,7 @@ #include <dirent.h> #include <ctype.h> #include <assert.h> +#include <getopt.h> #include <sys/utsname.h> #include <sys/syscall.h> #include <linux/unistd.h> @@ -71,7 +72,7 @@ #ifndef MODUTILS_MODULE_H #define MODUTILS_MODULE_H 1 -#ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" +#ident "$Id: insmod.c,v 1.13 2000/07/09 06:59:58 andersen Exp $" /* This file contains the structures used by the 2.0 and 2.1 kernels. We do not use the kernel headers directly because we do not wish @@ -277,7 +278,7 @@ int delete_module(const char *); #ifndef MODUTILS_OBJ_H #define MODUTILS_OBJ_H 1 -#ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" +#ident "$Id: insmod.c,v 1.13 2000/07/09 06:59:58 andersen Exp $" /* The relocatable object is manipulated using elfin types. */ @@ -68,7 +68,7 @@ int screen_map_load(int fd, FILE * fp) int parse_failed = 0; int is_unicode; - if (fstat(fp->_fileno, &stbuf)) + if (fstat(fileno(fp), &stbuf)) perror("Cannot stat map file"), exit(1); /* first try a UTF screen-map: either ASCII (no restriction) or binary (regular file) */ @@ -24,6 +24,14 @@ #include <stdio.h> #include <errno.h> #include <ctype.h> +#include <getopt.h> + +/* It turns out that libc5 doesn't have this in its headers + * even though it is actually in the lib. Force it to work */ +#if ! defined __GLIBC__ && ! defined __UCLIBC__ +#define getline __getline +extern _IO_ssize_t getline __P ((char **, size_t *, FILE *)); +#endif //---------------------------------------------------------------------------- //--------md5.c diff --git a/modutils/insmod.c b/modutils/insmod.c index 75058b9..79732b0 100644 --- a/modutils/insmod.c +++ b/modutils/insmod.c @@ -38,6 +38,7 @@ #include <dirent.h> #include <ctype.h> #include <assert.h> +#include <getopt.h> #include <sys/utsname.h> #include <sys/syscall.h> #include <linux/unistd.h> @@ -71,7 +72,7 @@ #ifndef MODUTILS_MODULE_H #define MODUTILS_MODULE_H 1 -#ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" +#ident "$Id: insmod.c,v 1.13 2000/07/09 06:59:58 andersen Exp $" /* This file contains the structures used by the 2.0 and 2.1 kernels. We do not use the kernel headers directly because we do not wish @@ -277,7 +278,7 @@ int delete_module(const char *); #ifndef MODUTILS_OBJ_H #define MODUTILS_OBJ_H 1 -#ident "$Id: insmod.c,v 1.12 2000/07/08 18:55:24 andersen Exp $" +#ident "$Id: insmod.c,v 1.13 2000/07/09 06:59:58 andersen Exp $" /* The relocatable object is manipulated using elfin types. */ diff --git a/networking/ping.c b/networking/ping.c index b9e8d0f..c560a7c 100644 --- a/networking/ping.c +++ b/networking/ping.c @@ -1,6 +1,6 @@ /* vi: set sw=4 ts=4: */ /* - * $Id: ping.c,v 1.18 2000/07/06 23:10:29 andersen Exp $ + * $Id: ping.c,v 1.19 2000/07/09 06:59:58 andersen Exp $ * Mini ping implementation for busybox * * Copyright (C) 1999 by Randolph Chung <tausq@debian.org> @@ -51,7 +51,7 @@ /* It turns out that libc5 doesn't have proper icmp support * built into it header files, so we have to supplement it */ -#if __GNU_LIBRARY__ < 5 +#if ! defined __GLIBC__ && ! defined __UCLIBC__ typedef unsigned int socklen_t; #define ICMP_MINLEN 8 /* abs minimum */ @@ -1,6 +1,6 @@ /* vi: set sw=4 ts=4: */ /* - * $Id: ping.c,v 1.18 2000/07/06 23:10:29 andersen Exp $ + * $Id: ping.c,v 1.19 2000/07/09 06:59:58 andersen Exp $ * Mini ping implementation for busybox * * Copyright (C) 1999 by Randolph Chung <tausq@debian.org> @@ -51,7 +51,7 @@ /* It turns out that libc5 doesn't have proper icmp support * built into it header files, so we have to supplement it */ -#if __GNU_LIBRARY__ < 5 +#if ! defined __GLIBC__ && ! defined __UCLIBC__ typedef unsigned int socklen_t; #define ICMP_MINLEN 8 /* abs minimum */ diff --git a/sysklogd/syslogd.c b/sysklogd/syslogd.c index 9ab228f..aa1218f 100644 --- a/sysklogd/syslogd.c +++ b/sysklogd/syslogd.c @@ -42,7 +42,7 @@ #include <sys/param.h> #include <linux/unistd.h> -#if __GNU_LIBRARY__ < 5 +#if ! defined __GLIBC__ && ! defined __UCLIBC__ typedef unsigned int socklen_t; @@ -42,7 +42,7 @@ #include <sys/param.h> #include <linux/unistd.h> -#if __GNU_LIBRARY__ < 5 +#if ! defined __GLIBC__ && ! defined __UCLIBC__ typedef unsigned int socklen_t; @@ -55,6 +55,7 @@ #include <stdio.h> #include <errno.h> +#include <getopt.h> #include <pwd.h> /*struct passwd *getpwnam();*/ @@ -56,6 +56,7 @@ #include <stdio.h> #include <errno.h> +#include <getopt.h> #include <pwd.h> #define RW (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH) |