1 - Source extraction program for chew.
2 - Copyright (C) 1990-2023 Free Software Foundation, Inc.
3 - This file is part of BFD, the Binary File Descriptor library.
5 - This program is free software; you can redistribute it and/or modify
6 - it under the terms of the GNU General Public License as published by
7 - the Free Software Foundation; either version 3 of the License, or
8 - (at your option) any later version.
10 - This program is distributed in the hope that it will be useful,
11 - but WITHOUT ANY WARRANTY; without even the implied warranty of
12 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 - GNU General Public License for more details.
15 - You should have received a copy of the GNU General Public License
16 - along with this program; if not, write to the Free Software
17 - Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
37 0 internalmode ! ignore ;
40 1 internalmode ! ignore ;
42 - input stack { a b } output b if internal, a if external
44 "" swap 1 internalmode ! maybecatstr
46 "" swap 0 internalmode ! maybecatstr
50 - Put note in output string, regardless of internal mode.
58 - SENUM enum-type-name
60 - ENUMX addl-enum-name
61 - ENUMDOC doc for preceding enums
62 - ENDSENUM max-enum-name
68 swap " _dummy_first_" swap catstr catstr
71 : make_string_table_header
73 "#ifdef _BFD_MAKE_TABLE_" swap catstr swap
74 "\n\nstatic const char *const " swap catstr catstr
75 "_names[] = { \"@@uninitialized@@\",\n" catstr
84 make_string_table_header
87 get_stuff_in_command catstr
91 copy_past_newline strip_trailing_newlines
93 " " swap catstr " };\n" catstr swap
94 " \"@@overflow: " swap catstr "@@\",\n};\n#endif\n\n" catstr
102 : make_enumerator_string
113 make_enumerator_string
116 : ENUMX ENUM catstr ;
120 copy_past_newline remchar
126 "" swap 0 internalmode ! maybecatstr
128 : ENUMEQX ENUMEQ catstr ;
132 strip_trailing_newlines
133 "\n{* " swap catstr " *}\n" catstr
135 - discard it if we're doing internal mode
136 "" swap 0 internalmode ! maybecatstr
142 : SUBSECTION ignore ;
143 : SUBSUBSECTION ignore ;
144 : INTERNAL_DEFINITION internal ;
145 : DESCRIPTION ignore ;
146 : FUNCTION external ;
148 : INTERNAL_FUNCTION internal ;
149 : INTERNAL internal ;