GlobalProtect-openconnect/cmake/Add3rdParty.cmake
Kevin Yue 8a65099ca7
Migrate to cmake and refine the code structure (#92)
* migrate to cmake

* move the 3rd party libs

* organize 3rdparty

* update the 3rd party version

* refine the CMakeLists.txt

* update install command

* update install command

* update install command

* update install command

* update dependency

* update the dependency

* update the dependency

* remove CPM.cmake

* remove QtCreator project file

* update cmake file

* improve cmake file

* add cmakew

* use wget

* remove echo

* update the doc

* remove the screenshot

* update the doc

* update the install steps

* check the openconnect version

* update the doc

* update install scripts

* fix install scripts

* improve message

* improve message

* improve install scripts

* improve the version check

* improve the version check

* improve install script

* add version

* organize includes

* add version bump

* update CI

* update CI

* add the release flag

* update message
2021-09-19 14:32:12 +08:00

28 lines
856 B
CMake

include(ExternalProject)
function(add_3rdparty NAME)
set(oneValueArgs GIT_REPOSITORY GIT_TAG)
cmake_parse_arguments(add_3rdparty_args "" "${oneValueArgs}" "" ${ARGN})
if(EXISTS "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}/CMakeLists.txt")
message(STATUS "Found third party locally for ${NAME}")
ExternalProject_Add(
${NAME}-${PROJECT_NAME}
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/${NAME}
SOURCE_DIR "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}"
INSTALL_COMMAND ""
"${add_3rdparty_args_UNPARSED_ARGUMENTS}"
)
return()
endif()
message(STATUS "Using ExternalProject to download ${NAME}")
ExternalProject_Add(
${NAME}-${PROJECT_NAME}
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/${NAME}
INSTALL_COMMAND ""
"${ARGN}"
)
endfunction()