Updated with review feedback.
[mono.git] / msvc / README
index 1537d91921218dcae7d406e5bfcfb3aece212ec8..375febbdbb20e611fade4d0027c98ea77dcfd2c4 100755 (executable)
@@ -11,19 +11,28 @@ BUILDING
 
        From this directory type:
 
-            msbuild.exe mono.sln /p:Configuration=Debug_eglib
+            msbuild.exe mono.sln /p:Configuration=Debug /p:Platform=x64
 
        msbuild must be in your path, it comes with the .NET Framework.
 
 MAINTENANCE
 
-       When new exported API calls are added to the runtime, issue the
-       command:
+       Source files added to the different project .target files matches project makefile structure.
+       NOTE, all sources added to makefiles should also be added to corresponding targets files for consistency.
+       Files that should not be build on Windows should be excluded  using this configuration:
 
-               make update-def
+       <ClCompile Include="$(MonoSourceLocation)\mono\mini\tramp-wasm.c">
+               <ExcludedFromBuild>$(ExcludeFromWindowsBuild)</ExcludedFromBuild>
+       </ClCompile>
 
-       in this directory and commit the resulting mono.def file.
+       and at the begning of the target file have a property set when to exclude files. This example will always
+       exclude the file, but could be condtional if needed:
 
-       This must happen on a Linux system, because we get the list of
-       the exported symbols from the generated shared library.
+       <PropertyGroup>
+               <ExcludeFromWindowsBuild>true</ExcludeFromWindowsBuild>
+       </PropertyGroup>
 
+       All header files added to makefiles should be included in the different targets files for consistency.
+
+       Each target file has a corresponding filter file, files added to target files should also be added to the corresponding
+       filter file.