aboutsummaryrefslogtreecommitdiff
path: root/sp/src/vpc_scripts/source_exe_posix_base.vpc
blob: 23d7637d285117b27d4f80fa05b950ca4035aad4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
//-----------------------------------------------------------------------------
//	SOURCE_EXE_posix.VPC
//
//	Base Settings for Source(TM) Projects
//-----------------------------------------------------------------------------

$Include "$SRCDIR\vpc_scripts\version.vpc"

$MacroRequired				"SRCDIR"
$MacroRequired				"OUTBINNAME"	"$PROJECTNAME"
$Macro IS_LIB_PROJECT		"1"
$Include "$SRCDIR\vpc_scripts\source_posix_base.vpc"

$Include "$SRCDIR\vpc_scripts\loadaddress.vpc"


$IgnoreRedundancyWarning	"ON"

$Configuration
{
	$General
	{
		$ConfigurationType				"Application (.exe)"
	}

	$Compiler
	{
		$PreprocessorDefinitions		"$BASE;EXENAME=$OUTBINNAME"
	}

	$Linker
	{
		$OutputFile						"$SRCDIR/../game/$OUTBINNAME"

		// In order to get the Valve standard allocator memory alignment (16-byte
		// alignment for objects that are a multiple of 16 bytes) we use tcmalloc.
		// Using -l will ask the linker to use it, but if there are no references
		// to malloc/free then it may not actually use it. Wrapping the flag in the
		// as-needed controls forces it to be pulled in (from libtcmalloc_minimal.so).
		$GCC_ExtraLinkerFlags			"-Wl,--no-as-needed -ltcmalloc_minimal -Wl,--as-needed" [$LINUXALL&&!$DEDICATED]
	}
}

$Project
{
	$Folder	"Source Files"
	{
		$File	"$SRCDIR\public\tier0\memoverride.cpp"
		{
			$Configuration
			{
				$Compiler
				{
					$Create/UsePrecompiledHeader	"Not Using Precompiled Headers"
				}
			}
		}
	}


	$Folder "Resources"
	{
		$File	"$ROOTSCRIPT"
	}

	$Folder	"Link Libraries" [$LINUXALL&&!$DEDICATED]
	{
		$File	"$SRCDIR/thirdparty/gperftools-2.0/.libs/libtcmalloc_minimal.so"
	}
}