blob: beba2026902c38cdf100c6b57475a58a22b4df90 (
plain)
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
|
# Latest jamplus is needed to use this
# Targets:
# pugixml - build pugixml library
# tests - build pugixml test suite
# run_tests - run pugixml test suite
# coverage - get test suite coverage
# Options:
# toolset=name - select toolset
# supported toolsets: mingw*, msvc*
# default toolset/configuration
if ( ! $(toolset) )
{
if ( $(UNIX) )
{
toolset = "gcc" ;
}
else
{
exit You should specify a toolset ;
}
}
if ( ! $(configuration) )
{
configuration = "debug" ;
}
# split defines into list
defines = [ Split $(defines) : ',' ] ;
# options
if ( $(defines) )
{
BUILD = build/$(toolset)/$(defines:J=_)/$(configuration) ;
}
else
{
BUILD = build/$(toolset)/standard/$(configuration) ;
}
if ( $(toolset:I=^mingw) || $(toolset) = gcc )
{
CCFLAGS = -fprofile-arcs -ftest-coverage ;
LDFLAGS = -fprofile-arcs ;
GCOVFLAGS = -n ;
GCOVFLAGS += -o $(BUILD)/src ; # because stupid gcov can't find files via relative paths
}
# rules
include "Jamrules.jam" ;
# enable dependency cache
DEPCACHE.standard = build/.depcache ;
# targets
Library pugixml : src/pugixml.cpp src/pugixpath.cpp ;
Application tests : [ Glob tests : *.cpp ] : pugixml ;
Test run_tests : tests ;
Coverage coverage : pugixml ;
Depends coverage : run_tests ;
|