mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2024-12-23 01:59:43 +08:00
3569c0f8f5
* Pulled in bug fixes from HL2 and HL2MP.
94 lines
2.9 KiB
Plaintext
94 lines
2.9 KiB
Plaintext
//-----------------------------------------------------------------------------
|
|
// SOURCE_LIB_WIN32_BASE.VPC
|
|
//
|
|
// Base Settings for all Source(TM) Projects
|
|
//-----------------------------------------------------------------------------
|
|
|
|
$Include "$SRCDIR\vpc_scripts\version.vpc"
|
|
|
|
$Macro NOAPPENDPLATSUBDIR "1" [!$WIN64]
|
|
|
|
$MacroRequired "PLATSUBDIR"
|
|
$MacroRequired "SRCDIR"
|
|
$MacroRequired "OUTLIBNAME" "$PROJECTNAME"
|
|
$MacroRequired "OUTLIBDIR"
|
|
|
|
// Fix up directories for targets like win64
|
|
$Macro OUTLIBDIR "$OUTLIBDIR$PLATSUBDIR" [!$NOAPPENDPLATSUBDIR]
|
|
|
|
$Include "$SRCDIR\vpc_scripts\source_lib_win32_debug.vpc"
|
|
$Include "$SRCDIR\vpc_scripts\source_lib_win32_release.vpc"
|
|
$Include "$SRCDIR\vpc_scripts\source_win32_base.vpc"
|
|
|
|
$IgnoreRedundancyWarning "ON"
|
|
|
|
// Common Configuration
|
|
$Configuration
|
|
{
|
|
$General [$VS2010]
|
|
{
|
|
$TargetName "$OUTLIBNAME"
|
|
}
|
|
|
|
$General
|
|
{
|
|
$OutputDirectory "$OUTLIBDIR"
|
|
}
|
|
|
|
$Compiler
|
|
{
|
|
$PreprocessorDefinitions "$BASE;LIBNAME=$OUTLIBNAME"
|
|
$PreprocessorDefinitions "$BASE;RAD_TELEMETRY_DISABLED" [$SOURCESDK]
|
|
}
|
|
|
|
$PreBuildEvent
|
|
{
|
|
$CommandLine "if EXIST $OUTLIBDIR\$(TargetName).lib ( for /f $QUOTEdelims=$QUOTE %%A in ('attrib $QUOTE$OUTLIBDIR\$(TargetName).lib$QUOTE') do set valveTmpIsReadOnly=$QUOTE%%A$QUOTE" "\n" \
|
|
") else ( mkdir $OUTLIBDIR )" "\n" \
|
|
"set valveTmpIsReadOnlyLetter=%valveTmpIsReadOnly:~6,1%" "\n" \
|
|
"if $QUOTE%valveTmpIsReadOnlyLetter%$QUOTE==$QUOTER$QUOTE (" "\n" \
|
|
" attrib -r $OUTLIBDIR\$(TargetName).lib" "\n" \
|
|
" $SRCDIR\devtools\bin\gnu\touch.exe -d $QUOTE1999-01-01$QUOTE $OUTLIBDIR\$(TargetName).lib" "\n" \
|
|
" attrib +r $OUTLIBDIR\$(TargetName).lib" "\n" \
|
|
")" "\n" \
|
|
"$CRCCHECK" "\n" [!$SOURCESDK]
|
|
}
|
|
|
|
$PreLinkEvent
|
|
{
|
|
$CommandLine "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $OUTLIBDIR\$(TargetName).lib $SRCDIR" [!$SOURCESDK ]
|
|
}
|
|
|
|
$Librarian
|
|
{
|
|
// Suppress this warning using the undocumented /ignore linker switch
|
|
// schemalib.lib(schemaclassinfo.obj) : warning LNK4221: This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library
|
|
$AdditionalOptions "$BASE /ignore:4221"
|
|
|
|
// This option is from the devil. Basically, it causes the link inputs
|
|
// to vary depending on what is in the solution. This is anathema
|
|
// to the way that we use projects and solutions here at Valve.
|
|
// It also exposes a bug in VS2005 causing files to be recompiled/linked
|
|
// even if nothing changed.
|
|
$LinkLibraryDependencies "false"
|
|
}
|
|
}
|
|
|
|
// Skeleton Project - All derived projects get this as a starting base
|
|
$Project
|
|
{
|
|
$Folder "Source Files"
|
|
{
|
|
$File "$SRCDIR\common\debug_lib_check.cpp" [!$SOURCESDK]
|
|
{
|
|
$Configuration
|
|
{
|
|
$Compiler
|
|
{
|
|
$Create/UsePrecompiledHeader "Not Using Precompiled Headers"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|