stamenStatic Menu Generator | 
          
| git clone git://git.dimitrijedobrota.com/stamen.git | 
| Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING | 
CMakeLists.txt (1135B)
    0 cmake_minimum_required(VERSION 3.14)
          
              2 project(stamenExamples CXX)
          
              4 include(../cmake/project-is-top-level.cmake)
              5 include(../cmake/folders.cmake)
              6 if(PROJECT_IS_TOP_LEVEL)
              7   find_package(stamen REQUIRED)
              8 endif()
          
             10 configure_file(demo_menu.conf demo_menu.conf COPYONLY)
          
             12 add_custom_target(run-examples)
          
             14 add_custom_command(
             15   OUTPUT demo_menu.hpp demo_menu.cpp
             16   COMMAND stamen::exe --namespace example demo_menu.conf
             17   DEPENDS demo_menu.conf stamen::exe
             18   WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
             19   COMMENT "Generating menu files"
             20 )
          
             22 function(add_example NAME EXT)
             23   add_executable("${NAME}" "${NAME}.${EXT}")
             24   target_include_directories("${NAME}" PRIVATE "${CMAKE_CURRENT_BINARY_DIR}")
             25   target_link_libraries("${NAME}" PRIVATE stamen::stamen)
             26   target_compile_features("${NAME}" PRIVATE cxx_std_20)
             27   add_custom_target("run_${NAME}" COMMAND "${NAME}" demo_menu.conf VERBATIM)
             28   add_dependencies("run_${NAME}" "${NAME}")
             29   add_dependencies(run-examples "run_${NAME}")
             30 endfunction()
          
             32 add_example(static cpp)
             33 target_sources(static PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/demo_menu.cpp")
          
             35 add_example(dynamic cpp)
          
             37 add_folders(Example)