renamed SCons.Tool.ninja -> SCons.Tool.ninja_tool and added alias in tool loading...
[scons.git] / SCons / Tool / default.xml
blobb6d096b4ea570b4e77e7203a402d485c2e6d3b99
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="default">
28 <summary>
29 <para>
30 Sets &consvars; for a default list of Tool modules.
31 Use <emphasis role="bold">default</emphasis>
32 in the tools list to retain the original defaults,
33 since the <parameter>tools</parameter> parameter
34 is treated as a literal statement of the tools
35 to be made available in that &consenv;, not an addition.
36 </para>
38 <para>
39 The list of tools selected by default is not static,
40 but is dependent both on
41 the platform and on the software installed on the platform.
42 Some tools will not initialize if an underlying command is
43 not found, and some tools are selected from a list of choices
44 on a first-found basis. The finished tool list can be
45 examined by inspecting the &cv-link-TOOLS; &consvar;
46 in the &consenv;.
47 </para>
49 <para>
50 On all platforms, the tools from the following list
51 are selected if their respective conditions are met:
52 <!--TODO: &t-link-filesystem; --> filesystem;,
53 <!--TODO &t-link-wix; --> wix,
54 &t-link-lex;, &t-link-yacc;,
55 &t-link-rpcgen;, &t-link-swig;,
56 &t-link-jar;, &t-link-javac;, &t-link-javah;, &t-link-rmic;,
57 &t-link-dvipdf;, &t-link-dvips;, &t-link-gs;,
58 &t-link-tex;, &t-link-latex;, &t-link-pdflatex;, &t-link-pdftex;,
59 &t-link-tar;, &t-link-zip;, &t-link-textfile;.
60 </para>
62 <para>
63 On Linux systems, the default tools list selects
64 (first-found): a C compiler from
65 &t-link-gcc;, &t-link-intelc;, &t-link-icc;, &t-link-cc;;
66 a C++ compiler from
67 &t-link-gXX;, &t-link-intelc;, &t-link-icc;, &t-link-cXX;;
68 an assembler from
69 &t-link-gas;, &t-link-nasm;, &t-link-masm;;
70 a linker from
71 &t-link-gnulink;, &t-link-ilink;;
72 a Fortran compiler from
73 &t-link-gfortran;, &t-link-g77;, &t-link-ifort;, &t-link-ifl;,
74 &t-link-f95;, &t-link-f90;, &t-link-f77;;
75 and a static archiver &t-link-ar;.
76 It also selects all found from the list
77 &t-link-m4;
78 <!-- TODO &t-link-rpm; --> rpm.
79 </para>
81 <para>
82 On Windows systems, the default tools list selects
83 (first-found): a C compiler from
84 &t-link-msvc;, &t-link-mingw;, &t-link-gcc;, &t-link-intelc;,
85 &t-link-icl;, &t-link-icc;, &t-link-cc;, &t-link-bcc32;;
86 a C++ compiler from
87 &t-link-msvc;, &t-link-intelc;, &t-link-icc;, &t-link-gXX;,
88 &t-link-cXX;, &t-link-bcc32;;
89 an assembler from
90 &t-link-masm;, &t-link-nasm;, &t-link-gas;, &t-link-386asm;;
91 a linker from
92 &t-link-mslink;, &t-link-gnulink;, &t-link-ilink;,
93 &t-link-linkloc;, &t-link-ilink32;;
94 a Fortran compiler from
95 &t-link-gfortran;, &t-link-g77;, &t-link-ifl;, &t-link-cvf;,
96 &t-link-f95;, &t-link-f90;, &t-link-fortran;;
97 and a static archiver from
98 &t-link-mslib;, &t-link-ar;, &t-link-tlib;;
99 It also selects all found from the list
100 &t-link-msvs;, &t-link-midl;.
101 </para>
103 <para>
104 On MacOS systems, the default tools list selects
105 (first-found): a C compiler from
106 &t-link-gcc;, &t-link-cc;;
107 a C++ compiler from
108 &t-link-gXX;, &t-link-cXX;;
109 an assembler &t-link-as;;
110 a linker from
111 &t-link-applelink;, &t-link-gnulink;;
112 a Fortran compiler from
113 &t-link-gfortran;, &t-link-f95;, &t-link-f90;, &t-link-g77;;
114 and a static archiver &t-link-ar;.
115 It also selects all found from the list
116 &t-link-m4;,
117 <!-- TODO &t-link-rpm; --> rpm.
118 </para>
120 <para>
121 Default lists for other platforms can be found by
122 examining the &scons;
123 source code (see
124 <filename>SCons/Tool/__init__.py</filename>).
125 </para>
127 </summary>
128 </tool>
129 </sconsdoc>