aboutsummaryrefslogtreecommitdiff
path: root/mp/src/vpc_scripts
diff options
context:
space:
mode:
Diffstat (limited to 'mp/src/vpc_scripts')
-rw-r--r--mp/src/vpc_scripts/platform_dirs.vpc2
-rw-r--r--mp/src/vpc_scripts/source_dll_win32_base.vpc19
-rw-r--r--mp/src/vpc_scripts/source_dll_win32_debug.vpc9
-rw-r--r--mp/src/vpc_scripts/source_dll_win32_release.vpc9
-rw-r--r--mp/src/vpc_scripts/source_exe_win_win32_base.vpc18
-rw-r--r--mp/src/vpc_scripts/source_exe_win_win32_debug.vpc8
-rw-r--r--mp/src/vpc_scripts/source_exe_win_win32_release.vpc6
-rw-r--r--mp/src/vpc_scripts/source_lib_win32_base.vpc2
-rw-r--r--mp/src/vpc_scripts/source_lib_win32_debug.vpc5
-rw-r--r--mp/src/vpc_scripts/source_lib_win32_release.vpc6
-rw-r--r--mp/src/vpc_scripts/source_win32_base.vpc17
11 files changed, 70 insertions, 31 deletions
diff --git a/mp/src/vpc_scripts/platform_dirs.vpc b/mp/src/vpc_scripts/platform_dirs.vpc
index 60c795c2..65d0b979 100644
--- a/mp/src/vpc_scripts/platform_dirs.vpc
+++ b/mp/src/vpc_scripts/platform_dirs.vpc
@@ -1,4 +1,4 @@
-$Macro PLATSUBDIR "\." [$WIN32]
+$Macro PLATSUBDIR "\." [$WIN32]
$Macro PLATSUBDIR "\x64" [$WIN64]
$Macro PLATSUBDIR "\." [$X360]
$Macro PLATSUBDIR "\linux32" [$LINUX32]
diff --git a/mp/src/vpc_scripts/source_dll_win32_base.vpc b/mp/src/vpc_scripts/source_dll_win32_base.vpc
index fea67c51..1507687e 100644
--- a/mp/src/vpc_scripts/source_dll_win32_base.vpc
+++ b/mp/src/vpc_scripts/source_dll_win32_base.vpc
@@ -39,7 +39,7 @@ $Configuration
$Compiler [$WIN32]
{
- $EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)"
+ $EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
}
$Linker
@@ -103,6 +103,23 @@ $Project
}
}
}
+
+ // Implement __imp__EncodePointer and __imp__DecodePointer so that we can run on XP SP1
+ // when building with VS 2010.
+ $File "$SRCDIR\public\tier0\pointeroverride.asm" [$WIN32 && $VS2010]
+ {
+ $Configuration
+ {
+ $CustomBuildStep
+ {
+ // General
+ $CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /safeseh /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE"
+ $Description "Compiling pointeroverride.asm"
+ $Outputs "$(IntDir)\$(InputName).obj"
+ }
+ }
+ }
+
$File "$SRCDIR\common\debug_dll_check.cpp" [!$SOURCESDK]
{
$Configuration
diff --git a/mp/src/vpc_scripts/source_dll_win32_debug.vpc b/mp/src/vpc_scripts/source_dll_win32_debug.vpc
index f6e18696..aa8ebf13 100644
--- a/mp/src/vpc_scripts/source_dll_win32_debug.vpc
+++ b/mp/src/vpc_scripts/source_dll_win32_debug.vpc
@@ -74,7 +74,7 @@ $Configuration "Debug"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
$KeepComments
@@ -132,8 +132,7 @@ $Configuration "Debug"
$OmitDefaultLibraryNames
$ErrorReporting "Prompt Immediately (/errorReport:prompt)"
- // Command Line (L4D adding /MP)
- $AdditionalOptions "/MP /Zm200"
+ $AdditionalOptions "/Zm200"
}
$Linker
@@ -225,6 +224,8 @@ $Configuration "Debug"
$DelaySign
$ErrorReporting "Prompt Immediately (/ERRORREPORT:PROMPT)"
$CLRUnmanagedCodeCheck
+ // SAFE_SEH should always be disabled on debug builds.
+ $ImageHasSafeExceptionHandlers "false"
// Command Line
$AdditionalOptions
@@ -283,7 +284,7 @@ $Configuration "Debug"
$Resources
{
// General
- $PreprocessorDefinitions "$BASE;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)"
$Culture "English (United States) (0x409)"
$AdditionalIncludeDirectories
$IgnoreStandardIncludePath
diff --git a/mp/src/vpc_scripts/source_dll_win32_release.vpc b/mp/src/vpc_scripts/source_dll_win32_release.vpc
index fb17d0fb..916045f5 100644
--- a/mp/src/vpc_scripts/source_dll_win32_release.vpc
+++ b/mp/src/vpc_scripts/source_dll_win32_release.vpc
@@ -81,7 +81,7 @@ $Configuration "Release"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$PreprocessorDefinitions "$BASE;RELEASE_ASSERTS" [$RELEASEASSERTS]
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
@@ -141,8 +141,7 @@ $Configuration "Release"
$OmitDefaultLibraryNames
$ErrorReporting "Prompt Immediately (/errorReport:prompt)"
- // Command Line (L4D adding /MP)
- $AdditionalOptions "/MP /Zm200"
+ $AdditionalOptions "/Zm200"
// Enable extra debugging information.
$AdditionalOptions "$BASE /d2Zi+" [$VS2010]
$AdditionalOptions "$BASE /Oy-" [$NOFPO]
@@ -248,6 +247,8 @@ $Configuration "Release"
$DelaySign
$ErrorReporting "Prompt Immediately (/ERRORREPORT:PROMPT)"
$CLRUnmanagedCodeCheck
+ // Most DLLs cannot yet handle SafeSEH
+ $ImageHasSafeExceptionHandlers "false"
// Command Line
$AdditionalOptions
@@ -306,7 +307,7 @@ $Configuration "Release"
$Resources
{
// General
- $PreprocessorDefinitions "$BASE;NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)"
$Culture "English (United States) (0x409)"
$AdditionalIncludeDirectories
$IgnoreStandardIncludePath
diff --git a/mp/src/vpc_scripts/source_exe_win_win32_base.vpc b/mp/src/vpc_scripts/source_exe_win_win32_base.vpc
index 9a79a68d..22b3896f 100644
--- a/mp/src/vpc_scripts/source_exe_win_win32_base.vpc
+++ b/mp/src/vpc_scripts/source_exe_win_win32_base.vpc
@@ -39,7 +39,7 @@ $Configuration
$Compiler [$WIN32]
{
- $EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)"
+ $EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
}
$Linker
@@ -98,6 +98,22 @@ $Project
}
}
}
+
+ // Implement __imp__EncodePointer and __imp__DecodePointer so that we can run on XP SP1
+ // when building with VS 2010.
+ $File "$SRCDIR\public\tier0\pointeroverride.asm" [$WIN32 && $VS2010]
+ {
+ $Configuration
+ {
+ $CustomBuildStep
+ {
+ // General
+ $CommandLine "$QUOTE$(VCInstallDir)bin\ml.exe$QUOTE /c /Cp /Zi /Fo$QUOTE$(IntDir)\$(InputName).obj$QUOTE $QUOTE$(InputPath)$QUOTE"
+ $Description "Compiling pointeroverride.asm"
+ $Outputs "$(IntDir)\$(InputName).obj"
+ }
+ }
+ }
}
$Folder "Link Libraries"
diff --git a/mp/src/vpc_scripts/source_exe_win_win32_debug.vpc b/mp/src/vpc_scripts/source_exe_win_win32_debug.vpc
index 725883ed..302d80e9 100644
--- a/mp/src/vpc_scripts/source_exe_win_win32_debug.vpc
+++ b/mp/src/vpc_scripts/source_exe_win_win32_debug.vpc
@@ -74,7 +74,7 @@ $Configuration "Debug"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
$KeepComments
@@ -229,6 +229,8 @@ $Configuration "Debug"
$DelaySign
$ErrorReporting "Prompt Immediately (/ERRORREPORT:PROMPT)"
$CLRUnmanagedCodeCheck
+ // SAFE_SEH should always be disabled on debug builds.
+ $ImageHasSafeExceptionHandlers "false"
// Command Line
$AdditionalOptions
@@ -287,7 +289,7 @@ $Configuration "Debug"
$Resources
{
// General
- $PreprocessorDefinitions "_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)"
$Culture "English (United States) (0x409)"
$AdditionalIncludeDirectories
$IgnoreStandardIncludePath
@@ -327,4 +329,4 @@ $Configuration "Debug"
$Outputs
$AdditionalDependencies
}
-} \ No newline at end of file
+}
diff --git a/mp/src/vpc_scripts/source_exe_win_win32_release.vpc b/mp/src/vpc_scripts/source_exe_win_win32_release.vpc
index 6f74c508..d3370146 100644
--- a/mp/src/vpc_scripts/source_exe_win_win32_release.vpc
+++ b/mp/src/vpc_scripts/source_exe_win_win32_release.vpc
@@ -81,7 +81,7 @@ $Configuration "Release"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$PreprocessorDefinitions "$BASE;RELEASE_ASSERTS" [$RELEASEASSERTS]
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
@@ -247,6 +247,8 @@ $Configuration "Release"
$DelaySign
$ErrorReporting "Prompt Immediately (/ERRORREPORT:PROMPT)"
$CLRUnmanagedCodeCheck
+ // Most DLLs cannot yet handle SafeSEH
+ $ImageHasSafeExceptionHandlers "false"
// Command Line
$AdditionalOptions
@@ -305,7 +307,7 @@ $Configuration "Release"
$Resources
{
// General
- $PreprocessorDefinitions "NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)"
$Culture "English (United States) (0x409)"
$AdditionalIncludeDirectories
$IgnoreStandardIncludePath
diff --git a/mp/src/vpc_scripts/source_lib_win32_base.vpc b/mp/src/vpc_scripts/source_lib_win32_base.vpc
index 0eb822ab..c5f8e0b5 100644
--- a/mp/src/vpc_scripts/source_lib_win32_base.vpc
+++ b/mp/src/vpc_scripts/source_lib_win32_base.vpc
@@ -38,7 +38,7 @@ $Configuration
$Compiler [$WIN32]
{
- $EnableEnhancedInstructionSet "Streaming SIMD Extensions 2 (/arch:SSE2)"
+ $EnableEnhancedInstructionSet "Streaming SIMD Extensions (/arch:SSE)"
}
$PreBuildEvent
diff --git a/mp/src/vpc_scripts/source_lib_win32_debug.vpc b/mp/src/vpc_scripts/source_lib_win32_debug.vpc
index cf82df16..cefc44f4 100644
--- a/mp/src/vpc_scripts/source_lib_win32_debug.vpc
+++ b/mp/src/vpc_scripts/source_lib_win32_debug.vpc
@@ -75,7 +75,7 @@ $Configuration "Debug"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;_HAS_ITERATOR_DEBUGGING=0;WIN32;_WIN32;_DEBUG;DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
$KeepComments
@@ -136,9 +136,6 @@ $Configuration "Debug"
$UseFullPaths "Yes (/FC)"
$OmitDefaultLibraryNames
$ErrorReporting "Prompt Immediately (/errorReport:prompt)"
-
- // Command Line (L4D adding /MP)
- $AdditionalOptions "/MP" [$VS2005]
}
$Librarian
diff --git a/mp/src/vpc_scripts/source_lib_win32_release.vpc b/mp/src/vpc_scripts/source_lib_win32_release.vpc
index c87a13b7..b6f54059 100644
--- a/mp/src/vpc_scripts/source_lib_win32_release.vpc
+++ b/mp/src/vpc_scripts/source_lib_win32_release.vpc
@@ -82,7 +82,7 @@ $Configuration "Release"
$WholeProgramOptimization
// Preprocessor
- $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE"
+ $PreprocessorDefinitions "$BASE;WIN32;_WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_ALLOW_RUNTIME_LIBRARY_MISMATCH;_ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH;_ALLOW_MSC_VER_MISMATCH;%(PreprocessorDefinitions)"
$PreprocessorDefinitions "$BASE;RELEASE_ASSERTS" [$RELEASEASSERTS]
$IgnoreStandardIncludePath
$GeneratePreprocessedFile
@@ -142,10 +142,8 @@ $Configuration "Release"
$OmitDefaultLibraryNames
$ErrorReporting "Prompt Immediately (/errorReport:prompt)"
- // Command Line (L4D adding /MP)
- $AdditionalOptions "/MP"
// Enable extra debugging information.
- $AdditionalOptions "$BASE /d2Zi+" [$VS2010]
+ $AdditionalOptions "/d2Zi+" [$VS2010]
$AdditionalOptions "$BASE /Oy-" [$NOFPO]
}
diff --git a/mp/src/vpc_scripts/source_win32_base.vpc b/mp/src/vpc_scripts/source_win32_base.vpc
index 60968484..3749a07a 100644
--- a/mp/src/vpc_scripts/source_win32_base.vpc
+++ b/mp/src/vpc_scripts/source_win32_base.vpc
@@ -3,8 +3,10 @@ $Configuration
$General
{
// Request a specific compiler toolset.
- $PlatformToolset "v110" [$VS2012] // VS 11
- $PlatformToolset "v120" [$VS2013] // VS 12
+ $PlatformToolset "v110_xp" [$VS2012 && !$ANALYZE] // VS 2012 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
+ $PlatformToolset "v110" [$VS2012 && $ANALYZE] // VS 2012 for /analyze
+ $PlatformToolset "v120_xp" [$VS2013 && !$ANALYZE] // VS 2013 targeting Windows XP - http://msdn.microsoft.com/en-us/library/vstudio/jj851139.aspx
+ $PlatformToolset "v120" [$VS2013 && $ANALYZE] // VS 2013 for /analyze
}
$General
@@ -15,16 +17,17 @@ $Configuration
// VS 2012 compiles fine but does not link. We want to redirect to stub versions of
// the tools (like link.exe and mt.exe) so that the link stage will be NOPed when
// doing /analyze builds.
- $ExecutableDirectories "$SRCDIR\devtools\vs_nop_tools;$BASE" [$ANALYZE && ($VS2012 || $VS2013)]
+ $ExecutableDirectories "$SRCDIR\devtools\vs_nop_tools;$BASE" [$ANALYZE]
}
$Compiler
{
+ $MultiProcessorCompilation "True"
+
// warning C4316: object allocated on the heap may not be aligned 16
$DisableSpecificWarnings "$BASE;4316" [$VS2013]
- // When using /analyze (triggered with /define:ANALYZE on the vpc command line) we want
- // to use /MP but not at its most aggressive setting, and we want to forcibly disable lots
+ // When using /analyze (triggered with /define:ANALYZE on the vpc command line) we want to forcibly disable lots
// of warnings (also disabled in platform.h but not everybody includes that).
// See platform.h for the list of warnings with explanations.
// warning C6318: Ill-defined __try/__except: use of the constant EXCEPTION_CONTINUE_SEARCH -- bogus
@@ -33,7 +36,9 @@ $Configuration
// Note that /analyze for VS 2010 only works with the 32-bit compiler, but for VS 2012 it works on 64-bit
// as well.
$DisableSpecificWarnings "$BASE;6308;6255;6387;6309;6011;6211;6031;6326;6239;6285;6237;6235;6240;6323;6326;6335;6320;6250;6384;6318;6322" [$ANALYZE]
- $AdditionalOptions "$BASE /MP3 /analyze /analyze:stacksize100000" [$ANALYZE]
+ // See http://randomascii.wordpress.com/2011/10/04/analyzecommand-line-options/ for details on these options.
+ // /analyze:only may result in fewer warnings being reported, but the warnings it misses should show up in the regular build.
+ $AdditionalOptions "$BASE /analyze /analyze:only /analyze:stacksize100000" [$ANALYZE]
// Specify /define:ALLOWSHADOWING to suppress variable shadowing warnings
$DisableSpecificWarnings "$BASE;6244;6246" [$ANALYZE && $ALLOWSHADOWING]