• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#  Boost.Variant2 Library Test Jamfile
2#
3#  Copyright 2015-2019 Peter Dimov
4#
5#  Distributed under the Boost Software License, Version 1.0.
6#  See accompanying file LICENSE_1_0.txt or copy at
7#  http://www.boost.org/LICENSE_1_0.txt
8
9import testing ;
10import ../../config/checks/config : requires ;
11
12project
13  : default-build
14
15    <warnings>extra
16
17  : requirements
18
19    [ requires cxx11_variadic_templates cxx11_template_aliases cxx11_decltype cxx11_constexpr ]
20
21    <toolset>msvc:<warnings-as-errors>on
22    <toolset>gcc:<warnings-as-errors>on
23    <toolset>clang:<warnings-as-errors>on
24  ;
25
26run quick.cpp ;
27
28run variant_size.cpp ;
29run variant_alternative.cpp ;
30
31run variant_holds_alternative.cpp ;
32compile variant_holds_alternative_cx.cpp : <toolset>msvc-14.0:<build>no ;
33
34run variant_get_by_index.cpp ;
35compile variant_get_by_index_cx.cpp : <toolset>msvc-14.0:<build>no ;
36
37run variant_get_by_type.cpp ;
38compile variant_get_by_type_cx.cpp : <toolset>msvc-14.0:<build>no ;
39
40run variant_default_construct.cpp ;
41compile variant_default_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
42
43run variant_copy_construct.cpp ;
44compile variant_copy_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
45
46run variant_move_construct.cpp ;
47compile variant_move_construct_cx.cpp : [ requires cxx14_constexpr ] ;
48
49run variant_value_construct.cpp ;
50compile variant_value_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
51
52run variant_in_place_index_construct.cpp ;
53compile variant_in_place_index_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
54
55run variant_in_place_type_construct.cpp ;
56compile variant_in_place_type_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
57
58run variant_copy_assign.cpp ;
59compile variant_copy_assign_cx.cpp : [ requires cxx14_constexpr ] ;
60
61run variant_move_assign.cpp ;
62compile variant_move_assign_cx.cpp : [ requires cxx14_constexpr ] ;
63
64run variant_value_assign.cpp ;
65compile variant_value_assign_cx.cpp : [ requires cxx14_constexpr ] ;
66
67run variant_emplace_index.cpp ;
68compile variant_emplace_index_cx.cpp : [ requires cxx14_constexpr ] ;
69
70run variant_emplace_type.cpp ;
71compile variant_emplace_type_cx.cpp : [ requires cxx14_constexpr ] ;
72
73run variant_swap.cpp ;
74
75run variant_eq_ne.cpp ;
76compile variant_eq_ne_cx.cpp : [ requires cxx14_constexpr ] ;
77
78run variant_lt_gt.cpp ;
79compile variant_lt_gt_cx.cpp : [ requires cxx14_constexpr ] ;
80
81run variant_destroy.cpp ;
82run variant_visit.cpp ;
83
84run variant_convert_construct.cpp ;
85run variant_subset.cpp ;
86run variant_valueless.cpp ;
87
88run variant_copy_construct_throw.cpp ;
89run variant_move_construct_throw.cpp ;
90run variant_convert_construct_throw.cpp ;
91
92run variant_copy_assign_throw.cpp ;
93run variant_move_assign_throw.cpp ;
94
95local NX =
96    <exception-handling>off
97    <toolset>msvc:<cxxflags>/wd4530
98    <toolset>msvc:<cxxflags>/wd4577
99    ;
100
101run variant_get_by_index.cpp throw_exception.cpp : : : $(NX) : variant_get_by_index_nx ;
102compile variant_get_by_index_cx.cpp : $(NX) <toolset>msvc-14.0:<build>no : variant_get_by_index_cx_nx ;
103
104run variant_get_by_type.cpp throw_exception.cpp : : : $(NX) : variant_get_by_type_nx ;
105compile variant_get_by_type_cx.cpp : $(NX) <toolset>msvc-14.0:<build>no : variant_get_by_type_cx_nx ;
106
107run variant_subset.cpp throw_exception.cpp : : : $(NX) : variant_subset_nx ;
108
109run variant_hash.cpp ;
110
111run variant_trivial.cpp ;
112run variant_special.cpp ;
113
114run variant_visit_derived.cpp ;
115
116run variant_many_types.cpp ;
117
118run variant_visit_r.cpp ;
119