1 /* nlmconv.h -- header file for NLM conversion program 2 Copyright (C) 1993-2014 Free Software Foundation, Inc. 3 4 This file is part of GNU Binutils. 5 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. 10 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. 15 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. */ 20 21 22 /* Written by Ian Lance Taylor <ian@cygnus.com>. 23 24 bfd.h, nlm/common.h and nlm/internal.h must be included before this 25 file. */ 26 27 /* A linked list of strings. */ 28 29 struct string_list 30 { 31 struct string_list *next; 32 char *string; 33 }; 34 35 /* The NLM header parser in nlmheader.y stores information in the 36 following variables. */ 37 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; 43 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; 74 /* VERBOSE. */ 75 extern bfd_boolean verbose; 76 /* RPC description file (XDCDATA). */ 77 extern char *rpc_file; 78 79 /* The number of serious parse errors. */ 80 extern int parse_errors; 81 82 /* The parser. */ 83 extern int yyparse (void); 84 85 /* Tell the lexer what file to read. */ 86 extern bfd_boolean nlmlex_file (const char *); 87