]>
Commit | Line | Data |
---|---|---|
f7d4d87a | 1 | /* File names and variables for bison, |
35fe0834 | 2 | |
7d424de1 PE |
3 | Copyright (C) 1984, 1989, 2000, 2001, 2002, 2006, 2007, 2009, 2010 |
4 | Free Software Foundation, Inc. | |
f7d4d87a | 5 | |
a0f6b076 | 6 | This file is part of Bison, the GNU Compiler Compiler. |
f7d4d87a | 7 | |
f16b0819 | 8 | This program is free software: you can redistribute it and/or modify |
a0f6b076 | 9 | it under the terms of the GNU General Public License as published by |
f16b0819 PE |
10 | the Free Software Foundation, either version 3 of the License, or |
11 | (at your option) any later version. | |
f7d4d87a | 12 | |
f16b0819 | 13 | This program is distributed in the hope that it will be useful, |
a0f6b076 AD |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | GNU General Public License for more details. | |
f7d4d87a | 17 | |
a0f6b076 | 18 | You should have received a copy of the GNU General Public License |
f16b0819 | 19 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
f7d4d87a | 20 | |
ea52d706 AD |
21 | #ifndef FILES_H_ |
22 | # define FILES_H_ | |
f7d4d87a | 23 | |
651ec3d0 | 24 | # include "uniqstr.h" |
95612cfa | 25 | |
f7d4d87a | 26 | /* File name specified with -o for the output file, or 0 if no -o. */ |
2b81e969 | 27 | extern char const *spec_outfile; |
f7d4d87a | 28 | |
ea52d706 | 29 | /* File name for the parser (i.e., the one above, or its default.) */ |
eb095650 | 30 | extern char *parser_file_name; |
ea52d706 | 31 | |
e41fdc93 | 32 | /* Symbol prefix specified with -p, or 0 if no -p. */ |
78af9bbc | 33 | extern const char *spec_name_prefix; |
f7d4d87a | 34 | |
e41fdc93 | 35 | /* File name prefix specified with -b, or 0 if no -b. */ |
2b81e969 | 36 | extern char const *spec_file_prefix; |
f7d4d87a | 37 | |
342b8b6e | 38 | /* --verbose. */ |
eb095650 | 39 | extern char *spec_verbose_file; |
342b8b6e | 40 | |
35fe0834 | 41 | /* File name specified for the output graph. */ |
eb095650 | 42 | extern char *spec_graph_file; |
342b8b6e | 43 | |
41d7a5f2 PE |
44 | /* File name specified for the xml output. */ |
45 | extern char *spec_xml_file; | |
46 | ||
342b8b6e | 47 | /* File name specified with --defines. */ |
eb095650 | 48 | extern char *spec_defines_file; |
0dbb648e | 49 | |
2b81e969 | 50 | /* Directory prefix of output file names. */ |
eb095650 | 51 | extern char *dir_prefix; |
0dbb648e | 52 | |
95612cfa AD |
53 | /* The file name as given on the command line. |
54 | Not named "input_file" because Flex uses this name for an argument, | |
55 | and therefore GCC warns about a name clash. */ | |
651ec3d0 | 56 | extern uniqstr grammar_file; |
95612cfa AD |
57 | |
58 | /* The current file name. Might change with %include, or with #line. */ | |
651ec3d0 | 59 | extern uniqstr current_file; |
a0f6b076 | 60 | |
bd9d212b JD |
61 | /* The computed base for output file names. */ |
62 | extern char *all_but_ext; | |
63 | ||
d33cb3ae | 64 | void compute_output_file_names (void); |
eb095650 | 65 | void output_file_names_free (void); |
f39ab286 | 66 | void output_file_name_check (char **file_name); |
ff61dabd | 67 | |
d33cb3ae | 68 | FILE *xfopen (const char *name, const char *mode); |
760d7aa8 | 69 | void xfclose (FILE *ptr); |
ff61dabd | 70 | |
8c7ebe49 | 71 | #endif /* !FILES_H_ */ |