2006-02-09 Eric Botcazou <ebotcazou@libertysurf.fr>
authorEric Botcazou <ebotcazou@libertysurf.fr>
Thu, 9 Feb 2006 11:54:15 +0000 (11:54 +0000)
committerEric Botcazou <ebotcazou@libertysurf.fr>
Thu, 9 Feb 2006 11:54:15 +0000 (11:54 +0000)
* configure.in (CHECK_DECLS): Add vsnprintf.
* configure: Regenerate.
* messages.c (errno.h, stdarg.h, varargs.h, va_list):
Do not include/declare here, but...
* as.h: Move code detecting VARARGS idiom to the top.
(errno.h, stdarg.h, varargs.h, va_list): ...here.
(vsnprintf): Declare if not already declared.

gas/as.h
gas/configure
gas/configure.in
gas/messages.c

index 5dad712db1962efbfbef96d8ca9e1b57551dfd67..2f92c2ed7748509850dee48840876c77cef9259f 100644 (file)
--- a/gas/as.h
+++ b/gas/as.h
@@ -68,6 +68,19 @@ extern void *alloca ();
 # endif /* HAVE_ALLOCA_H */
 #endif /* __GNUC__ */
 
 # endif /* HAVE_ALLOCA_H */
 #endif /* __GNUC__ */
 
+/* Prefer varargs for non-ANSI compiler, since some will barf if the
+   ellipsis definition is used with a no-arguments declaration.  */
+#if defined (HAVE_VARARGS_H) && !defined (__STDC__)
+#undef HAVE_STDARG_H
+#endif
+
+#if defined (HAVE_STDARG_H)
+#define USE_STDARG
+#endif
+#if !defined (USE_STDARG) && defined (HAVE_VARARGS_H)
+#define USE_VARARGS
+#endif
+
 /* Now, tend to the rest of the configuration.  */
 
 /* System include files first...  */
 /* Now, tend to the rest of the configuration.  */
 
 /* System include files first...  */
@@ -90,6 +103,27 @@ extern void *alloca ();
 #include <sys/types.h>
 #endif
 
 #include <sys/types.h>
 #endif
 
+#ifdef HAVE_ERRNO_H
+#include <errno.h>
+#endif
+
+#ifdef USE_STDARG
+#include <stdarg.h>
+#endif
+
+#ifdef USE_VARARGS
+#include <varargs.h>
+#endif
+
+#if !defined (USE_STDARG) && !defined (USE_VARARGS)
+/* Roll our own.  */
+#define va_alist REST
+#define va_dcl
+typedef int * va_list;
+#define va_start(ARGS) ARGS = &REST
+#define va_end(ARGS)
+#endif
+
 #include "getopt.h"
 /* The first getopt value for machine-independent long options.
    150 isn't special; it's just an arbitrary non-ASCII char value.  */
 #include "getopt.h"
 /* The first getopt value for machine-independent long options.
    150 isn't special; it's just an arbitrary non-ASCII char value.  */
@@ -145,6 +179,10 @@ extern PTR realloc ();
 extern char *strstr ();
 #endif
 
 extern char *strstr ();
 #endif
 
+#if !HAVE_DECL_VSNPRINTF
+extern int vsnprintf(char *, size_t, const char *, va_list);
+#endif
+
 /* This is needed for VMS.  */
 #if ! defined (HAVE_UNLINK) && defined (HAVE_REMOVE)
 #define unlink remove
 /* This is needed for VMS.  */
 #if ! defined (HAVE_UNLINK) && defined (HAVE_REMOVE)
 #define unlink remove
@@ -442,19 +480,6 @@ struct _pseudo_type
 
 typedef struct _pseudo_type pseudo_typeS;
 
 
 typedef struct _pseudo_type pseudo_typeS;
 
