mirror of
				https://github.com/yuezk/GlobalProtect-openconnect.git
				synced 2025-05-20 07:26:58 -04:00 
			
		
		
		
	update dependency
This commit is contained in:
		| @@ -9,33 +9,16 @@ set(CMAKE_AUTOMOC ON) | |||||||
| set(CMAKE_AUTORCC ON) | set(CMAKE_AUTORCC ON) | ||||||
| set(CMAKE_AUTOUIC ON) | set(CMAKE_AUTOUIC ON) | ||||||
|  |  | ||||||
| set(QAPPLICATION_CLASS QApplication CACHE STRING "Inheritance class for SingleApplication") |  | ||||||
|  |  | ||||||
| find_package(Qt5 REQUIRED COMPONENTS | find_package(Qt5 REQUIRED COMPONENTS | ||||||
|     Core |     Core | ||||||
|     Widgets |     Widgets | ||||||
|  |     Network | ||||||
|     WebSockets |     WebSockets | ||||||
|     WebEngine |     WebEngine | ||||||
|     WebEngineWidgets |     WebEngineWidgets | ||||||
|     DBus |     DBus | ||||||
| ) | ) | ||||||
|  |  | ||||||
| include(cmake/Add3rdParty.cmake) |  | ||||||
|  |  | ||||||
| add_3rdparty( |  | ||||||
|     NAME SingleApplication |  | ||||||
|     GITHUB_REPOSITORY itay-grudev/SingleApplication |  | ||||||
|     VERSION 3.3.0 |  | ||||||
|     EXCLUDE_FROM_ALL |  | ||||||
| ) |  | ||||||
|  |  | ||||||
| add_3rdparty( |  | ||||||
|     NAME plog |  | ||||||
|     GITHUB_REPOSITORY SergiusTheBest/plog |  | ||||||
|     GIT_TAG 1.1.5 |  | ||||||
|     EXCLUDE_FROM_ALL |  | ||||||
| ) |  | ||||||
|  |  | ||||||
| add_subdirectory(GPService) | add_subdirectory(GPService) | ||||||
| add_subdirectory(GPClient) | add_subdirectory(GPClient) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,6 +1,9 @@ | |||||||
|  | include("${CMAKE_SOURCE_DIR}/cmake/Add3rdParty.cmake") | ||||||
|  |  | ||||||
| project(GPClient) | project(GPClient) | ||||||
|  |  | ||||||
| set(gpclient_GENERATED_SOURCES) | set(gpclient_GENERATED_SOURCES) | ||||||
|  | # set(QAPPLICATION_CLASS QApplication CACHE STRING "Inheritance class for SingleApplication") | ||||||
|  |  | ||||||
| qt5_add_dbus_interface(gpclient_GENERATED_SOURCES ${CMAKE_BINARY_DIR}/com.yuezk.qt.GPService.xml gpserviceinterface) | qt5_add_dbus_interface(gpclient_GENERATED_SOURCES ${CMAKE_BINARY_DIR}/com.yuezk.qt.GPService.xml gpserviceinterface) | ||||||
|  |  | ||||||
| @@ -28,18 +31,52 @@ add_executable(gpclient | |||||||
|     ${gpclient_GENERATED_SOURCES} |     ${gpclient_GENERATED_SOURCES} | ||||||
| ) | ) | ||||||
|  |  | ||||||
| target_include_directories(gpclient PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) | add_3rdparty( | ||||||
|  |     SingleApplication | ||||||
|  |     GIT_REPOSITORY https://github.com/itay-grudev/SingleApplication.git | ||||||
|  |     GIT_TAG v3.3.0 | ||||||
|  |     EXCLUDE_FROM_ALL | ||||||
|  |     CMAKE_ARGS -DQAPPLICATION_CLASS=QApplication | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | add_3rdparty( | ||||||
|  |     plog | ||||||
|  |     GIT_REPOSITORY https://github.com/SergiusTheBest/plog.git | ||||||
|  |     GIT_TAG 1.1.5 | ||||||
|  |     EXCLUDE_FROM_ALL | ||||||
|  |     CMAKE_ARGS -DPLOG_BUILD_SAMPLES=OFF | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | ExternalProject_Get_Property(SingleApplication-${PROJECT_NAME} SOURCE_DIR) | ||||||
|  | set(SingleApplication_INCLUDE_DIR ${SOURCE_DIR}) | ||||||
|  |  | ||||||
|  | ExternalProject_Get_Property(SingleApplication-${PROJECT_NAME} BINARY_DIR) | ||||||
|  | set(SingleApplication_LIBRARY ${BINARY_DIR}/libSingleApplication.a) | ||||||
|  |  | ||||||
|  | ExternalProject_Get_Property(plog-${PROJECT_NAME} SOURCE_DIR) | ||||||
|  | set(plog_INCLUDE_DIR "${SOURCE_DIR}/include") | ||||||
|  |  | ||||||
|  | add_dependencies(gpservice SingleApplication-${PROJECT_NAME} plog-${PROJECT_NAME}) | ||||||
|  |  | ||||||
|  | target_include_directories(gpclient PRIVATE | ||||||
|  |     ${CMAKE_CURRENT_SOURCE_DIR} | ||||||
|  |     ${CMAKE_CURRENT_BINARY_DIR} | ||||||
|  |     ${SingleApplication_INCLUDE_DIR} | ||||||
|  |     ${plog_INCLUDE_DIR} | ||||||
|  | ) | ||||||
|  |  | ||||||
| target_link_libraries(gpclient | target_link_libraries(gpclient | ||||||
|     plog |     ${SingleApplication_LIBRARY} | ||||||
|     SingleApplication |  | ||||||
|     Qt5::Widgets |     Qt5::Widgets | ||||||
|  |     Qt5::Network | ||||||
|     Qt5::WebSockets |     Qt5::WebSockets | ||||||
|     Qt5::WebEngine |     Qt5::WebEngine | ||||||
|     Qt5::WebEngineWidgets |     Qt5::WebEngineWidgets | ||||||
|     Qt5::DBus |     Qt5::DBus | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | target_compile_definitions(gpclient PUBLIC QAPPLICATION_CLASS=QApplication) | ||||||
|  |  | ||||||
| install(TARGETS gpclient DESTINATION "/usr/bin") | install(TARGETS gpclient DESTINATION "/usr/bin") | ||||||
| install(FILES com.yuezk.qt.gpclient.desktop DESTINATION "/usr/share/applications") | install(FILES com.yuezk.qt.gpclient.desktop DESTINATION "/usr/share/applications") | ||||||
| install(FILES com.yuezk.qt.GPClient.svg DESTINATION "/usr/share/pixmaps") | install(FILES com.yuezk.qt.GPClient.svg DESTINATION "/usr/share/pixmaps") | ||||||
| @@ -1,3 +1,5 @@ | |||||||
|  | include("${CMAKE_SOURCE_DIR}/cmake/Add3rdParty.cmake") | ||||||
|  |  | ||||||
| project(GPService) | project(GPService) | ||||||
|  |  | ||||||
| set(gpservice_GENERATED_SOURCES) | set(gpservice_GENERATED_SOURCES) | ||||||
| @@ -20,14 +22,37 @@ add_executable(gpservice | |||||||
|     ${gpservice_GENERATED_SOURCES} |     ${gpservice_GENERATED_SOURCES} | ||||||
| ) | ) | ||||||
|  |  | ||||||
| target_include_directories(gpservice PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}) | add_3rdparty( | ||||||
|  |     SingleApplication | ||||||
|  |     GIT_REPOSITORY https://github.com/itay-grudev/SingleApplication.git | ||||||
|  |     GIT_TAG v3.3.0 | ||||||
|  |     EXCLUDE_FROM_ALL | ||||||
|  |     CMAKE_ARGS -DQAPPLICATION_CLASS=QCoreApplication | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | ExternalProject_Get_Property(SingleApplication-${PROJECT_NAME} SOURCE_DIR) | ||||||
|  | ExternalProject_Get_Property(SingleApplication-${PROJECT_NAME} BINARY_DIR) | ||||||
|  |  | ||||||
|  | set(SingleApplication_INCLUDE_DIR ${SOURCE_DIR}) | ||||||
|  | set(SingleApplication_LIBRARY ${BINARY_DIR}/libSingleApplication.a) | ||||||
|  |  | ||||||
|  | add_dependencies(gpservice SingleApplication-${PROJECT_NAME}) | ||||||
|  |  | ||||||
|  | target_include_directories(gpservice PRIVATE | ||||||
|  |     ${CMAKE_CURRENT_SOURCE_DIR} | ||||||
|  |     ${CMAKE_CURRENT_BINARY_DIR} | ||||||
|  |     ${SingleApplication_INCLUDE_DIR} | ||||||
|  | ) | ||||||
|  |  | ||||||
| target_link_libraries(gpservice | target_link_libraries(gpservice | ||||||
|     SingleApplication |     ${SingleApplication_LIBRARY} | ||||||
|     Qt5::Core |     Qt5::Core | ||||||
|  |     Qt5::Network | ||||||
|     Qt5::DBus |     Qt5::DBus | ||||||
| ) | ) | ||||||
|  |  | ||||||
|  | target_compile_definitions(gpservice PUBLIC QAPPLICATION_CLASS=QCoreApplication) | ||||||
|  |  | ||||||
| install(TARGETS gpservice DESTINATION "/usr/bin") | install(TARGETS gpservice DESTINATION "/usr/bin") | ||||||
| install(FILES "dbus/com.yuezk.qt.GPService.conf" DESTINATION "/usr/share/dbus-1/system.d" ) | install(FILES "dbus/com.yuezk.qt.GPService.conf" DESTINATION "/usr/share/dbus-1/system.d" ) | ||||||
| install(FILES "dbus/com.yuezk.qt.GPService.service" DESTINATION "/usr/share/dbus-1/system-services") | install(FILES "dbus/com.yuezk.qt.GPService.service" DESTINATION "/usr/share/dbus-1/system-services") | ||||||
|   | |||||||
| @@ -1,8 +1,8 @@ | |||||||
| include(cmake/CPM.cmake) | include(ExternalProject) | ||||||
|  |  | ||||||
| function(add_3rdparty) | function(add_3rdparty NAME) | ||||||
|     cmake_parse_arguments(add_3rdparty_args "EXCLUDE_FROM_ALL" "NAME" "" ${ARGN}) |     set(oneValueArgs GIT_REPOSITORY GIT_TAG) | ||||||
|     set(NAME ${add_3rdparty_args_NAME}) |     cmake_parse_arguments(add_3rdparty_args "EXCLUDE_FROM_ALL" "${oneValueArgs}" "" ${ARGN}) | ||||||
|  |  | ||||||
|     if(EXISTS "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}/CMakeLists.txt") |     if(EXISTS "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}/CMakeLists.txt") | ||||||
|         message(STATUS "Found third party locally for ${NAME}") |         message(STATUS "Found third party locally for ${NAME}") | ||||||
| @@ -13,12 +13,21 @@ function(add_3rdparty) | |||||||
|             set(addSubdirectoryExtraArgs "") |             set(addSubdirectoryExtraArgs "") | ||||||
|         endif() |         endif() | ||||||
|  |  | ||||||
|         add_subdirectory( |         ExternalProject_Add( | ||||||
|             "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}" |             ${NAME}-${PROJECT_NAME} | ||||||
|  |             PREFIX ${CMAKE_CURRENT_BINARY_DIR}/${NAME} | ||||||
|  |             SOURCE_DIR "${CMAKE_SOURCE_DIR}/3rdparty/${NAME}" | ||||||
|  |             INSTALL_COMMAND "" | ||||||
|             ${addSubdirectoryExtraArgs} |             ${addSubdirectoryExtraArgs} | ||||||
|  |             "${add_3rdparty_args_UNPARSED_ARGUMENTS}" | ||||||
|         ) |         ) | ||||||
|         return() |         return() | ||||||
|     endif() |     endif() | ||||||
|  |  | ||||||
|     message(STATUS "Using CPM to download ${NAME}")  |     message(STATUS "Using CPM to download ${NAME}")  | ||||||
|     CPMAddPackage(${ARGN}) |     ExternalProject_Add( | ||||||
|  |         ${NAME}-${PROJECT_NAME} | ||||||
|  |         PREFIX ${CMAKE_CURRENT_BINARY_DIR}/${NAME} | ||||||
|  |         "${ARGN}" | ||||||
|  |     ) | ||||||
| endfunction() | endfunction() | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user