]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/libs/json/test/CMakeLists.txt
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / libs / json / test / CMakeLists.txt
index 3deee438fb637d2ff220f5a4052f3ed60ad689af..91b96fc03c5b5dabae93f6b72f41f80b2cae27ac 100644 (file)
@@ -1,5 +1,6 @@
 #
 # Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)
+# Copyright (c) 2021 DMitry Arkhipov (grisumbras@gmail.com)
 #
 # 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)
@@ -7,53 +8,35 @@
 # Official repository: https://github.com/boostorg/json
 #
 
+
+if(NOT TARGET tests)
+    add_custom_target(tests)
+    set_property(TARGET tests PROPERTY FOLDER _deps)
+endif()
+
+
 file(GLOB_RECURSE BOOST_JSON_TESTS_FILES CONFIGURE_DEPENDS Jamfile *.cpp *.hpp)
-list(FILTER BOOST_JSON_TESTS_FILES EXCLUDE REGEX "^${CMAKE_CURRENT_SOURCE_DIR}/cmake_install_test/.*$")
+list(FILTER BOOST_JSON_TESTS_FILES EXCLUDE REGEX cmake_install_test/.*$)
 
 source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "" FILES ${BOOST_JSON_TESTS_FILES})
-add_executable(tests ${BOOST_JSON_TESTS_FILES})
-target_include_directories(tests PRIVATE .)
-target_link_libraries(tests PRIVATE Boost::json)
-add_test(NAME json-tests COMMAND tests)
+add_executable(boost_json-tests ${BOOST_JSON_TESTS_FILES})
+target_include_directories(boost_json-tests PRIVATE .)
+target_link_libraries(boost_json-tests PRIVATE Boost::json)
+add_test(NAME boost_json-tests COMMAND boost_json-tests)
+add_dependencies(tests boost_json-tests)
+
 
 source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} PREFIX "" FILES limits.cpp main.cpp)
 source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR}/../src PREFIX "" FILES ../src/src.cpp)
-add_executable(limits limits.cpp main.cpp ../src/src.cpp Jamfile)
-
-target_compile_features(limits PUBLIC cxx_constexpr)
+add_executable(boost_json-limits limits.cpp main.cpp ../src/src.cpp Jamfile)
+boost_json_setup_properties(boost_json-limits)
 
-target_include_directories(limits PRIVATE ../include .)
-target_compile_definitions(limits PRIVATE
+target_compile_definitions(boost_json-limits PRIVATE
     BOOST_JSON_MAX_STRING_SIZE=1000
     BOOST_JSON_MAX_STRUCTURED_SIZE=20
     BOOST_JSON_STACK_BUFFER_SIZE=256
     BOOST_JSON_NO_LIB=1
 )
 
-if(BOOST_JSON_STANDALONE)
-    target_compile_definitions(limits PRIVATE BOOST_JSON_STANDALONE)
-    target_compile_features(limits PRIVATE cxx_std_17)
-elseif(BOOST_SUPERPROJECT_VERSION)
-    target_link_libraries(limits
-        PRIVATE
-            Boost::align
-            Boost::assert
-            Boost::config
-            Boost::container
-            Boost::exception
-            Boost::system
-            Boost::throw_exception
-            Boost::utility
-    )
-elseif(BOOST_JSON_IN_BOOST_TREE)
-    target_include_directories(limits PRIVATE ${BOOST_ROOT})
-    target_link_directories(limits PRIVATE ${BOOST_ROOT}/stage/lib)
-else()
-    target_link_libraries(limits
-        PRIVATE
-            Boost::system
-            Boost::container
-    )
-endif()
-
-add_test(NAME json-limits COMMAND limits)
+add_test(NAME boost_json-limits COMMAND boost_json-limits)
+add_dependencies(tests boost_json-limits)