]> git.saurik.com Git - bison.git/blame - src/files.h
* lib/.cvsignore: Add charset.alias.
[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
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 29extern char const *spec_outfile;
f7d4d87a 30
ea52d706 31/* File name for the parser (i.e., the one above, or its default.) */
eb095650 32extern char *parser_file_name;
ea52d706 33
e41fdc93 34/* Symbol prefix specified with -p, or 0 if no -p. */
78af9bbc 35extern const char *spec_name_prefix;
f7d4d87a 36
e41fdc93 37/* File name prefix specified with -b, or 0 if no -b. */
2b81e969 38extern char const *spec_file_prefix;
f7d4d87a 39
342b8b6e 40/* --verbose. */
eb095650 41extern char *spec_verbose_file;
342b8b6e 42
35fe0834 43/* File name specified for the output graph. */
eb095650 44extern char *spec_graph_file;
342b8b6e
AD
45
46/* File name specified with --defines. */
eb095650 47extern char *spec_defines_file;
0dbb648e 48
2b81e969 49/* Directory prefix of output file names. */
eb095650 50extern 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 55extern uniqstr grammar_file;
95612cfa
AD
56
57/* The current file name. Might change with %include, or with #line. */
651ec3d0 58extern uniqstr current_file;
a0f6b076 59
bd9d212b
JD
60/* The computed base for output file names. */
61extern char *all_but_ext;
62
d33cb3ae 63void compute_output_file_names (void);
eb095650 64void output_file_names_free (void);
3f7ca628 65void output_file_name_check (char const *file_name);
ff61dabd 66
d33cb3ae 67FILE *xfopen (const char *name, const char *mode);
760d7aa8 68void xfclose (FILE *ptr);
ff61dabd 69
8c7ebe49 70#endif /* !FILES_H_ */