mirror of
https://github.com/boostorg/property_tree.git
synced 2026-01-30 20:12:32 +00:00
42 lines
1.6 KiB
CMake
42 lines
1.6 KiB
CMake
#
|
|
# Copyright (c) 2019 Vinnie Falco (vinnie.falco@gmail.com)
|
|
# Copyright (c) 2021 Richard Hodges (hodges.r@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)
|
|
#
|
|
# Official repository: https://github.com/boostorg/json
|
|
#
|
|
|
|
source_group("test" FILES
|
|
custom_data_type.cpp
|
|
debug_settings.cpp
|
|
empty_ptree_trick.cpp
|
|
info_grammar_spirit.cpp
|
|
speed_test.cpp
|
|
)
|
|
|
|
function(add_example)
|
|
cmake_parse_arguments("addex" "" "NAME" "SRCS;DEPS" ${ARGN})
|
|
if("${addex_NAME}" STREQUAL "")
|
|
message(SEND_ERROR "add_example: no NAME")
|
|
return()
|
|
endif()
|
|
if("${addex_SRCS}" STREQUAL "")
|
|
message(SEND_ERROR "add_example: no SRCS")
|
|
return()
|
|
endif()
|
|
#message(STATUS "add_example: ${addex_NAME} SRCS: ${addex_SRCS} DEPS: ${addex_DEPS}")
|
|
add_executable("${PROJECT_NAME}-example-${addex_NAME}"
|
|
${addex_SRCS})
|
|
set_property(TARGET "${PROJECT_NAME}-example-${addex_NAME}" PROPERTY FOLDER "example")
|
|
target_link_libraries("${PROJECT_NAME}-example-${addex_NAME}" PRIVATE ${addex_DEPS})
|
|
endfunction()
|
|
|
|
add_example(NAME custom_data_type SRCS custom_data_type.cpp DEPS Boost::property_tree)
|
|
add_example(NAME debug_settings SRCS debug_settings.cpp DEPS Boost::property_tree Boost::foreach)
|
|
configure_file(debug_settings.xml debug_settings.xml COPYONLY)
|
|
add_example(NAME empty_ptree_trick SRCS empty_ptree_trick.cpp DEPS Boost::property_tree)
|
|
add_example(NAME info_grammar_spirit SRCS info_grammar_spirit.cpp DEPS Boost::property_tree)
|
|
add_example(NAME speed_test SRCS speed_test.cpp DEPS Boost::property_tree Boost::format)
|