Build/distcc for msvc: Difference between revisions
< Build
Jump to navigation
Jump to search
(Added requirements and CL information.) |
|||
| Line 15: | Line 15: | ||
== Research == | == Research == | ||
: Cesar has looked into cl options and made a comparison of them to gcc options. Available [http://www.foobartastic.com/files/preprocessor_compilier_options.odt here] | : Cesar has looked into cl options and made a comparison of them to gcc options. | ||
<!-- Cesar, I converted to xhtml for you (Dave) | |||
Available [http://www.foobartastic.com/files/preprocessor_compilier_options.odt here] | |||
--> | |||
<table border="1"> | |||
<tr> | |||
<td>'''cl option'''</td> | |||
<td>'''gcc option'''</td> | |||
<td>'''Notes'''</td> | |||
</tr> | |||
<tr> | |||
<td>/AI</td> | |||
<td>no gcc equivalent</td> | |||
<td>Directory to resolve file references (.dll, .exe. .obj)</td> | |||
</tr> | |||
<tr> | |||
<td>/C</td> | |||
<td>-C or -CC (preserves comments in macros)</td> | |||
<td>preserves comments during preprocessing</td> | |||
</tr> | |||
<tr> | |||
<td>/D</td> | |||
<td>-D</td> | |||
<td>Defines constants/macros</td> | |||
</tr> | |||
<tr> | |||
<td>/E</td> | |||
<td>-E</td> | |||
<td>Sends preprocessor output to stdout</td> | |||
</tr> | |||
<tr> | |||
<td>/EP</td> | |||
<td>WTF-E</td> | |||
<td>Writes preprocessor output to stdout without #line directive (used to change the compiliers internally stored line number and file name)</td> | |||
</tr> | |||
<tr> | |||
<td>/FI</td> | |||
<td>-include (not -I!)</td> | |||
<td>Causes the preprocesssor to process the header file (alternative to using the #include directive)</td> | |||
</tr> | |||
<tr> | |||
<td>/FU</td> | |||
<td>no gcc equivelent</td> | |||
<td>alternative to using the #using directive</td> | |||
</tr> | |||
<tr> | |||
<td>/I</td> | |||
<td>-I</td> | |||
<td>searches the directory for header files</td> | |||
</tr> | |||
<tr> | |||
<td>/P</td> | |||
<td>--save-temps (but this saves all steps. Such as the preprocessor and assembly. So it should be -E --save-temps to limit it to preprocessed only)</td> | |||
<td>writes preprocessed files (same as /E) to a file with the same name with extension .i</td> | |||
</tr> | |||
<tr> | |||
<td>/U /u</td> | |||
<td>-U</td> | |||
<td>undefines name (opposite of -D)</td> | |||
</tr> | |||
<tr> | |||
<td>/X</td> | |||
<td>-nostdinc</td> | |||
<td>Ignores standard include paths</td> | |||
</tr> | |||
</table> | |||
== CL == | == CL == | ||
Currently we're looking into the #using directive, which is the consequence for the /AI and /FU compilier options. We're looking into how files in the using directive work with the preprocessor, and if these object/dll files need to be sent over the network. | Currently we're looking into the #using directive, which is the consequence for the /AI and /FU compilier options. We're looking into how files in the using directive work with the preprocessor, and if these object/dll files need to be sent over the network. | ||
Revision as of 20:56, 30 June 2006
Status and notes page for distcc-for-msvc project at Seneca/Mozilla.
Requirements
- As a reminder, the current requirements for this project is as follows (starting with the most obvious)
- Work with XP and perhaps Vista
- Work with Free Express C++ version of CL
- Focus on 32-bit x86 architecture
- Should not have to break GCC in order to add CL
Plan
Research
- Cesar has looked into cl options and made a comparison of them to gcc options.
| cl option | gcc option | Notes |
| /AI | no gcc equivalent | Directory to resolve file references (.dll, .exe. .obj) |
| /C | -C or -CC (preserves comments in macros) | preserves comments during preprocessing |
| /D | -D | Defines constants/macros |
| /E | -E | Sends preprocessor output to stdout |
| /EP | WTF-E | Writes preprocessor output to stdout without #line directive (used to change the compiliers internally stored line number and file name) |
| /FI | -include (not -I!) | Causes the preprocesssor to process the header file (alternative to using the #include directive) |
| /FU | no gcc equivelent | alternative to using the #using directive |
| /I | -I | searches the directory for header files |
| /P | --save-temps (but this saves all steps. Such as the preprocessor and assembly. So it should be -E --save-temps to limit it to preprocessed only) | writes preprocessed files (same as /E) to a file with the same name with extension .i |
| /U /u | -U | undefines name (opposite of -D) |
| /X | -nostdinc | Ignores standard include paths |
CL
Currently we're looking into the #using directive, which is the consequence for the /AI and /FU compilier options. We're looking into how files in the using directive work with the preprocessor, and if these object/dll files need to be sent over the network.