]> git.saurik.com Git - bison.git/blame - src/files.h
Update to GPLv3.
[bison.git] / src / files.h
CommitLineData
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
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 27extern char const *spec_outfile;
f7d4d87a 28
ea52d706 29/* File name for the parser (i.e., the one above, or its default.) */
eb095650 30extern char *parser_file_name;
ea52d706 31
e41fdc93 32/* Symbol prefix specified with -p, or 0 if no -p. */
78af9bbc 33extern const char *spec_name_prefix;
f7d4d87a 34
e41fdc93 35/* File name prefix specified with -b, or 0 if no -b. */
2b81e969 36extern char const *spec_file_prefix;
f7d4d87a 37
342b8b6e 38/* --verbose. */
eb095650 39extern char *spec_verbose_file;
342b8b6e 40
35fe0834 41/* File name specified for the output graph. */
eb095650 42extern char *spec_graph_file;
342b8b6e
AD
43
44/* File name specified with --defines. */
eb095650 45extern char *spec_defines_file;
0dbb648e 46
2b81e969 47/* Directory prefix of output file names. */
eb095650 48extern char *dir_prefix;
0dbb648e 49
95612cfa
AD
50/* The file name as given on the command line.
51 Not named "input_file" because Flex uses this name for an argument,
52 and therefore GCC warns about a name clash. */
651ec3d0 53extern uniqstr grammar_file;
95612cfa
AD
54
55/* The current file name. Might change with %include, or with #line. */
651ec3d0 56extern uniqstr current_file;
a0f6b076 57
bd9d212b
JD
58/* The computed base for output file names. */
59extern char *all_but_ext;
60
d33cb3ae 61void compute_output_file_names (void);
eb095650 62void output_file_names_free (void);
3f7ca628 63void output_file_name_check (char const *file_name);
ff61dabd 64
d33cb3ae 65FILE *xfopen (const char *name, const char *mode);
760d7aa8 66void xfclose (FILE *ptr);
ff61dabd 67
8c7ebe49 68#endif /* !FILES_H_ */