1 /* nlmconv.h -- header file for NLM conversion program
2 Copyright (C) 1993-2018 Free Software Foundation, Inc.
4 This file is part of GNU Binutils.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3 of the License, or
9 (at your option) any later version.
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
19 MA 02110-1301, USA. */
22 /* Written by Ian Lance Taylor <ian@cygnus.com>.
24 bfd.h, nlm/common.h and nlm/internal.h must be included before this
27 /* A linked list of strings. */
31 struct string_list
*next
;
35 /* The NLM header parser in nlmheader.y stores information in the
36 following variables. */
38 extern Nlm_Internal_Fixed_Header
*fixed_hdr
;
39 extern Nlm_Internal_Variable_Header
*var_hdr
;
40 extern Nlm_Internal_Version_Header
*version_hdr
;
41 extern Nlm_Internal_Copyright_Header
*copyright_hdr
;
42 extern Nlm_Internal_Extended_Header
*extended_hdr
;
44 /* Procedure named by CHECK. */
45 extern char *check_procedure
;
46 /* File named by CUSTOM. */
47 extern char *custom_file
;
48 /* Whether to generate debugging information (DEBUG). */
49 extern bfd_boolean debug_info
;
50 /* Procedure named by EXIT. */
51 extern char *exit_procedure
;
52 /* Exported symbols (EXPORT). */
53 extern struct string_list
*export_symbols
;
54 /* List of files from INPUT. */
55 extern struct string_list
*input_files
;
56 /* Map file name (MAP, FULLMAP). */
57 extern char *map_file
;
58 /* Whether a full map has been requested (FULLMAP). */
59 extern bfd_boolean full_map
;
60 /* File named by HELP. */
61 extern char *help_file
;
62 /* Imported symbols (IMPORT). */
63 extern struct string_list
*import_symbols
;
64 /* File named by MESSAGES. */
65 extern char *message_file
;
66 /* Autoload module list (MODULE). */
67 extern struct string_list
*modules
;
68 /* File named by OUTPUT. */
69 extern char *output_file
;
70 /* File named by SHARELIB. */
71 extern char *sharelib_file
;
72 /* Start procedure name (START). */
73 extern char *start_procedure
;
75 extern bfd_boolean verbose
;
76 /* RPC description file (XDCDATA). */
77 extern char *rpc_file
;
79 /* The number of serious parse errors. */
80 extern int parse_errors
;
83 extern int yyparse (void);
85 /* Tell the lexer what file to read. */
86 extern bfd_boolean
nlmlex_file (const char *);