blob: 394417a4c88bd5d4154199e313dacfda30c024db (
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
72
73
74
75
76
77
78
79
|
if not solution() then
solution 'gctest'
if _ACTION ~= 'jcdb' then
platforms { 'x32', 'x64' }
configurations {'Debug', 'Release'}
else
configurations {'Debug'}
platforms { 'x64' }
end
flags {
'FatalWarnings',
'ExtraWarnings',
'Symbols',
}
defines {
'_SCL_SECURE_NO_WARNINGS',
}
local root = '../build/'
if _ACTION ~= 'ninja' then
location '.'
else
location './ninja'
end
configuration 'Debug'
targetdir(root .. 'bin/Debug')
objdir(root .. 'obj/Debug')
configuration 'Release'
flags 'OptimizeSpeed'
targetdir(root .. 'bin/Release')
objdir(root .. 'obj/Release')
configuration '*'
end
function setup()
flags 'Cpp17'
defines {
'_SCL_SECURE_NO_WARNINGS',
'_CRT_SECURE_NO_WARNINGS',
'_CRT_NONSTDC_NO_WARNINGS', -- for strdup in minitrace.c
'MTR_ENABLED',
}
-- GCC generates a warning for uninitialized data in
-- std::normal_distribution
configuration 'gcc'
removeflags 'ExtraWarnings'
configuration '*'
location(solution().location)
end
project 'test_bench'
kind 'StaticLib'
language 'C++'
files {
'../src/main.cpp',
'../src/minitrace.cpp',
}
removeflags 'ExtraWarnings'
setup()
project 'leak_gc'
kind 'ConsoleApp'
language 'C++'
files '../src/gc_leak.cpp'
links 'test_bench'
setup()
project 'dummy_gc'
kind 'ConsoleApp'
language 'C++'
files '../src/gc_dummy.cpp'
links 'test_bench'
setup()
|