blob: 8a0f878a8da38fc104e7bd2f3e867632692f065d (
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
# Boost regression-testing Jamfile
# (C) Copyright David Abrahams 2002. Permission to copy, use, modify, sell and
# distribute this software is granted provided this copyright notice appears in
# all copies. This software is provided "as is" without express or implied
# warranty, and with no claim as to its suitability for any purpose.
# Status:
# - std::locale-support usage is commented out.
# Two test suite have different names.
# <no-warn> in config test is commented out.
# One of the smart_ptr test is run only from invocation dir in V1, and not
# run in V2 at all.
project status
: source-location $(BOOST_ROOT)
: requirements <hardcode-dll-paths>true
;
import testing ;
import modules ;
import project ;
import regex ;
import modules ;
import path ;
local check-libs-only = [ MATCH "^--(check-libs-only)" : [ modules.peek : ARGV ] ] ;
local check-libs-only-targets = ;
local libraries = ;
local rule run-tests ( root : tests * )
{
local limit-tests = [ MATCH "^--limit-tests=(.*)" : [ modules.peek : ARGV ] ] ;
local location = [ project.attribute $(__name__) location ] ;
for local test in $(tests)
{
local library = [ regex.split $(test) "/" ] ;
library = $(library[0]) ;
if $(limit-tests)
{
if ! [ MATCH "^($(limit-tests))" : $(test) ]
{
library = ;
}
}
if $(library)
{
use-project /boost/$(test) : ../$(root)/$(test) ;
if $(root) = libs && ( ! ( $(library) in $(libraries) ) )
{
libraries += $(library) ;
local test_module = [ project.find ../$(root)/$(test) : $(location) ] ;
modules.poke $(test_module) : __LIBRARY__ : $(root)/$(library) ;
modules.poke $(test_module) : __JAMFILE__ : [ modules.peek project : JAMFILE ] ;
project.push-current [ project.target $(test_module) ] ;
module $(test_module)
{
import testing ;
testing.make-test run-pyd :
$(BOOST_ROOT)/status/boost_check_library.py
:
<pythonpath>$(BOOST_ROOT)/status
<testing.arg>--boost-root=\"$(BOOST_ROOT)\"
<testing.arg>--library=$(__LIBRARY__)
<testing.arg>--jamfile=\"$(__JAMFILE__:J=;)\"
<testing.arg>organization
:
__boost_check_library__ ;
}
project.pop-current ;
check-libs-only-targets += ../$(root)/$(test)//__boost_check_library__ ;
}
if ! $(check-libs-only)
{
build-project ../$(root)/$(test) ;
}
}
else
{
# use-project /boost/$(test) : ../$(root)/$(test) ;
}
}
}
local libs-to-test = ;
for local libdir in [ path.glob $(BOOST_ROOT) : libs/* ]
{
local jamfiles = [ path.glob [ path.join $(libdir) test ] : [ modules.peek project : JAMFILE ] ] ;
if $(jamfiles)
{
libs-to-test += $(libdir:B) ;
}
}
libs-to-test = [ SORT $(libs-to-test) ] ;
run-tests libs : $(libs-to-test)/test ;
# Tests from Jamfiles in individual library test subdirectories
# Please keep these in alphabetic order by test-suite name
run-tests libs :
algorithm/minmax/test # test-suite algorith/minmax
algorithm/string/test # test-suite algorithm/string
concept_check # test-suite concept_check
container/bench # test-suite container benchmarks
container/example # test-suite container_example
core/test/swap # test-suite core/swap
disjoint_sets # test-suite disjoint_sets
dynamic_bitset # test-suite dynamic_bitset
functional/factory/test # test-suite functional/factory
functional/forward/test # test-suite functional/forward
functional/hash/test/extra # test-suite functional/hash
functional/overloaded_function/test # test-suite func./overloaded_function
geometry/index/test # test-suite geometry/index
geometry/extensions/test # test-suite geometry/extensions
interprocess/example # test-suite interprocess_example
intrusive/example # test-suite intrusive_example
move/example # test-suite move_example
numeric/conversion/test # test-suite numeric/conversion
numeric/interval/test # test-suite numeric/interval
numeric/odeint/test # test-suite numeric/odeint
numeric/ublas/test # test-suite numeirc/uBLAS
regex/example # test-suite regex-examples
spirit/classic/test # test-suite classic spirit
spirit/repository/test # test-suite spirit_v2 repository
static_assert # test-suite static_assert
unordered/test/unordered # test-suite unordered
unordered/test/exception # test-suite unordered-exception
utility/identity_type/test # test-suite utility/identity_type
wave/test/build # test-suite wave
;
run-tests tools :
bcp/test
;
if $(check-libs-only-targets)
{
alias check-libs-only : $(check-libs-only-targets) ;
}
|