Branch data Line data Source code
1 : : /* Generate tables for x86 disassembler.
2 : : Copyright (C) 2007, 2008 Red Hat, Inc.
3 : : This file is part of elfutils.
4 : : Written by Ulrich Drepper <drepper@redhat.com>, 2007.
5 : :
6 : : This file is free software; you can redistribute it and/or modify
7 : : it under the terms of either
8 : :
9 : : * the GNU Lesser General Public License as published by the Free
10 : : Software Foundation; either version 3 of the License, or (at
11 : : your option) any later version
12 : :
13 : : or
14 : :
15 : : * the GNU General Public License as published by the Free
16 : : Software Foundation; either version 2 of the License, or (at
17 : : your option) any later version
18 : :
19 : : or both in parallel, as here.
20 : :
21 : : elfutils is distributed in the hope that it will be useful, but
22 : : WITHOUT ANY WARRANTY; without even the implied warranty of
23 : : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 : : General Public License for more details.
25 : :
26 : : You should have received copies of the GNU General Public License and
27 : : the GNU Lesser General Public License along with this program. If
28 : : not, see <http://www.gnu.org/licenses/>. */
29 : :
30 : : #ifdef HAVE_CONFIG_H
31 : : # include <config.h>
32 : : #endif
33 : :
34 : : #include <error.h>
35 : : #include <errno.h>
36 : : #include <stdio.h>
37 : : #include <stdlib.h>
38 : : #include <string.h>
39 : :
40 : :
41 : : extern int i386_parse (void);
42 : :
43 : :
44 : : extern FILE *i386_in;
45 : : extern int i386_debug;
46 : : char *infname;
47 : :
48 : : FILE *outfile;
49 : :
50 : : int
51 : 2 : main (int argc, char *argv[argc])
52 : : {
53 : 2 : outfile = stdout;
54 : :
55 [ - + ]: 2 : if (argc == 1)
56 : 0 : error (EXIT_FAILURE, 0, "usage: %s <MNEDEFFILE>", argv[0]);
57 : :
58 : : //i386_debug = 1;
59 : 2 : infname = argv[1];
60 [ - + ][ - + ]: 2 : if (strcmp (infname, "-") == 0)
61 : 0 : i386_in = stdin;
62 : : else
63 : : {
64 : 2 : i386_in = fopen (infname, "r");
65 [ - + ]: 2 : if (i386_in == NULL)
66 : 0 : error (EXIT_FAILURE, errno, "cannot open %s", argv[1]);
67 : : }
68 : :
69 : 2 : i386_parse ();
70 : :
71 : 2 : return error_message_count != 0;
72 : : }
|