X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=binutils%2Fdllwrap.c;h=a5f1b38b2b309b98dc0f0bbb151863eaf489cf07;hb=128e85e3ab36b8e30f6612fb50de3cbb4ede6824;hp=4e48f3e39dc4a1bad0ad4c8bcaece27c7d4070f6;hpb=f14ead0d1546cd5083e35b13d06d9c477ff82492;p=deliverable%2Fbinutils-gdb.git diff --git a/binutils/dllwrap.c b/binutils/dllwrap.c index 4e48f3e39d..a5f1b38b2b 100644 --- a/binutils/dllwrap.c +++ b/binutils/dllwrap.c @@ -1,6 +1,5 @@ /* dllwrap.c -- wrapper for DLLTOOL and GCC to generate PE style DLLs - Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009 - Free Software Foundation, Inc. + Copyright (C) 1998-2016 Free Software Foundation, Inc. Contributed by Mumit Khan (khan@xraylith.wisc.edu). This file is part of GNU Binutils. @@ -20,13 +19,6 @@ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ -/* AIX requires this to be the first thing in the file. */ -#ifndef __GNUC__ -# ifdef _AIX - #pragma alloca -#endif -#endif - #include "sysdep.h" #include "bfd.h" #include "libiberty.h" @@ -35,7 +27,6 @@ #include "bucomm.h" #include -#include #ifdef HAVE_SYS_WAIT_H #include @@ -152,28 +143,30 @@ display (const char * message, va_list args) static void -inform VPARAMS ((const char *message, ...)) +inform (const char *message, ...) { - VA_OPEN (args, message); - VA_FIXEDARG (args, const char *, message); + va_list args; + + va_start (args, message); if (!verbose) return; display (message, args); - VA_CLOSE (args); + va_end (args); } static void -warn VPARAMS ((const char *format, ...)) +warn (const char *format, ...) { - VA_OPEN (args, format); - VA_FIXEDARG (args, const char *, format); + va_list args; + + va_start (args, format); display (format, args); - VA_CLOSE (args); + va_end (args); } /* Look for the program formed by concatenating PROG_NAME and the @@ -371,7 +364,7 @@ run (const char *what, char *args) if (*s == ' ') i++; i++; - argv = alloca (sizeof (char *) * (i + 3)); + argv = xmalloc (sizeof (char *) * (i + 3)); i = 0; argv[i++] = what; s = args; @@ -399,6 +392,7 @@ run (const char *what, char *args) pid = pexecute (argv[0], (char * const *) argv, prog_name, temp_base, &errmsg_fmt, &errmsg_arg, PEXECUTE_ONE | PEXECUTE_SEARCH); + free (argv); if (pid == -1) { @@ -414,7 +408,7 @@ run (const char *what, char *args) pid = pwait (pid, &wait_status, 0); if (pid == -1) { - warn ("wait: %s", strerror (errno)); + warn (_("pwait returns: %s"), strerror (errno)); retcode = 1; } else if (WIFSIGNALED (wait_status)) @@ -482,7 +476,7 @@ usage (FILE *file, int status) { fprintf (file, _("Usage %s \n"), prog_name); fprintf (file, _(" Generic options:\n")); - fprintf (file, _(" @ Read options from \n")); + fprintf (file, _(" @ Read options from \n")); fprintf (file, _(" --quiet, -q Work quietly\n")); fprintf (file, _(" --verbose, -v Verbose\n")); fprintf (file, _(" --version Print dllwrap version\n")); @@ -1028,9 +1022,9 @@ Creating one, but that may not be what you want")); /* Step 1. Call GCC/LD to create base relocation file. If using GCC, the driver command line will look like the following: - + % gcc -Wl,--dll --Wl,--base-file,foo.base [rest of command line] - + If the user does not specify a base name, create temporary one that is deleted at exit. */ @@ -1072,9 +1066,9 @@ Creating one, but that may not be what you want")); /* Step 2. generate the exp file by running dlltool. dlltool command line will look like the following: - + % dlltool -Wl,--dll --Wl,--base-file,foo.base [rest of command line] - + If the user does not specify a base name, create temporary one that is deleted at exit. */