From ad941bdb9efdae75a872129fd5c834e8554d5412 Mon Sep 17 00:00:00 2001 From: "Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com)" Date: Wed, 20 Jun 2018 09:47:07 +0100 Subject: Fix example targets not existing if doxygen not installed in cmake. --- CMakeLists.txt | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt index fd9a94d6..66405cc6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -168,17 +168,19 @@ foreach(lib afio_sl afio_dl) target_compile_definitions(${lib} INTERFACE AFIO_HEADERS_ONLY=0) target_compile_definitions(${lib} PRIVATE AFIO_SOURCE=1) endforeach() -set(compiler_has_cxx_17 0) -foreach(feature ${CMAKE_CXX_COMPILE_FEATURES}) - if(feature STREQUAL "cxx_std_17") - set(compiler_has_cxx_17 1) +if(TARGET afio-example_single-header) + set(compiler_has_cxx_17 0) + foreach(feature ${CMAKE_CXX_COMPILE_FEATURES}) + if(feature STREQUAL "cxx_std_17") + set(compiler_has_cxx_17 1) + endif() + endforeach() + # The single header test requires C++ 17 + if(compiler_has_cxx_17) + target_compile_features(afio-example_single-header PRIVATE cxx_std_17) + else() + set_target_properties(afio-example_single-header PROPERTIES EXCLUDE_FROM_ALL ON EXCLUDE_FROM_DEFAULT_BUILD ON) endif() -endforeach() -# The single header test requires C++ 17 -if(compiler_has_cxx_17) - target_compile_features(afio-example_single-header PRIVATE cxx_std_17) -else() - set_target_properties(afio-example_single-header PROPERTIES EXCLUDE_FROM_ALL ON EXCLUDE_FROM_DEFAULT_BUILD ON) endif() # For all possible configurations of this library, add each test -- cgit v1.2.3