Merge pull request #4655 from bdbaddog/fix_new_ninja_package
[scons.git] / SCons / Tool / lex.xml
blob028072b6e56e992988e92097fb69f51ba280e74b
1 <?xml version="1.0"?>
2 <!--
3 SPDX-FileCopyrightText: Copyright The SCons Foundation (https://scons.org)
4 SPDX-License-Identifier: MIT
5 SPDX-FileType: DOCUMENTATION
7 This file is processed by the bin/SConsDoc.py module.
8 -->
10 <!DOCTYPE sconsdoc [
11 <!ENTITY % scons SYSTEM '../../doc/scons.mod'>
12 %scons;
13 <!ENTITY % builders-mod SYSTEM '../../doc/generated/builders.mod'>
14 %builders-mod;
15 <!ENTITY % functions-mod SYSTEM '../../doc/generated/functions.mod'>
16 %functions-mod;
17 <!ENTITY % tools-mod SYSTEM '../../doc/generated/tools.mod'>
18 %tools-mod;
19 <!ENTITY % variables-mod SYSTEM '../../doc/generated/variables.mod'>
20 %variables-mod;
23 <sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
24           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
25           xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 http://www.scons.org/dbxsd/v1.0/scons.xsd">
27 <tool name="lex">
28 <summary>
29 <para>
30 Sets construction variables for the &lex; lexical analyzer.
31 </para>
32 </summary>
33 <sets>
34 <item>LEX</item>
35 <item>LEXFLAGS</item>
36 <item>LEXCOM</item>
37 <item>LEXUNISTD</item>
38 </sets>
39 <uses>
40 <item>LEXCOMSTR</item>
41 <item>LEXFLAGS</item>
42 <item>LEX_HEADER_FILE</item>
43 <item>LEX_TABLES_FILE</item>
44 </uses>
45 </tool>
47 <cvar name="LEX">
48 <summary>
49 <para>
50 The lexical analyzer generator.
51 </para>
52 </summary>
53 </cvar>
55 <cvar name="LEXCOM">
56 <summary>
57 <para>
58 The command line used to call the lexical analyzer generator
59 to generate a source file.
60 </para>
61 </summary>
62 </cvar>
64 <cvar name="LEXCOMSTR">
65 <summary>
66 <para>
67 The string displayed when generating a source file
68 using the lexical analyzer generator.
69 If this is not set, then &cv-link-LEXCOM; (the command line) is displayed.
70 </para>
72 <example_commands>
73 env = Environment(LEXCOMSTR="Lex'ing $TARGET from $SOURCES")
74 </example_commands>
75 </summary>
76 </cvar>
78 <cvar name="LEXFLAGS">
79 <summary>
80 <para>
81 General options passed to the lexical analyzer generator.
82 In addition to passing the value on during invocation,
83 the &t-link-lex; tool also examines this &consvar; for options
84 which cause additional output files to be generated,
85 and adds those to the target list.
86 Recognized for this purpose are GNU &flex; options
87 <option>--header-file=</option> and
88 <option>--tables-file=</option>;
89 the output file is named by the option argument.
90 </para>
91 <para>
92 Note that files specified by <option>--header-file=</option> and
93 <option>--tables-file=</option> may not be properly handled
94 by &SCons; in all situations. Consider using
95 &cv-link-LEX_HEADER_FILE; and &cv-link-LEX_TABLES_FILE; instead.
96 </para>
97 </summary>
98 </cvar>
100 <cvar name="LEX_HEADER_FILE">
101 <summary>
102 <para>
103 If supplied, generate a C header file with the name taken from this variable.
104 Will be emitted as a <option>--header-file=</option>
105 command-line option. Use this in preference to including
106 <option>--header-file=</option> in &cv-link-LEXFLAGS; directly.
107 </para>
108 </summary>
109 </cvar>
111 <cvar name="LEX_TABLES_FILE">
112 <summary>
113 <para>
114 If supplied, write the lex tables to a file with the name
115 taken from this variable.
116 Will be emitted as a <option>--tables-file=</option>
117 command-line option. Use this in preference to including
118 <option>--tables-file=</option> in &cv-link-LEXFLAGS; directly.
119 </para>
120 </summary>
121 </cvar>
123 <cvar name="LEXUNISTD">
124 <summary>
125 <para>
126 Used only in Windows environments to set a lex flag to prevent 'unistd.h' from being included. The default value is '--nounistd'.
127 </para>
128 </summary>
129 </cvar>
131 </sconsdoc>