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