• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright Louis Dionne 2015
2# Modified Work Copyright Barrett Adair 2015-2017
3# Distributed under the Boost Software License, Version 1.0.
4# (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
5
6add_custom_target(examples COMMENT "Build all the examples.")
7add_dependencies(callable_traits_check examples)
8
9include_directories(${boost_callable_traits_SOURCE_DIR}/include)
10
11file(GLOB_RECURSE EXAMPLES "*.cpp")
12file(GLOB_RECURSE EXPERIMENTAL_EXAMPLES "experimental*.cpp")
13
14if (NOT BOOST_CLBL_TRTS_BUILD_EXPERIMENTAL)
15    foreach(_experimental IN LISTS EXPERIMENTAL_EXAMPLES)
16        list(REMOVE_ITEM EXAMPLES ${_experimental})
17    endforeach()
18endif()
19
20foreach(_file IN LISTS EXAMPLES)
21    boost_callable_traits_target_name_for(_target "${_file}")
22    add_executable(${_target} EXCLUDE_FROM_ALL "${_file}")
23    boost_callable_traits_add_test(${_target} ${CMAKE_CURRENT_BINARY_DIR}/${_target})
24    add_dependencies(examples ${_target})
25endforeach()
26