OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [binutils/] [bin2c.c] - Blame information for rev 853

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
/* bin2c.c -- dump binary file in hex format
2
   Copyright 2007, 2008 Free Software Foundation, Inc.
3
 
4
   This file is part of GNU Binutils.
5
 
6
   This program is free software; you can redistribute it and/or modify
7
   it under the terms of the GNU General Public License as published by
8
   the Free Software Foundation; either version 3 of the License, or
9
   (at your option) any later version.
10
 
11
   This program is distributed in the hope that it will be useful,
12
   but WITHOUT ANY WARRANTY; without even the implied warranty of
13
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
   GNU General Public License for more details.
15
 
16
   You should have received a copy of the GNU General Public License
17
   along with this program; if not, write to the Free Software
18
   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
19
   02110-1301, USA.  */
20
 
21
#include "sysdep.h"
22
#include "bfd.h"
23
#include "bucomm.h"
24
 
25
#if !defined O_TEXT && defined _O_TEXT
26
  /* For MSC-compatible compilers.  */
27
# define O_TEXT _O_TEXT
28
#endif
29
 
30
#ifdef __BEOS__
31
  /* BeOS 5 has O_BINARY and O_TEXT, but they have no effect.  */
32
# undef O_BINARY
33
# undef O_TEXT
34
#endif
35
 
36
#if O_BINARY
37
# ifndef __DJGPP__
38
#  define setmode _setmode
39
#  define fileno(_fp) _fileno (_fp)
40
# endif /* not DJGPP */
41
# define SET_BINARY(_f) \
42
  do { if (!isatty (_f)) setmode (_f, O_BINARY); } while (0)
43
#else
44
# define SET_BINARY(f) (void) 0
45
# define O_BINARY 0
46
# define O_TEXT 0
47
#endif /* O_BINARY */
48
 
49
int
50
main (int argc, char *argv[])
51
{
52
  int c;
53
  int i;
54
 
55
#if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES)
56
  setlocale (LC_MESSAGES, "");
57
#endif
58
#if defined (HAVE_SETLOCALE)
59
  setlocale (LC_CTYPE, "");
60
#endif
61
  bindtextdomain (PACKAGE, LOCALEDIR);
62
  textdomain (PACKAGE);
63
 
64
  if (argc != 1)
65
    {
66
      int ishelp = 0;
67
      int isvers = 0;
68
      FILE *stream;
69
 
70
      if (argc == 2 && argv[1][0] == '-')
71
        {
72
          const char *opt = &argv[1][1];
73
          if (*opt == '-')
74
            ++opt;
75
          ishelp = *opt == 'h' || *opt == 'H';
76
          isvers = *opt == 'v' || *opt == 'V';
77
        }
78
 
79
      if (isvers)
80
        print_version ("bin2c");
81
 
82
      stream = ishelp ? stdout : stderr;
83
      fprintf (stream, _("Usage: %s < input_file > output_file\n"), argv[0]);
84
      fprintf (stream, _("Prints bytes from stdin in hex format.\n"));
85
      exit (!ishelp);
86
    }
87
 
88
  SET_BINARY (fileno (stdin));
89
 
90
  i = 0;
91
  while ((c = getc (stdin)) != EOF)
92
    {
93
      printf ("0x%02x,", c);
94
      if (++i == 16)
95
        {
96
          printf ("\n");
97
          i = 0;
98
        }
99
    }
100
  if (i != 0)
101
    printf ("\n");
102
 
103
  exit (0);
104
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.