Use FOPEN_.. macros in calls to fopen().

This commit is contained in:
Nick Clifton
2001-07-10 09:45:50 +00:00
parent c2a1a436ff
commit f740e790c7
7 changed files with 94 additions and 77 deletions

View File

@@ -1,5 +1,5 @@
/* output-file.c - Deal with the output file
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1996, 1998, 1999
Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1996, 1998, 1999, 2001
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@@ -16,7 +16,8 @@
You should have received a copy of the GNU General Public License
along with GAS; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#include <stdio.h>
@@ -44,14 +45,14 @@ output_file_create (name)
char *name;
{
if (name[0] == '-' && name[1] == '\0')
{
as_fatal (_("Can't open a bfd on stdout %s "), name);
}
as_fatal (_("Can't open a bfd on stdout %s "), name);
else if (!(stdoutput = bfd_openw (name, TARGET_FORMAT)))
{
as_perror (_("FATAL: Can't create %s"), name);
exit (EXIT_FAILURE);
}
bfd_set_format (stdoutput, bfd_object);
#ifdef BFD_ASSEMBLER
bfd_set_arch_mach (stdoutput, TARGET_ARCH, TARGET_MACH);
@@ -73,14 +74,14 @@ output_file_close (filename)
exit (EXIT_FAILURE);
}
#else
/* Close the bfd without getting bfd to write out anything by itself */
/* Close the bfd without getting bfd to write out anything by itself. */
if (bfd_close_all_done (stdoutput) == 0)
{
as_perror (_("FATAL: Can't close %s\n"), filename);
exit (EXIT_FAILURE);
}
#endif
stdoutput = NULL; /* Trust nobody! */
stdoutput = NULL; /* Trust nobody! */
}
#ifndef BFD_ASSEMBLER
@@ -108,11 +109,12 @@ output_file_create (name)
return;
}
stdoutput = fopen (name, "wb");
stdoutput = fopen (name, FOPEN_WB);
/* Some systems don't grok "b" in fopen modes. */
/* XXX - is this still necessary now that we use FOPEN_WB ? */
if (stdoutput == NULL)
stdoutput = fopen (name, "w");
stdoutput = fopen (name, FOPEN_W);
if (stdoutput == NULL)
{
@@ -130,18 +132,21 @@ output_file_close (filename)
as_perror (_("FATAL: Can't close %s"), filename);
exit (EXIT_FAILURE);
}
stdoutput = NULL; /* Trust nobody! */
/* Trust nobody! */
stdoutput = NULL;
}
void
output_file_append (where, length, filename)
char *where;
long length;
char *filename;
char * where;
long length;
char * filename;
{
for (; length; length--, where++)
{
(void) putc (*where, stdoutput);
if (ferror (stdoutput))
/* if ( EOF == (putc( *where, stdoutput )) ) */
{
@@ -153,4 +158,3 @@ output_file_append (where, length, filename)
#endif
/* end of output-file.c */