include(FetchContent) include(GNUInstallDirs) if(DEFINED HDK_CMAKE_POLICY_DIR AND EXISTS "${HDK_CMAKE_POLICY_DIR}/HDKExampleAssetsPolicy.cmake") include("${HDK_CMAKE_POLICY_DIR}/HDKExampleAssetsPolicy.cmake") elseif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/HDKExampleAssetsPolicy.cmake") include("${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/HDKExampleAssetsPolicy.cmake") elseif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/../cmake/HDKExampleAssetsPolicy.cmake") include("${CMAKE_CURRENT_SOURCE_DIR}/../cmake/HDKExampleAssetsPolicy.cmake") else() message(FATAL_ERROR "Unable to locate HDKExampleAssetsPolicy.cmake") endif() if(NOT DEFINED HDK_INSTALL_EXAMPLES) set(HDK_INSTALL_EXAMPLES OFF) endif() option(HDK_INSTALL_EXAMPLES "Install hdk-is3r example binaries and assets" ${HDK_INSTALL_EXAMPLES}) option(HDK_EXAMPLES_FETCH_ASSETS "Fetch hdk-assets when no suitable package is found" ON) if(NOT DEFINED HDK_ASSETS_MIN_VERSION) set(HDK_ASSETS_MIN_VERSION "0.0.1") endif() if(NOT DEFINED HDK_ASSETS_GIT_REPOSITORY) set(HDK_ASSETS_GIT_REPOSITORY "https://git.ufp.institute/ufp/hdk-assets.git") endif() if(NOT DEFINED HDK_INSTALL_ASSETSDIR) set(HDK_INSTALL_ASSETSDIR "assets") endif() hdk_resolve_example_assets( OUT_VAR HDK_EXAMPLES_ASSETS_SOURCE_DIR FETCH_OPTION ${HDK_EXAMPLES_FETCH_ASSETS} MIN_VERSION ${HDK_ASSETS_MIN_VERSION} GIT_REPOSITORY ${HDK_ASSETS_GIT_REPOSITORY} GIT_TAG v${HDK_ASSETS_MIN_VERSION} CONTEXT "hdk-is3r examples" ) set(HDK_EXAMPLES_ASSETS_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../assets) add_executable(is3r-basics is3r-basics.cpp) target_link_libraries(is3r-basics PRIVATE hdk-is3r) add_custom_command(TARGET is3r-basics POST_BUILD COMMAND ${CMAKE_COMMAND} -E rm -rf ${HDK_EXAMPLES_ASSETS_BUILD_DIR} COMMAND ${CMAKE_COMMAND} -E copy_directory ${HDK_EXAMPLES_ASSETS_SOURCE_DIR} ${HDK_EXAMPLES_ASSETS_BUILD_DIR} COMMENT "Staging hdk-is3r example assets" VERBATIM ) if(HDK_INSTALL_EXAMPLES) install(TARGETS is3r-basics RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT hdk-is3r_examples ) install(DIRECTORY ${HDK_EXAMPLES_ASSETS_SOURCE_DIR}/ DESTINATION ${HDK_INSTALL_ASSETSDIR} COMPONENT hdk-is3r_examples ) endif()