summaryrefslogtreecommitdiff
path: root/src/engine/SCons/Tool/cc.xml
blob: 9690bdb3522fbfe2b7c609c6159065b5472f26f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
<!--
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 The SCons Foundation

This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
<tool name="cc">
<summary>
Sets construction variables for generic POSIX C copmilers.
</summary>
<sets>
<!--_CCCOMCOM-->
FRAMEWORKS
FRAMEWORKPATH
CC
CFLAGS
CCFLAGS
CCCOM
SHCC
SHCFLAGS
SHCCFLAGS
SHCCCOM
CPPDEFPREFIX
CPPDEFSUFFIX
INCPREFIX
INCSUFFIX
SHOBJSUFFIX
<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
CFILESUFFIX
</sets>
<uses>
PLATFORM
</uses>
</tool>

<cvar name="CC">
<summary>
The C compiler.
</summary>
</cvar>

<cvar name="CCCOM">
<summary>
The command line used to compile a C source file to a (static) object
file.  Any options specified in the &cv-link-CFLAGS;, &cv-link-CCFLAGS; and
&cv-link-CPPFLAGS; construction variables are included on this command
line.
</summary>
</cvar>

<cvar name="CCCOMSTR">
<summary>
The string displayed when a C source file
is compiled to a (static) object file.
If this is not set, then &cv-link-CCCOM; (the command line) is displayed.

<example>
env = Environment(CCCOMSTR = "Compiling static object $TARGET")
</example>
</summary>
</cvar>

<cvar name="CCFLAGS">
<summary>
General options that are passed to the C and C++ compilers.
</summary>
</cvar>

<cvar name="CFLAGS">
<summary>
General options that are passed to the C compiler (C only; not C++).
</summary>
</cvar>

<cvar name="CPPFLAGS">
<summary>
User-specified C preprocessor options.
These will be included in any command that uses the C preprocessor,
including not just compilation of C and C++ source files
via the &cv-link-CCCOM;,
&cv-link-SHCCCOM;,
&cv-link-CXXCOM; and
&cv-link-SHCXXCOM; command lines,
but also the &cv-link-FORTRANPPCOM;,
&cv-link-SHFORTRANPPCOM;,
&cv-link-F77PPCOM; and
&cv-link-SHF77PPCOM; command lines
used to compile a Fortran source file,
and the &cv-link-ASPPCOM; command line
used to assemble an assembly language source file,
after first running each file through the C preprocessor.
Note that this variable does
<emphasis>not</emphasis>
contain
<option>-I</option>
(or similar) include search path options
that scons generates automatically from &cv-link-CPPPATH;.
See &cv-link-_CPPINCFLAGS;, below,
for the variable that expands to those options.
</summary>
</cvar>

<cvar name="CPPSUFFIXES">
<summary>
The list of suffixes of files that will be scanned
for C preprocessor implicit dependencies
(#include lines).
The default list is:

<example>
[".c", ".C", ".cxx", ".cpp", ".c++", ".cc",
 ".h", ".H", ".hxx", ".hpp", ".hh",
 ".F", ".fpp", ".FPP",
 ".m", ".mm",
 ".S", ".spp", ".SPP"]
</example>
</summary>
</cvar>

<cvar name="SHCC">
<summary>
The C compiler used for generating shared-library objects.
</summary>
</cvar>

<cvar name="SHCCCOM">
<summary>
The command line used to compile a C source file
to a shared-library object file.
Any options specified in the &cv-link-SHCFLAGS;,
&cv-link-SHCCFLAGS; and
&cv-link-CPPFLAGS; construction variables
are included on this command line.
</summary>
</cvar>

<cvar name="SHCCCOMSTR">
<summary>
The string displayed when a C source file
is compiled to a shared object file.
If this is not set, then &cv-link-SHCCCOM; (the command line) is displayed.

<example>
env = Environment(SHCCCOMSTR = "Compiling shared object $TARGET")
</example>
</summary>
</cvar>

<cvar name="SHCCFLAGS">
<summary>
Options that are passed to the C and C++ compilers
to generate shared-library objects.
</summary>
</cvar>

<cvar name="SHCFLAGS">
<summary>
Options that are passed to the C compiler (only; not C++)
to generate shared-library objects.
</summary>
</cvar>