Improve Visual Studio 2015 build.
This commit is contained in:
committed by
Pasi Kallinen
parent
e5dadd525f
commit
98266801b6
@@ -3,3 +3,5 @@
|
|||||||
*.ico
|
*.ico
|
||||||
*.db
|
*.db
|
||||||
record
|
record
|
||||||
|
*.user
|
||||||
|
|
||||||
|
|||||||
@@ -10,8 +10,6 @@
|
|||||||
<ClCompile>
|
<ClCompile>
|
||||||
<WarningLevel>Level3</WarningLevel>
|
<WarningLevel>Level3</WarningLevel>
|
||||||
<PreprocessorDefinitions>WIN32;CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
<PreprocessorDefinitions>WIN32;CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
<MultiProcessorCompilation>false</MultiProcessorCompilation>
|
|
||||||
<AdditionalOptions>/FS %(AdditionalOptions)</AdditionalOptions>
|
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<SubSystem>Console</SubSystem>
|
<SubSystem>Console</SubSystem>
|
||||||
@@ -27,7 +25,6 @@
|
|||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<AdditionalOptions>/SAFESEH:NO %(AdditionalOptions)</AdditionalOptions>
|
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
|
<ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
|
||||||
|
|||||||
@@ -1,7 +1,47 @@
|
|||||||
Changes made to vs2015 build
|
Changes made to vs2015 build
|
||||||
|
|
||||||
1. allow solution to be used in place
|
Changes
|
||||||
|
1. Removed the use of /FS.
|
||||||
|
2. Allow multi-processor compilation.
|
||||||
|
|
||||||
To Do
|
Questions
|
||||||
|
|
||||||
1. win\share\tiletxt.c is copied from win\share\tilemap.c ... use tilemap.c instead directly.
|
1. Why is /Gs used? This initiates stack probes for every function call (not just functions that use more then 4k)?
|
||||||
|
2. Why is /Oi- used? This turns off compiler intrinsics.
|
||||||
|
3. Why is /FS used? This forces serialization of writes to PDB. This really isn't needed.
|
||||||
|
4. Why are we disabling optimizations for release builds?
|
||||||
|
5. Why are we omitting frame pointers? Makes debugging harder. Crash dumps less usefull.
|
||||||
|
6. Why are we forcing function level linking?
|
||||||
|
7. Why are we turning off intrinsics (again)?
|
||||||
|
8. Why are we enabling additional security checks? (SDLCheck)
|
||||||
|
9. Why are we using string pooling?
|
||||||
|
10. Why do we turn off multi-processor compilation?
|
||||||
|
|
||||||
|
Nethack Compiler Settings - Release
|
||||||
|
/Gs
|
||||||
|
/Oi-
|
||||||
|
/FS
|
||||||
|
Optimizations:Disabled
|
||||||
|
WarningLevel:Level3
|
||||||
|
InlineFunctionExpansion:Default
|
||||||
|
FavorSizeOrSpeed:Speed
|
||||||
|
OmitFramePointers:true
|
||||||
|
Optimization:MaxSpeed
|
||||||
|
FunctionLevelLinking:true
|
||||||
|
IntrinsicFunctions:false
|
||||||
|
PreprocessorDefinitions:TILES;MSWIN_GRAPHICS;WIN32;WIN32CON;DLB;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;NDEBUG;_CONSOLE;_LIB;
|
||||||
|
SDLCheck:true
|
||||||
|
AdditionalIncludeDirectories:..\win\win32;..\include;..\sys\winnt;..\sys\share;..\win\share;
|
||||||
|
StringPooling:true
|
||||||
|
RuntimeLibrary:MultiThreaded
|
||||||
|
SuppressStartupBanner:true
|
||||||
|
MultiProcessorCompilation:false
|
||||||
|
|
||||||
|
Nethack Link Settings - Release
|
||||||
|
SubSystem:Console
|
||||||
|
GenetateDebugInformation:true
|
||||||
|
EnableCOMDATFolding:true
|
||||||
|
OptimizeReferenes:true
|
||||||
|
AdditionalDependencies:kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;winmm.lib;Winmm.lib;
|
||||||
|
SuppressStartupBanner:true
|
||||||
|
TargetMachine:MachineX86
|
||||||
|
|||||||
Reference in New Issue
Block a user