1# Boost.Mp11 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 : requirements 14 15 [ requires cxx11_variadic_templates cxx11_template_aliases cxx11_decltype cxx11_hdr_tuple ] 16 17 <toolset>msvc:<warnings>all # /W4 18 <toolset>msvc:<warnings-as-errors>on 19 20 <toolset>gcc:<warnings-as-errors>on 21 22 <toolset>clang:<warnings-as-errors>on 23 ; 24 25# include-only 26compile mp11.cpp ; 27 28# list 29run mp_size.cpp ; 30run mp_empty.cpp ; 31run mp_front.cpp ; 32run mp_pop_front.cpp ; 33run mp_second.cpp ; 34run mp_third.cpp ; 35run mp_push_front.cpp ; 36run mp_push_back.cpp ; 37run mp_rename.cpp ; 38run mp_append.cpp ; 39run mp_append_2.cpp ; 40run mp_append_sf.cpp ; 41run mp_replace_front.cpp ; 42run mp_replace_second.cpp ; 43run mp_replace_third.cpp ; 44run mp_apply_q.cpp ; 45run mp_is_list.cpp ; 46run mp_list_c.cpp ; 47run mp_transform_front.cpp ; 48run mp_transform_second.cpp ; 49run mp_transform_third.cpp ; 50 51# algorithm 52run mp_assign.cpp ; 53run mp_clear.cpp ; 54run mp_transform.cpp ; 55run mp_transform_q.cpp ; 56run mp_transform_sf.cpp ; 57run mp_transform_if.cpp ; 58run mp_transform_if_q.cpp ; 59run mp_filter.cpp ; 60run mp_fill.cpp ; 61run mp_count.cpp ; 62run mp_count_if.cpp ; 63run mp_count_if_q.cpp ; 64run mp_contains.cpp ; 65run mp_starts_with.cpp ; 66run mp_starts_with_sf.cpp ; 67run mp_repeat.cpp ; 68run mp_product.cpp ; 69run mp_drop.cpp ; 70run mp_iota.cpp ; 71run mp_at.cpp ; 72run mp_at_sf.cpp ; 73run mp_take.cpp ; 74run mp_replace.cpp ; 75run mp_replace_if.cpp ; 76run mp_replace_if_q.cpp ; 77run mp_copy_if.cpp ; 78run mp_copy_if_q.cpp ; 79run mp_remove.cpp ; 80run mp_remove_if.cpp ; 81run mp_remove_if_q.cpp ; 82run mp_partition.cpp ; 83run mp_partition_q.cpp ; 84run mp_sort.cpp ; 85run mp_sort_q.cpp ; 86run mp_find.cpp ; 87run mp_find_if.cpp ; 88run mp_find_if_q.cpp ; 89run mp_reverse.cpp ; 90run mp_fold.cpp ; 91run mp_fold_q.cpp ; 92run mp_reverse_fold.cpp ; 93run mp_reverse_fold_q.cpp ; 94run mp_unique.cpp ; 95run mp_unique_if.cpp ; 96run mp_unique_if_q.cpp ; 97run mp_all_of.cpp ; 98run mp_all_of_q.cpp ; 99run mp_any_of.cpp ; 100run mp_any_of_q.cpp ; 101run mp_none_of.cpp ; 102run mp_none_of_q.cpp ; 103run mp_replace_at.cpp ; 104run mp_replace_at_c.cpp ; 105run mp_for_each.cpp ; 106run mp_insert.cpp ; 107run mp_erase.cpp ; 108run mp_with_index.cpp ; 109run mp_with_index_cx.cpp ; 110run mp_from_sequence.cpp ; 111run mp_min_element.cpp ; 112run mp_min_element_q.cpp ; 113run mp_max_element.cpp ; 114run mp_max_element_q.cpp ; 115run mp_nth_element.cpp ; 116run mp_nth_element_q.cpp ; 117run mp_back.cpp ; 118run mp_pop_back.cpp ; 119run mp_flatten.cpp ; 120run mp_rotate_left.cpp ; 121run mp_rotate_right.cpp ; 122run mp_power_set.cpp ; 123run mp_partial_sum.cpp ; 124run mp_iterate.cpp ; 125 126# integral 127run integral.cpp ; 128 129# utility 130run mp_identity.cpp ; 131run mp_inherit.cpp ; 132run mp_if.cpp ; 133run mp_if_sf.cpp ; 134run mp_eval_if.cpp ; 135run mp_eval_if_sf.cpp ; 136run mp_valid.cpp ; 137run mp_defer.cpp ; 138run mp_quote.cpp ; 139run mp_invoke_q.cpp ; 140run mp_invoke_q_sf.cpp ; 141run mp_quote_trait.cpp ; 142run mp_cond.cpp ; 143run mp_cond_sf.cpp ; 144run mp_not_fn.cpp ; 145run mp_eval_if_not.cpp ; 146run mp_eval_or.cpp ; 147run mp_compose.cpp ; 148 149# integer_sequence 150run integer_sequence.cpp ; 151 152# tuple 153run tuple_for_each.cpp ; 154compile tuple_for_each_cx.cpp ; 155run tuple_apply.cpp ; 156compile tuple_apply_cx.cpp ; 157run construct_from_tuple.cpp ; 158compile construct_from_tuple_cx.cpp ; 159run tuple_transform.cpp ; 160run tuple_transform_2.cpp ; 161compile tuple_transform_cx.cpp ; 162 163# set 164run mp_set_contains.cpp ; 165run mp_set_push_back.cpp ; 166run mp_set_push_front.cpp ; 167run mp_is_set.cpp ; 168run mp_set_union.cpp ; 169run mp_set_union_sf.cpp ; 170run mp_set_difference.cpp ; 171run mp_set_difference_sf.cpp ; 172run mp_set_intersection.cpp ; 173run mp_set_intersection_sf.cpp ; 174 175# function 176run mp_all.cpp ; 177run mp_and.cpp ; 178run mp_any.cpp ; 179run mp_or.cpp ; 180run mp_same.cpp ; 181run mp_plus.cpp ; 182run mp_less.cpp ; 183run mp_min.cpp ; 184run mp_max.cpp ; 185run mp_similar.cpp ; 186 187# map 188run mp_map_find.cpp ; 189run mp_map_contains.cpp ; 190run mp_map_insert.cpp ; 191run mp_map_replace.cpp ; 192run mp_map_erase.cpp ; 193run mp_map_update.cpp ; 194run mp_map_update_q.cpp ; 195run mp_map_keys.cpp ; 196run mp_is_map.cpp ; 197 198# bind 199run mp_bind.cpp ; 200run mp_bind_q.cpp ; 201run mp_bind_front.cpp ; 202run mp_bind_back.cpp ; 203 204# mpl 205run mpl.cpp : ; 206run mpl_list.cpp : ; 207run mpl_tuple.cpp : ; 208 209# version 210run version.cpp ; 211run mp11_version.cpp ; 212run list_version.cpp ; 213run algorithm_version.cpp ; 214run integral_version.cpp ; 215run utility_version.cpp ; 216run function_version.cpp ; 217run map_version.cpp ; 218run set_version.cpp ; 219run bind_version.cpp ; 220run integer_sequence_version.cpp ; 221run tuple_version.cpp ; 222run mpl_version.cpp ; 223 224# quick (for CI) 225alias quick : mp11 mp_size ; 226explicit quick ; 227