diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 18:45:59 +0000 |
commit | 19fcec84d8d7d21e796c7624e521b60d28ee21ed (patch) | |
tree | 42d26aa27d1e3f7c0b8bd3fd14e7d7082f5008dc /src/boost/tools/cmake/test | |
parent | Initial commit. (diff) | |
download | ceph-upstream.tar.xz ceph-upstream.zip |
Adding upstream version 16.2.11+ds.upstream/16.2.11+dsupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/boost/tools/cmake/test')
24 files changed, 379 insertions, 0 deletions
diff --git a/src/boost/tools/cmake/test/assert/CMakeLists.txt b/src/boost/tools/cmake/test/assert/CMakeLists.txt new file mode 100644 index 000000000..d358816f8 --- /dev/null +++ b/src/boost/tools/cmake/test/assert/CMakeLists.txt @@ -0,0 +1,17 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_assert_install_test LANGUAGES CXX) + +find_package(boost_assert REQUIRED) + +add_executable(main main.cpp) +target_link_libraries(main Boost::assert) + +enable_testing() +add_test(NAME main COMMAND main) + +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>) diff --git a/src/boost/tools/cmake/test/assert/main.cpp b/src/boost/tools/cmake/test/assert/main.cpp new file mode 100644 index 000000000..305a35441 --- /dev/null +++ b/src/boost/tools/cmake/test/assert/main.cpp @@ -0,0 +1,11 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/assert.hpp> + +int main() +{ + int x = 5; + BOOST_ASSERT( x > 4 ); +} diff --git a/src/boost/tools/cmake/test/atomic/CMakeLists.txt b/src/boost/tools/cmake/test/atomic/CMakeLists.txt new file mode 100644 index 000000000..8eb7edf84 --- /dev/null +++ b/src/boost/tools/cmake/test/atomic/CMakeLists.txt @@ -0,0 +1,21 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_atomic_install_test LANGUAGES CXX) + +find_package(boost_atomic REQUIRED) + +if(BOOST_RUNTIME_LINK STREQUAL "static") + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") +endif() + +add_executable(main main.cpp) +target_link_libraries(main Boost::atomic) + +enable_testing() +add_test(NAME main COMMAND main) + +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>) diff --git a/src/boost/tools/cmake/test/atomic/main.cpp b/src/boost/tools/cmake/test/atomic/main.cpp new file mode 100644 index 000000000..21d11af8b --- /dev/null +++ b/src/boost/tools/cmake/test/atomic/main.cpp @@ -0,0 +1,16 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/atomic.hpp> + +struct X +{ + double v[ 8 ]; +}; + +int main() +{ + boost::atomic<X> a; + a.store( X() ); +} diff --git a/src/boost/tools/cmake/test/boost_fetch/CMakeLists.txt b/src/boost/tools/cmake/test/boost_fetch/CMakeLists.txt new file mode 100644 index 000000000..3883c6fe1 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_fetch/CMakeLists.txt @@ -0,0 +1,25 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_fetch_test LANGUAGES CXX) + +include("${CMAKE_CURRENT_SOURCE_DIR}/../../include/BoostFetch.cmake") + +include(CTest) +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>) + +set(BUILD_TESTING OFF) # hide cache variable + +boost_fetch(boostorg/assert TAG develop EXCLUDE_FROM_ALL) +boost_fetch(boostorg/config TAG develop EXCLUDE_FROM_ALL) +boost_fetch(boostorg/core TAG develop EXCLUDE_FROM_ALL) + +unset(BUILD_TESTING) + +add_executable(main main.cpp) +target_link_libraries(main Boost::core) + +add_test(NAME main COMMAND main) diff --git a/src/boost/tools/cmake/test/boost_fetch/main.cpp b/src/boost/tools/cmake/test/boost_fetch/main.cpp new file mode 100644 index 000000000..639b9c37a --- /dev/null +++ b/src/boost/tools/cmake/test/boost_fetch/main.cpp @@ -0,0 +1,14 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/core/lightweight_test.hpp> + +int main() +{ + int x = 5; + + BOOST_TEST_GT( x, 4 ); + + return boost::report_errors(); +} diff --git a/src/boost/tools/cmake/test/boost_test/CMakeLists.txt b/src/boost/tools/cmake/test/boost_test/CMakeLists.txt new file mode 100644 index 000000000..e595f5d8a --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/CMakeLists.txt @@ -0,0 +1,56 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_cmake_test LANGUAGES CXX) + +include(CTest) + +set(BUILD_TESTING OFF) # hide cache variable + +add_subdirectory(../../../../libs/assert EXCLUDE_FROM_ALL boostorg/assert) +add_subdirectory(../../../../libs/config EXCLUDE_FROM_ALL boostorg/config) +add_subdirectory(../../../../libs/core EXCLUDE_FROM_ALL boostorg/core) + +unset(BUILD_TESTING) + +list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../../include) + +# boost_test + +include(BoostTest) + +boost_test(TYPE compile SOURCES compile.cpp) +boost_test(TYPE compile-fail SOURCES compile_fail.cpp) +boost_test(TYPE link SOURCES link.cpp) +boost_test(TYPE link-fail SOURCES link_fail.cpp) +boost_test(TYPE run SOURCES run.cpp) +boost_test(TYPE run-fail SOURCES run_fail.cpp) + +boost_test(TYPE run SOURCES arguments.cpp ARGUMENTS pumpkin LINK_LIBRARIES Boost::core) + +boost_test(TYPE run NAME return_exit_code_pass SOURCES return_exit_code.cpp COMPILE_DEFINITIONS EXIT_CODE=0) +boost_test(TYPE run-fail NAME return_exit_code_fail SOURCES return_exit_code.cpp COMPILE_DEFINITIONS EXIT_CODE=1) + +boost_test(TYPE run SOURCES requires_variadic_templates.cpp COMPILE_FEATURES cxx_variadic_templates) + +boost_test(TYPE run SOURCES requires_no_rtti.cpp COMPILE_OPTIONS -fno-rtti LINK_LIBRARIES Boost::config) +boost_test(TYPE run SOURCES requires_no_exceptions.cpp COMPILE_OPTIONS -fno-exceptions LINK_LIBRARIES Boost::config) + +boost_test(TYPE compile-fail SOURCES emits_warning.cpp COMPILE_OPTIONS -Wall -Werror) + +# boost_test, w/ globals + +set(BOOST_TEST_COMPILE_OPTIONS -fno-rtti -fno-exceptions) +set(BOOST_TEST_LINK_LIBRARIES Boost::config) + +boost_test(SOURCES requires_no_rtti.cpp PREFIX boost_cmake_test_globals) +boost_test(SOURCES requires_no_exceptions.cpp PREFIX boost_cmake_test_globals) + +# boost_test_jamfile + +include(BoostTestJamfile) + +boost_test_jamfile(FILE Jamfile PREFIX boost_cmake_test_jamfile) diff --git a/src/boost/tools/cmake/test/boost_test/Jamfile b/src/boost/tools/cmake/test/boost_test/Jamfile new file mode 100644 index 000000000..7ef0c4516 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/Jamfile @@ -0,0 +1,20 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 ; + +project + : default-build <warnings-as-errors>on + ; + +compile compile.cpp ; +compile-fail compile_fail.cpp ; +link link.cpp ; +link-fail link_fail.cpp ; +run run.cpp ; +run-fail run_fail.cpp ; + +run + arguments.cpp : + pumpkin ; diff --git a/src/boost/tools/cmake/test/boost_test/arguments.cpp b/src/boost/tools/cmake/test/boost_test/arguments.cpp new file mode 100644 index 000000000..8ebe8eddb --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/arguments.cpp @@ -0,0 +1,18 @@ +// Copyright 2018 Peter Dimov +// 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 + +#include <boost/core/lightweight_test.hpp> +#include <string.h> + +int main( int ac, char const* av[] ) +{ + BOOST_TEST_EQ( ac, 2 ); + + if( ac >= 2 ) + { + BOOST_TEST_CSTR_EQ( av[1], "pumpkin" ); + } + + return boost::report_errors(); +} diff --git a/src/boost/tools/cmake/test/boost_test/compile.cpp b/src/boost/tools/cmake/test/boost_test/compile.cpp new file mode 100644 index 000000000..07df2b88a --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/compile.cpp @@ -0,0 +1,8 @@ +// Copyright 2018 Peter Dimov +// 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 + +int f() +{ + return 0; +} diff --git a/src/boost/tools/cmake/test/boost_test/compile_fail.cpp b/src/boost/tools/cmake/test/boost_test/compile_fail.cpp new file mode 100644 index 000000000..58d4181e6 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/compile_fail.cpp @@ -0,0 +1,8 @@ +// Copyright 2018 Peter Dimov +// 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 + +int f() +{ + return x; +} diff --git a/src/boost/tools/cmake/test/boost_test/emits_warning.cpp b/src/boost/tools/cmake/test/boost_test/emits_warning.cpp new file mode 100644 index 000000000..91bcf0ccf --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/emits_warning.cpp @@ -0,0 +1,9 @@ +// Copyright 2019 Peter Dimov +// 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 + +int main() +{ + int x, y; + return x; +} diff --git a/src/boost/tools/cmake/test/boost_test/link.cpp b/src/boost/tools/cmake/test/boost_test/link.cpp new file mode 100644 index 000000000..d843d0c0a --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/link.cpp @@ -0,0 +1,13 @@ +// Copyright 2018 Peter Dimov +// 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 + +int f() +{ + return 0; +} + +int main() +{ + return f(); +} diff --git a/src/boost/tools/cmake/test/boost_test/link_fail.cpp b/src/boost/tools/cmake/test/boost_test/link_fail.cpp new file mode 100644 index 000000000..e271ced9c --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/link_fail.cpp @@ -0,0 +1,10 @@ +// Copyright 2018 Peter Dimov +// 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 + +int f(); + +int main() +{ + return f(); +} diff --git a/src/boost/tools/cmake/test/boost_test/requires_no_exceptions.cpp b/src/boost/tools/cmake/test/boost_test/requires_no_exceptions.cpp new file mode 100644 index 000000000..f4ed46110 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/requires_no_exceptions.cpp @@ -0,0 +1,18 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/config.hpp> + +int main() +{ +#if defined(BOOST_NO_EXCEPTIONS) + + return 0; + +#else + + return 1; + +#endif +} diff --git a/src/boost/tools/cmake/test/boost_test/requires_no_rtti.cpp b/src/boost/tools/cmake/test/boost_test/requires_no_rtti.cpp new file mode 100644 index 000000000..33030b5e7 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/requires_no_rtti.cpp @@ -0,0 +1,18 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/config.hpp> + +int main() +{ +#if defined(BOOST_NO_RTTI) + + return 0; + +#else + + return 1; + +#endif +} diff --git a/src/boost/tools/cmake/test/boost_test/requires_variadic_templates.cpp b/src/boost/tools/cmake/test/boost_test/requires_variadic_templates.cpp new file mode 100644 index 000000000..ce516c60b --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/requires_variadic_templates.cpp @@ -0,0 +1,13 @@ +// Copyright 2019 Peter Dimov +// 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 + +template<class... T> int f() +{ + return sizeof...(T); +} + +int main() +{ + return f<int, void, float>() == 3? 0: 1; +} diff --git a/src/boost/tools/cmake/test/boost_test/return_exit_code.cpp b/src/boost/tools/cmake/test/boost_test/return_exit_code.cpp new file mode 100644 index 000000000..372988bb2 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/return_exit_code.cpp @@ -0,0 +1,8 @@ +// Copyright 2019 Peter Dimov +// 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 + +int main() +{ + return EXIT_CODE; +} diff --git a/src/boost/tools/cmake/test/boost_test/run.cpp b/src/boost/tools/cmake/test/boost_test/run.cpp new file mode 100644 index 000000000..a23cef0dc --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/run.cpp @@ -0,0 +1,7 @@ +// Copyright 2018 Peter Dimov +// 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 + +int main() +{ +} diff --git a/src/boost/tools/cmake/test/boost_test/run_fail.cpp b/src/boost/tools/cmake/test/boost_test/run_fail.cpp new file mode 100644 index 000000000..bdb31cb73 --- /dev/null +++ b/src/boost/tools/cmake/test/boost_test/run_fail.cpp @@ -0,0 +1,8 @@ +// Copyright 2018 Peter Dimov +// 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 + +int main() +{ + return 1; +} diff --git a/src/boost/tools/cmake/test/mp11/CMakeLists.txt b/src/boost/tools/cmake/test/mp11/CMakeLists.txt new file mode 100644 index 000000000..6c47a0877 --- /dev/null +++ b/src/boost/tools/cmake/test/mp11/CMakeLists.txt @@ -0,0 +1,17 @@ +# Copyright 2018 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_mp11_install_test LANGUAGES CXX) + +find_package(boost_mp11 REQUIRED) + +add_executable(main main.cpp) +target_link_libraries(main Boost::mp11) + +enable_testing() +add_test(NAME main COMMAND main) + +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>) diff --git a/src/boost/tools/cmake/test/mp11/main.cpp b/src/boost/tools/cmake/test/mp11/main.cpp new file mode 100644 index 000000000..7b8689ac6 --- /dev/null +++ b/src/boost/tools/cmake/test/mp11/main.cpp @@ -0,0 +1,12 @@ +// Copyright 2018 Peter Dimov +// 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 + +#include <boost/mp11.hpp> +using namespace boost::mp11; + +int main() +{ + using L1 = mp_list<int, float, int, float>; + return mp_size<mp_unique<L1>>::value == 2? 0: 1; +} diff --git a/src/boost/tools/cmake/test/timer/CMakeLists.txt b/src/boost/tools/cmake/test/timer/CMakeLists.txt new file mode 100644 index 000000000..5de5f0980 --- /dev/null +++ b/src/boost/tools/cmake/test/timer/CMakeLists.txt @@ -0,0 +1,21 @@ +# Copyright 2018, 2019 Peter Dimov +# 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 + +cmake_minimum_required(VERSION 3.5...3.16) + +project(boost_timer_install_test LANGUAGES CXX) + +find_package(boost_timer REQUIRED) + +if(BOOST_RUNTIME_LINK STREQUAL "static") + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") +endif() + +add_executable(main main.cpp) +target_link_libraries(main Boost::timer) + +enable_testing() +add_test(NAME main COMMAND main) + +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>) diff --git a/src/boost/tools/cmake/test/timer/main.cpp b/src/boost/tools/cmake/test/timer/main.cpp new file mode 100644 index 000000000..25ce9c842 --- /dev/null +++ b/src/boost/tools/cmake/test/timer/main.cpp @@ -0,0 +1,11 @@ +// Copyright 2019 Peter Dimov +// 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 + +#include <boost/timer/timer.hpp> + +int main() +{ + boost::timer::cpu_timer timer; + timer.stop(); +} |