1 2# Copyright 2005-2012 Daniel James. 3# Distributed under the Boost Software License, Version 1.0. (See accompanying 4# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6import testing ; 7 8project hash-tests 9 : requirements 10 <warnings>all 11 <toolset>intel:<warnings>on 12 #<toolset>intel:<cxxflags>-strict-ansi 13 <toolset>gcc:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" 14 <toolset>darwin:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" 15 <toolset>clang:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" 16 #<toolset>msvc:<warnings-as-errors>on 17 #<toolset>gcc:<warnings-as-errors>on 18 #<toolset>darwin:<warnings-as-errors>on 19 ; 20 21test-suite container_hash/hash 22 : 23 [ run hash_info.cpp : : : <test-info>always_show_run_output ] 24 [ compile check_float_funcs.cpp ] 25 [ run hash_fwd_test_1.cpp ] 26 [ run hash_fwd_test_2.cpp ] 27 [ run hash_number_test.cpp ] 28 [ run hash_enum_test.cpp ] 29 [ run hash_pointer_test.cpp ] 30 [ run hash_function_pointer_test.cpp ] 31 [ run hash_float_test.cpp ] 32 [ run hash_long_double_test.cpp ] 33 [ run hash_string_test.cpp ] 34 [ run hash_range_test.cpp ] 35 [ run hash_custom_test.cpp ] 36 [ run hash_global_namespace_test.cpp ] 37 [ run hash_friend_test.cpp ] 38 [ run hash_built_in_array_test.cpp ] 39 [ run hash_value_array_test.cpp ] 40 [ run hash_vector_test.cpp ] 41 [ run hash_list_test.cpp ] 42 [ run hash_deque_test.cpp ] 43 [ run hash_set_test.cpp ] 44 [ run hash_map_test.cpp ] 45 [ run hash_complex_test.cpp ] 46 [ run hash_optional_test.cpp ] 47 [ run hash_variant_test.cpp ] 48 [ run hash_type_index_test.cpp ] 49 [ run hash_system_error_test.cpp ] 50 [ run hash_std_array_test.cpp ] 51 [ run hash_std_tuple_test.cpp ] 52 [ run hash_std_smart_ptr_test.cpp ] 53 [ run link_test.cpp link_test_2.cpp ] 54 [ run link_ext_test.cpp link_no_ext_test.cpp ] 55 [ run extensions_hpp_test.cpp ] 56 [ compile-fail hash_no_ext_fail_test.cpp ] 57 [ compile-fail namespace_fail_test.cpp ] 58 [ run implicit_test.cpp ] 59 [ run hash_no_ext_macro_1.cpp ] 60 [ run hash_no_ext_macro_2.cpp ] 61 ; 62 63test-suite container_hash/hash_no_ext 64 : 65 [ run hash_number_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_number_test ] 66 [ run hash_pointer_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_pointer_test ] 67 [ run hash_function_pointer_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_function_pointer_test ] 68 [ run hash_float_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_float_test ] 69 [ run hash_long_double_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_long_double_test ] 70 [ run hash_string_test.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_string_test ] 71 [ run link_test.cpp link_test_2.cpp : : : <define>BOOST_HASH_NO_EXTENSIONS : no_ext_link_test ] 72 ; 73 74# Tests to see if the floating point hash is using the binary hash. 75# Not run normally because on some platforms these should fail. 76test-suite container_hash/hash_no_generic_float 77 : 78 [ run hash_float_test.cpp 79 : : : <define>BOOST_HASH_DETAIL_TEST_WITHOUT_GENERIC 80 : hash_float_test_no_generic ] 81 [ run hash_long_double_test.cpp 82 : : : <define>BOOST_HASH_DETAIL_TEST_WITHOUT_GENERIC 83 : hash_long_double_test_no_generic ] 84 ; 85explicit container_hash/hash_no_generic_float ; 86 87build-project ../examples ; 88