Updated with review feedback.
[mono.git] / msvc / README
1 README                                  Last updated: 2007-03-09
2
3
4 INTRODUCTION
5
6         This directory (msvc) serves as a central location for all
7         things needed to build the mono runtime using Microsoft Visual
8         Studio.
9
10 BUILDING
11
12         From this directory type:
13
14              msbuild.exe mono.sln /p:Configuration=Debug /p:Platform=x64
15
16         msbuild must be in your path, it comes with the .NET Framework.
17
18 MAINTENANCE
19
20         Source files added to the different project .target files matches project makefile structure.
21         NOTE, all sources added to makefiles should also be added to corresponding targets files for consistency.
22         Files that should not be build on Windows should be excluded  using this configuration:
23
24         <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-wasm.c">
25                 <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
26         </ClCompile>
27
28         and at the begning of the target file have a property set when to exclude files. This example will always
29         exclude the file, but could be condtional if needed:
30
31         <PropertyGroup>
32                 <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
33         </PropertyGroup>
34
35         All header files added to makefiles should be included in the different targets files for consistency.
36
37         Each target file has a corresponding filter file, files added to target files should also be added to the corresponding
38         filter file.