aboutsummaryrefslogtreecommitdiff
path: root/sp/src/vpc_scripts/source_exe_linux_base.vpc
blob: 483fa7ab1cf525705a7c5225c65cffee16cdb60d (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
//-----------------------------------------------------------------------------
//	SOURCE_EXE_WIN_WIN32.VPC
//
//	Base Settings for Source(TM) Projects
//-----------------------------------------------------------------------------

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

$MacroRequired				"SRCDIR"
$MacroRequired				"OUTBINNAME"	"$PROJECTNAME"
$MacroRequired				"OUTBINDIR"
$Macro IS_LIB_PROJECT           "1"

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


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

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

$Configuration
{
	$General
	{
		$GameOutputFile					"$OUTBINDIR/$OUTBINNAME"

	}

	$Linker
	{
			$OutputFile "$OUTBINDIR/$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.
			$GCC_ExtraLinkerFlags		"-Wl,--no-as-needed -ltcmalloc_minimal -Wl,--as-needed" [$CLANG]
	}
}