Home | History | Annotate | Download | only in binutils
      1 /* nlmconv.h -- header file for NLM conversion program
      2    Copyright (C) 1993-2016 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 (at) 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