if(NOT MSVC) add_custom_target(examples) endif() # Build example executables FILE(GLOB example_srcs "*.cpp") set (excluded_examples #"") "${CMAKE_CURRENT_SOURCE_DIR}/DiscreteBayesNet_FG.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/UGM_chain.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/UGM_small.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/elaboratePoint2KalmanFilter.cpp" ) list(REMOVE_ITEM example_srcs ${excluded_examples}) foreach(example_src ${example_srcs} ) get_filename_component(example_base ${example_src} NAME_WE) set( example_bin ${example_base} ) message(STATUS "Adding Example ${example_bin}") if(NOT MSVC) add_dependencies(examples ${example_bin}) endif() add_executable(${example_bin} ${example_src}) # Disable building during make all/install if (GTSAM_DISABLE_EXAMPLES_ON_INSTALL) set_target_properties(${example_bin} PROPERTIES EXCLUDE_FROM_ALL ON) endif() target_link_libraries(${example_bin} ${gtsam-default} ${Boost_PROGRAM_OPTIONS_LIBRARY}) if(NOT MSVC) add_custom_target(${example_bin}.run ${EXECUTABLE_OUTPUT_PATH}${example_bin} ${ARGN}) endif() # Set up Visual Studio folder if(MSVC) set_property(TARGET ${example_bin} PROPERTY FOLDER "Examples") endif() endforeach(example_src)