From 27fca56f9885bd3c2364c3698475038954e26725 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 25 Sep 1995 16:22:43 +0000 Subject: [PATCH] * configure.in: Call AC_HEADER_SYS_WAIT. * configure: Rebuild. * config.in: Rebuild. * dlltool.c: Include "libiberty.h" and "bucomm.h". Don't include , , or . Don't include . Include . Use HAVE_SYS_WAIT_H to control whether to include or define the wait macros by hand. Don't declare xmalloc. (gen_lib_file): Don't assume that sprintf returns the number of characters; use strlen instead. --- binutils/ChangeLog | 13 +++++++++++++ binutils/configure | 50 +++++++++++++++++++++++++++++++++++++++++++++----- binutils/dlltool.c | 34 ++++++++++++++++++++++++++-------- 3 files changed, 84 insertions(+), 13 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 9f59928..06e63ea 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,16 @@ +Mon Sep 25 12:05:34 1995 Ian Lance Taylor + + * configure.in: Call AC_HEADER_SYS_WAIT. + * configure: Rebuild. + * config.in: Rebuild. + * dlltool.c: Include "libiberty.h" and "bucomm.h". Don't include + , , or . Don't include . + Include . Use HAVE_SYS_WAIT_H to control whether to + include or define the wait macros by hand. Don't + declare xmalloc. + (gen_lib_file): Don't assume that sprintf returns the number of + characters; use strlen instead. + Fri Sep 22 17:16:41 1995 Ian Lance Taylor * objdump.c (disassemble_data): Don't use the old BFD based diff --git a/binutils/configure b/binutils/configure index c23c094..c71b90b 100755 --- a/binutils/configure +++ b/binutils/configure @@ -785,6 +785,46 @@ else fi done +echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 +if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +#include +#ifndef WEXITSTATUS +#define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8) +#endif +#ifndef WIFEXITED +#define WIFEXITED(stat_val) (((stat_val) & 255) == 0) +#endif +int main() { return 0; } +int t() { +int s; +wait (&s); +s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; +; return 0; } +EOF +if eval $ac_compile; then + rm -rf conftest* + ac_cv_header_sys_wait_h=yes +else + rm -rf conftest* + ac_cv_header_sys_wait_h=no +fi +rm -f conftest* + +fi +echo "$ac_t""$ac_cv_header_sys_wait_h" 1>&6 +if test $ac_cv_header_sys_wait_h = yes; then + cat >> confdefs.h <<\EOF +#define HAVE_SYS_WAIT_H 1 +EOF + +fi + for ac_func in sbrk utimes do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 @@ -792,7 +832,7 @@ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 else cat > conftest.$ac_ext < int main() { return 0; } @@ -874,7 +914,7 @@ if eval "test \"`echo '$''{'bu_cv_decl_time_t_types_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return 0; } @@ -908,7 +948,7 @@ if eval "test \"`echo '$''{'bu_cv_header_utime_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #ifdef HAVE_TIME_H @@ -944,7 +984,7 @@ if eval "test \"`echo '$''{'bu_cv_decl_needed_fprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return 0; } diff --git a/binutils/dlltool.c b/binutils/dlltool.c index 2b18bef..c3ac358 100644 --- a/binutils/dlltool.c +++ b/binutils/dlltool.c @@ -160,12 +160,29 @@ #define PAGE_SIZE 4096 #define PAGE_MASK (-PAGE_SIZE) -#include -#include -#include -#include "getopt.h" #include "bfd.h" -#include +#include "libiberty.h" +#include "bucomm.h" +#include "getopt.h" + +#include + +#ifdef HAVE_SYS_WAIT_H +#include +#else +#ifndef WIFEXITED +#define WIFEXITED(w) (((w)&0377) == 0) +#endif +#ifndef WIFSIGNALED +#define WIFSIGNALED(w) (((w)&0377) != 0177 && ((w)&~0377) == 0) +#endif +#ifndef WTERMSIG +#define WTERMSIG(w) ((w) & 0177) +#endif +#ifndef WEXITSTATUS +#define WEXITSTATUS(w) (((w) >> 8) & 0377) +#endif +#endif char *ar_name = "ar"; char *as_name = "as"; @@ -184,7 +201,6 @@ char *def_file; char *program_name; char *strrchr (); -char *xmalloc (); char *strdup (); static int machine; @@ -1092,10 +1108,12 @@ gen_lib_file () { if (sol == 0) { - sol = sprintf (outfile, "crs %s", output_filename); + sprintf (outfile, "crs %s", output_filename); + sol = strlen (outfile); } - sol += sprintf (outfile + sol, " %ss%d.o", prefix, i); + sprintf (outfile + sol, " %ss%d.o", prefix, i); + sol = strlen (outfile); if (sol >100) { -- 2.7.4