]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/config/test/Jamfile.v2
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / libs / config / test / Jamfile.v2
1 #
2 # Copyright John Maddock 2008.
3 # Use, modification and distribution are subject to the
4 # Boost Software License, Version 1.0. (See accompanying file
5 # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 #
7 # If you need to alter build preferences then set them in
8 # the template defined in options_v2.jam.
9 #
10
11 import feature ;
12 import testing ;
13
14 project
15 : requirements
16 <toolset>gcc:<cxxflags>-Wno-deprecated-declarations
17 ;
18
19
20 import modules ;
21 import ../checks/config : requires ;
22
23 local is_unix = [ modules.peek : UNIX ] ;
24
25 lib atomic ;
26 lib pthread ;
27 lib rt ;
28
29 exe has_atomic_lib : config_info.cpp atomic ;
30 explicit has_atomic_lib ;
31 exe has_pthread_lib : config_info.cpp pthread ;
32 explicit has_pthread_lib ;
33 exe has_rt_lib : config_info.cpp rt ;
34 explicit has_rt_lib ;
35 obj check_memory : check_memory.cpp ;
36 explicit check_memory ;
37
38 test-suite config
39 :
40 [ compile config_test_c.c ]
41 [ run config_test.cpp
42 : #args
43 : #input-files
44 : #requirements
45 <threading>multi
46 [ check-target-builds has_atomic_lib : <source>atomic ]
47 [ check-target-builds has_pthread_lib : <source>pthread ]
48 [ check-target-builds has_rt_lib : <source>rt ]
49 : config_test_threaded
50 ]
51 [ run config_test.cpp
52 : #args
53 : #input-files
54 : #requirements
55 <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static
56 [ check-target-builds has_atomic_lib : <source>atomic ]
57 [ check-target-builds has_pthread_lib : <source>pthread ]
58 [ check-target-builds has_rt_lib : <source>rt ]
59 ]
60 [ run config_test.cpp
61 : #args
62 : #input-files
63 : #requirements
64 <rtti>off
65 <toolset>gcc-4.4.7,<cxxstd>0x:<build>no # <memory> does not compile with -fno-rtti
66 <toolset>embarcadero:<build>no # <memory> does not compile with -fno-rtti
67 [ check-target-builds has_atomic_lib : <source>atomic ]
68 [ check-target-builds has_pthread_lib : <source>pthread ]
69 [ check-target-builds has_rt_lib : <source>rt ]
70 [ check-target-builds check_memory : : <build>no ]
71 : config_test_no_rtti
72 ]
73 [ run config_test.cpp
74 : #args
75 : #input-files
76 : #requirements
77 <exception-handling>off
78 <target-os>vxworks:<build>no # vx requires complete library rebuild to turn off exceptions
79 [ check-target-builds has_atomic_lib : <source>atomic ]
80 [ check-target-builds has_pthread_lib : <source>pthread ]
81 [ check-target-builds has_rt_lib : <source>rt ]
82 : config_test_no_except
83 ]
84 [ run config_info.cpp : : : <test-info>always_show_run_output <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on ]
85 [ run config_info.cpp : : : <test-info>always_show_run_output <threading>multi <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_threaded ]
86 [ run config_info.cpp : : : <test-info>always_show_run_output <rtti>off <toolset>msvc:<warnings-as-errors>on <toolset>gcc:<warnings-as-errors>on <toolset>clang:<warnings-as-errors>on : config_info_no_rtti ]
87 [ run config_info.cpp : : : <test-info>always_show_run_output <exception-handling>off
88 <target-os>vxworks:<build>no
89 : config_info_no_except ]
90 [ run math_info.cpp : : : <test-info>always_show_run_output <toolset>borland:<runtime-link>static <toolset>borland:<link>static ]
91 [ run abi/abi_test.cpp abi/main.cpp ]
92 [ run limits_test.cpp ]
93 [ run link/main.cpp link//link_test
94 : #args
95 : #input-files
96 : #requirements
97 <runtime-link>shared
98 <threading>single
99 <define>BOOST_DYN_LINK=1
100 <define>BOOST_CONFIG_NO_LIB=1
101 <target-os>vxworks:<link>shared
102 :
103 config_link_test
104 ]
105 [ compile-fail threads/test_thread_fail1.cpp ]
106 [ compile-fail threads/test_thread_fail2.cpp ]
107 [ compile boost_fallthrough_test.cpp : [ check-target-builds has_clang_implicit_fallthrough "Clang implicit fallthrough" : <toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ] ]
108 [ compile helper_macro_test.cpp ]
109 [ run cstdint_test.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
110 [ run cstdint_test2.cpp : : : <warnings>all <toolset>gcc:<cxxflags>"-Wno-long-long -Wextra" <toolset>darwin:<cxxflags>-Wno-long-long ]
111 [ compile cstdint_include_test.cpp : <warnings>all <toolset>gcc:<cxxflags>-Wextra ]
112 [ run config_build_check.cpp : : : [ requires int128 cxx11_constexpr cxx11_user_defined_literals cpp_lib_complex_udls cpp_range_based_for_17 ] ]
113 [ run helper_macros_test.cpp ]
114 [ compile pragma_message_test.cpp ]
115 [ compile header_deprecated_test.cpp ]
116 [ compile boost_override_test.cpp ]
117 ;
118
119 obj has_clang_implicit_fallthrough : cmd_line_check.cpp :
120 <toolset>clang:<cxxflags>"-std=c++11 -Wimplicit-fallthrough" <warnings-as-errors>on <warnings>all ;
121
122 explicit has_clang_implicit_fallthrough ;
123
124 exe config_info_printer : config_info.cpp ;
125 explicit config_info_printer ;
126 exe math_info_printer : math_info.cpp ;
127 explicit math_info_printer ;
128
129 actions print-run
130 {
131 echo With Standard Version $(STANDARD:E=default)
132 echo =====================================================================
133 $(>)
134 }
135
136 rule print-run ( target : sources * : properties * )
137 {
138 STANDARD on $(target) = [ feature.get-values <cxxstd> : $(properties) ] ;
139 }
140
141 notfile print_config_info : @print-run : config_info_printer ;
142 explicit print_config_info ;
143 notfile print_math_info : @print-run : math_info_printer ;
144 explicit print_math_info ;
145
146 # Backwards compatibility:
147 exe config_info_travis : config_info.cpp ;
148 install config_info_travis_install : config_info_travis : <location>. ;
149 explicit config_info_travis_install ;
150