blob: 8c68f74f31cf3d2f2e1ef470c46865e947aa3fca (
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
140
141
142
143
144
145
146
147
|
# Boost Chrono Library test Jamfile
# Copyright Beman Dawes 2008
# Copyright Vicente J. Botet Escriba 2009-2010
# Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt
# See library home page at http://www.boost.org/libs/chrono
import os ;
import feature ;
project
: requirements
<target-os>freebsd:<linkflags>"-lrt"
<target-os>linux:<linkflags>"-lrt"
<toolset>pgi:<linkflags>"-lrt"
#<threading>single:<define>BOOST_CHRONO_THREAD_DISABLED
<toolset>msvc:<asynch-exceptions>on
<define>BOOST_CHRONO_USES_MPL_ASSERT
<toolset>sun:<define>BOOST_TYPEOF_EMULATION
<warnings>all
<toolset>gcc:<cxxflags>-Wextra
<toolset>gcc:<cxxflags>-pedantic
<toolset>gcc:<cxxflags>-Wno-long-long
<toolset>darwin:<cxxflags>-Wextra
<toolset>darwin:<cxxflags>-pedantic
<toolset>darwin:<cxxflags>-Wno-long-long
#<toolset>pathscale:<cxxflags>-Wextra
<toolset>pathscale:<cxxflags>-Wno-long-long
<toolset>pathscale:<cxxflags>-pedantic
<toolset>clang:<cxxflags>-Wextra
<toolset>clang:<cxxflags>-pedantic
<toolset>clang:<cxxflags>-Wno-long-long
<toolset>gcc-4.5.0,<target-os>windows:<cxxflags>-Wno-missing-field-initializers
<toolset>gcc-4.5.0,<target-os>windows:<cxxflags>-fdiagnostics-show-option
<toolset>msvc:<cxxflags>/wd4127
# Note: Some of the remarks from the Intel compiler are disabled
# remark #304: access control not specified ("public" by default)
# remark #383: value copied to temporary, reference to temporary used
# remark #1418: external function definition with no prior declaration
<toolset>intel:<cxxflags>-wd304,383,1418
<define>BOOST_CHRONO_VERSION=2
;
rule chrono-run ( sources )
{
return
[ run $(sources) ../build//boost_chrono
: :
:
: $(sources[1]:B)_shared ]
[ run $(sources) ../build//boost_chrono/<link>static
: :
:
: $(sources[1]:B)_static ]
[ run $(sources)
: :
: <define>BOOST_CHRONO_HEADER_ONLY
: $(sources[1]:B)_header ]
;
}
rule chrono-run2 ( sources : name )
{
return
[ run $(sources) ../build//boost_chrono
: :
:
: $(name)_shared ]
[ run $(sources) ../build//boost_chrono/<link>static
: :
:
: $(name)_static ]
[ run $(sources)
: :
: <define>BOOST_CHRONO_HEADER_ONLY
: $(name)_header ]
;
}
rule chrono-run-mt ( sources )
{
return
[ run $(sources) ../build//boost_chrono
: :
:
: $(sources[1]:B)_shared ]
[ run $(sources) ../build//boost_chrono/<link>static
: :
:
: $(sources[1]:B)_static ]
[ run $(sources)
: :
: <define>BOOST_CHRONO_HEADER_ONLY
: $(sources[1]:B)_header ]
;
}
rule chrono-run2-mt ( sources : name )
{
return
[ run $(sources) ../build//boost_chrono
: :
:
<library>/boost/system//boost_system
: $(name)_shared ]
[ run $(sources) ../build//boost_chrono/<link>static
: :
:
<library>/boost/system//boost_system
: $(name)_static ]
[ run $(sources)
: :
: <define>BOOST_CHRONO_HEADER_ONLY
: $(name)_header ]
;
}
rule chrono-compile ( sources )
{
return
[ compile $(sources)
:
: $(sources[1]:B)_lib ]
[ compile $(sources)
: <define>BOOST_CHRONO_HEADER_ONLY
: $(sources[1]:B)_header ]
;
}
rule chrono-compile2 ( sources : name )
{
return
[ compile $(sources)
:
: $(name)_lib ]
[ compile $(sources)
: <define>BOOST_CHRONO_HEADER_ONLY
: $(name)_header ]
;
}
test-suite "perf"
:
[ chrono-run store_now_in_vector.cpp ]
;
|