project(pistache) include(ExternalProject) set_directory_properties(PROPERTIES EP_UPDATE_DISCONNECTED true) set(pistache_root ${THIRD_PARTY_DIR}/${PROJECT_NAME}) ExternalProject_Add(PistacheDownload PREFIX ${pistache_root} GIT_REPOSITORY https://github.com/pistacheio/pistache.git GIT_TAG master GIT_SHALLOW TRUE INSTALL_COMMAND "" ) ExternalProject_Get_Property(PistacheDownload SOURCE_DIR) set(PISTACHE_INCLUDE_DIR ${SOURCE_DIR}/include) set(PISTACHE_LIB_DIR ${pistache_root}/src/PistacheDownload-build/src) file(MAKE_DIRECTORY ${PISTACHE_INCLUDE_DIR}) add_library(${PROJECT_NAME} SHARED IMPORTED) add_dependencies(${PROJECT_NAME} PistacheDownload) target_include_directories(${PROJECT_NAME} INTERFACE ${PISTACHE_INCLUDE_DIR}) set_target_properties(${PROJECT_NAME} PROPERTIES IMPORTED_LOCATION "${PISTACHE_LIB_DIR}/libpistache.a")