Files
variant2/test/Jamfile

169 lines
5.0 KiB
Plaintext
Raw Permalink Normal View History

2017-05-29 17:31:05 +03:00
# Boost.Variant2 Library Test Jamfile
#
# Copyright 2015-2019 Peter Dimov
2017-05-29 17:31:05 +03:00
#
# Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt
import testing ;
import-search /boost/config/checks ;
2024-03-11 08:38:17 -05:00
import config : requires ;
2017-05-29 17:31:05 +03:00
project
: default-build
2020-01-31 23:59:00 +02:00
<warnings>extra
: requirements
2024-08-28 20:28:59 +03:00
<library>/boost/variant2//boost_variant2
<library>/boost/core//boost_core
2024-08-28 20:28:59 +03:00
<library>/boost/container_hash//boost_container_hash
<toolset>msvc:<warnings-as-errors>on
<toolset>gcc:<warnings-as-errors>on
<toolset>clang:<warnings-as-errors>on
2024-03-11 08:38:17 -05:00
;
2017-05-29 17:31:05 +03:00
2020-01-09 17:43:54 +02:00
run quick.cpp ;
2018-10-18 04:29:03 +03:00
run variant_size.cpp ;
run variant_alternative.cpp ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_holds_alternative.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_holds_alternative_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_get_by_index.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_get_by_index_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_get_by_type.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_get_by_type_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_default_construct.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_default_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_copy_construct.cpp ;
2018-10-24 18:58:23 +03:00
compile variant_copy_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
2018-10-18 04:29:03 +03:00
run variant_move_construct.cpp ;
2018-10-24 19:03:00 +03:00
compile variant_move_construct_cx.cpp : [ requires cxx14_constexpr ] ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_value_construct.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_value_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_in_place_index_construct.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_in_place_index_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_in_place_type_construct.cpp ;
2020-01-22 17:38:45 +02:00
compile variant_in_place_type_construct_cx.cpp : <toolset>msvc-14.0:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_copy_assign.cpp ;
2024-12-22 20:12:08 +02:00
compile variant_copy_assign_cx.cpp : [ requires cxx14_constexpr ] <toolset>gcc-5:<build>no <toolset>gcc-6:<build>no ;
2017-06-09 15:09:42 +03:00
2018-10-18 04:29:03 +03:00
run variant_move_assign.cpp ;
2024-12-22 20:12:08 +02:00
compile variant_move_assign_cx.cpp : [ requires cxx14_constexpr ] <toolset>gcc-5:<build>no <toolset>gcc-6:<build>no ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_value_assign.cpp ;
2018-10-18 07:19:45 +03:00
compile variant_value_assign_cx.cpp : [ requires cxx14_constexpr ] ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_emplace_index.cpp ;
2018-10-18 07:19:45 +03:00
compile variant_emplace_index_cx.cpp : [ requires cxx14_constexpr ] ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_emplace_type.cpp ;
2018-10-18 07:19:45 +03:00
compile variant_emplace_type_cx.cpp : [ requires cxx14_constexpr ] ;
2017-06-09 14:58:49 +03:00
2018-10-18 04:29:03 +03:00
run variant_swap.cpp ;
2018-10-18 04:29:03 +03:00
run variant_eq_ne.cpp ;
compile variant_eq_ne_cx.cpp : [ requires cxx14_constexpr ] ;
2019-03-06 01:09:40 +02:00
run variant_lt_gt.cpp ;
compile variant_lt_gt_cx.cpp : [ requires cxx14_constexpr ] ;
2018-10-18 04:29:03 +03:00
run variant_destroy.cpp ;
run variant_visit.cpp ;
2019-03-06 01:09:40 +02:00
2018-10-18 04:29:03 +03:00
run variant_convert_construct.cpp ;
run variant_subset.cpp ;
run variant_valueless.cpp ;
2019-02-26 14:26:59 +02:00
run variant_copy_construct_throw.cpp ;
run variant_move_construct_throw.cpp ;
run variant_convert_construct_throw.cpp ;
run variant_copy_assign_throw.cpp ;
run variant_move_assign_throw.cpp ;
2019-06-03 02:46:59 +03:00
local NX =
<exception-handling>off
<toolset>msvc:<cxxflags>/wd4530
<toolset>msvc:<cxxflags>/wd4577
;
run variant_get_by_index.cpp throw_exception.cpp : : : $(NX) : variant_get_by_index_nx ;
2020-01-22 17:38:45 +02:00
compile variant_get_by_index_cx.cpp : $(NX) <toolset>msvc-14.0:<build>no : variant_get_by_index_cx_nx ;
2019-06-03 02:46:59 +03:00
run variant_get_by_type.cpp throw_exception.cpp : : : $(NX) : variant_get_by_type_nx ;
2020-01-22 17:38:45 +02:00
compile variant_get_by_type_cx.cpp : $(NX) <toolset>msvc-14.0:<build>no : variant_get_by_type_cx_nx ;
2019-06-03 02:46:59 +03:00
run variant_subset.cpp throw_exception.cpp : : : $(NX) : variant_subset_nx ;
2020-01-11 04:51:30 +02:00
run variant_hash.cpp ;
2020-01-23 03:53:05 +02:00
run variant_trivial.cpp ;
2020-01-23 15:24:32 +02:00
run variant_special.cpp ;
2020-05-06 20:11:03 +03:00
run variant_visit_derived.cpp ;
2020-05-08 22:22:49 +03:00
run variant_many_types.cpp ;
2020-06-03 17:00:13 +03:00
run variant_visit_r.cpp : : :
<toolset>gcc,<target-os>windows:<variant>release
<toolset>gcc,<target-os>cygwin:<variant>release
;
compile variant_derived_construct.cpp ;
2021-09-14 21:06:01 +03:00
run variant_visit_by_index.cpp ;
2021-09-15 02:51:11 +03:00
run variant_ostream_insert.cpp ;
run is_output_streamable.cpp ;
2022-10-18 06:08:18 +03:00
2024-03-11 08:38:17 -05:00
local JSON = <library>/boost/json//boost_json/<warnings>off "<toolset>msvc-14.0:<build>no" "<toolset>msvc-14.2:<cxxflags>-wd5104" "<undefined-sanitizer>norecover:<link>static" ;
2022-10-18 06:08:18 +03:00
run variant_json_value_from.cpp : : : $(JSON) ;
run variant_json_value_to.cpp : : : $(JSON) ;
compile variant_uses_double_storage.cpp ;
run variant_derived_construct2.cpp ;
compile variant_visit_cx.cpp : [ requires cxx14_constexpr ] ;
compile variant_visit_cx_2.cpp : [ requires cxx14_constexpr ] ;
compile variant_visit_r_cx.cpp : [ requires cxx14_constexpr ] ;
local index-type-reqs =
<variant>release
<toolset>msvc,<address-model>32:<build>no
<toolset>clang,<target-os>linux:<cxxflags>-ftemplate-depth=1024 # for Clang 3.x
;
local list-sizes = 126 127 128 129 254 255 256 257 ;
for local list-size in $(list-sizes)
{
run variant_index_type.cpp : : : $(index-type-reqs) <define>LIST_SIZE=$(list-size) : variant_index_type_$(list-size) ;
}
compile variant_default_construct_cx_2.cpp ;
compile variant_default_construct_cx_3.cpp ;
compile variant_default_construct_cx_4.cpp ;
compile variant_default_construct_cx_5.cpp ;
compile variant_value_construct_cx_2.cpp ;
compile variant_value_construct_cx_3.cpp ;
compile variant_value_construct_cx_4.cpp ;