-/* Prefer varargs for non-ANSI compiler, since some will barf if the
-   ellipsis definition is used with a no-arguments declaration.  */
-#if defined (HAVE_VARARGS_H) && !defined (__STDC__)
-#undef HAVE_STDARG_H
-#endif
-
-#if defined (HAVE_STDARG_H)
-#define USE_STDARG
-#endif
-#if !defined (USE_STDARG) && defined (HAVE_VARARGS_H)
-#define USE_VARARGS
-#endif
-
 #ifdef USE_STDARG
 #if (__GNUC__ >= 2) && !defined(VMS)
 /* for use with -Wformat */
 #ifdef USE_STDARG
 #if (__GNUC__ >= 2) && !defined(VMS)
 /* for use with -Wformat */
index c32f16eae49ba27bcc9ea552bb6dee3bee7e2589..5cba97e6ed352ebe036faf1c7512ce89c17ded2d 100755 (executable)
@@ -10943,6 +10943,79 @@ _ACEOF
 fi
 
 
 fi
 
 
+echo "$as_me:$LINENO: checking whether vsnprintf is declared" >&5
+echo $ECHO_N "checking whether vsnprintf is declared... $ECHO_C" >&6
+if test "${ac_cv_have_decl_vsnprintf+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+$ac_includes_default
+int
+main ()
+{
+#ifndef vsnprintf
+  char *p = (char *) vsnprintf;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+        { ac_try='test -z "$ac_c_werror_flag"
+                        || test ! -s conftest.err'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; } &&
+        { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_have_decl_vsnprintf=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_have_decl_vsnprintf=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_have_decl_vsnprintf" >&5
+echo "${ECHO_T}$ac_cv_have_decl_vsnprintf" >&6
+if test $ac_cv_have_decl_vsnprintf = yes; then
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_VSNPRINTF 1
+_ACEOF
+
+
+else
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_DECL_VSNPRINTF 0
+_ACEOF
+
+
+fi
+
+
+
 
 
                               ac_config_files="$ac_config_files Makefile doc/Makefile po/Makefile.in:po/Make-in"
 
 
                               ac_config_files="$ac_config_files Makefile doc/Makefile po/Makefile.in:po/Make-in"
index 9929755a311217ef7203f96a1e1af5a180f87aa1..fd14bcf7bdfd5939e1d06bc957f4209ff85e4aa0 100644 (file)
@@ -663,6 +663,8 @@ GAS_CHECK_DECL_NEEDED(malloc, f, char *(*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
 
 GAS_CHECK_DECL_NEEDED(sbrk, f, char *(*f)(), $gas_test_headers)
 GAS_CHECK_DECL_NEEDED(strstr, f, char *(*f)(), $gas_test_headers)
 
+AC_CHECK_DECLS([vsnprintf])
+
 dnl This must come last.
 
 dnl We used to make symlinks to files in the source directory, but now
 dnl This must come last.
 
 dnl We used to make symlinks to files in the source directory, but now
index a8e309d1622cf2a9977327a362f92a1a3347ff7a..b1b94cdf7c6eccf118be48e11a6a16ad0fbe3deb 100644 (file)
 
 #include "as.h"
 
 
 #include "as.h"
 
-#include <stdio.h>
-#ifdef HAVE_ERRNO_H
-#include <errno.h>
-#endif
-
-#ifdef USE_STDARG
-#include <stdarg.h>
-#endif
-
-#ifdef USE_VARARGS
-#include <varargs.h>
-#endif
-
-#if !defined (USE_STDARG) && !defined (USE_VARARGS)
-/* Roll our own.  */
-#define va_alist REST
-#define va_dcl
-typedef int * va_list;
-#define va_start(ARGS) ARGS = &REST
-#define va_end(ARGS)
-#endif
-
 static void identify (char *);
 static void as_show_where (void);
 static void as_warn_internal (char *, unsigned int, char *);
 static void identify (char *);
 static void as_show_where (void);
 static void as_warn_internal (char *, unsigned int, char *);
This page took 0.029964 seconds and 4 git commands to generate.