mirror of
https://github.com/amnezia-vpn/amnezia-client.git
synced 2026-06-23 02:00:20 +07:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 582f21b0b1 |
@@ -37,6 +37,10 @@ if(WIN32 OR (APPLE AND NOT IOS) OR (LINUX AND NOT ANDROID))
|
|||||||
set(PACKAGES ${PACKAGES} Widgets)
|
set(PACKAGES ${PACKAGES} Widgets)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(LINUX AND NOT ANDROID)
|
||||||
|
list(APPEND PACKAGES QuickTemplates2 QmlModels OpenGL)
|
||||||
|
endif()
|
||||||
|
|
||||||
find_package(Qt6 REQUIRED COMPONENTS ${PACKAGES})
|
find_package(Qt6 REQUIRED COMPONENTS ${PACKAGES})
|
||||||
|
|
||||||
set(LIBS ${LIBS}
|
set(LIBS ${LIBS}
|
||||||
@@ -52,6 +56,23 @@ endif()
|
|||||||
|
|
||||||
qt_standard_project_setup()
|
qt_standard_project_setup()
|
||||||
qt_add_executable(${PROJECT} MANUAL_FINALIZATION)
|
qt_add_executable(${PROJECT} MANUAL_FINALIZATION)
|
||||||
|
|
||||||
|
if(LINUX AND NOT ANDROID)
|
||||||
|
target_link_options(${PROJECT} PRIVATE "-Wl,--no-as-needed")
|
||||||
|
target_link_options(${PROJECT} PRIVATE "LINKER:--disable-new-dtags")
|
||||||
|
set_target_properties(${PROJECT} PROPERTIES
|
||||||
|
BUILD_RPATH "\$ORIGIN/../lib"
|
||||||
|
INSTALL_RPATH "\$ORIGIN/../lib"
|
||||||
|
INSTALL_RPATH_USE_LINK_PATH FALSE
|
||||||
|
)
|
||||||
|
set_property(TARGET ${PROJECT} PROPERTY BUILD_WITH_INSTALL_RPATH TRUE)
|
||||||
|
|
||||||
|
target_link_libraries(${PROJECT} PRIVATE
|
||||||
|
Qt6::QuickTemplates2
|
||||||
|
Qt6::QmlModels
|
||||||
|
Qt6::OpenGL
|
||||||
|
)
|
||||||
|
endif()
|
||||||
target_include_directories(${PROJECT} PUBLIC
|
target_include_directories(${PROJECT} PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
|
||||||
)
|
)
|
||||||
@@ -195,6 +216,17 @@ elseif(APPLE)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_link_libraries(${PROJECT} PRIVATE ${LIBS})
|
target_link_libraries(${PROJECT} PRIVATE ${LIBS})
|
||||||
|
|
||||||
|
if(LINUX AND NOT ANDROID)
|
||||||
|
target_link_libraries(${PROJECT} PRIVATE
|
||||||
|
"-Wl,--push-state,--no-as-needed"
|
||||||
|
Qt6::QuickTemplates2
|
||||||
|
Qt6::QmlModels
|
||||||
|
Qt6::OpenGL
|
||||||
|
"-Wl,--pop-state"
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_compile_definitions(${PROJECT} PRIVATE "MZ_$<UPPER_CASE:${MZ_PLATFORM_NAME}>")
|
target_compile_definitions(${PROJECT} PRIVATE "MZ_$<UPPER_CASE:${MZ_PLATFORM_NAME}>")
|
||||||
|
|
||||||
# deploy artifacts required to run the application to the debug build folder
|
# deploy artifacts required to run the application to the debug build folder
|
||||||
|
|||||||
@@ -6,6 +6,13 @@ project(${PROJECT} VERSION ${AMNEZIAVPN_VERSION})
|
|||||||
set(CMAKE_CXX_STANDARD 20)
|
set(CMAKE_CXX_STANDARD 20)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
|
|
||||||
|
if(LINUX)
|
||||||
|
set(CMAKE_BUILD_RPATH "\$ORIGIN/../lib")
|
||||||
|
set(CMAKE_INSTALL_RPATH "\$ORIGIN/../lib")
|
||||||
|
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)
|
||||||
|
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(NOT IOS AND NOT ANDROID AND NOT MACOS_NE)
|
if(NOT IOS AND NOT ANDROID AND NOT MACOS_NE)
|
||||||
add_subdirectory(server)
|
add_subdirectory(server)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -353,6 +353,16 @@ include_directories(
|
|||||||
|
|
||||||
|
|
||||||
add_executable(${PROJECT} ${SOURCES} ${HEADERS} ${RESOURCES})
|
add_executable(${PROJECT} ${SOURCES} ${HEADERS} ${RESOURCES})
|
||||||
|
|
||||||
|
if(LINUX)
|
||||||
|
target_link_options(${PROJECT} PRIVATE "LINKER:--disable-new-dtags")
|
||||||
|
set_target_properties(${PROJECT} PROPERTIES
|
||||||
|
BUILD_RPATH "\$ORIGIN/../lib"
|
||||||
|
INSTALL_RPATH "\$ORIGIN/../lib"
|
||||||
|
INSTALL_RPATH_USE_LINK_PATH FALSE
|
||||||
|
)
|
||||||
|
set_property(TARGET ${PROJECT} PROPERTY BUILD_WITH_INSTALL_RPATH TRUE)
|
||||||
|
endif()
|
||||||
target_link_libraries(${PROJECT} PRIVATE Qt6::Core Qt6::Widgets Qt6::Network Qt6::RemoteObjects Qt6::Core5Compat Qt6::DBus Qt6::Concurrent ${LIBS})
|
target_link_libraries(${PROJECT} PRIVATE Qt6::Core Qt6::Widgets Qt6::Network Qt6::RemoteObjects Qt6::Core5Compat Qt6::DBus Qt6::Concurrent ${LIBS})
|
||||||
target_compile_definitions(${PROJECT} PRIVATE "MZ_$<UPPER_CASE:${MZ_PLATFORM_NAME}>")
|
target_compile_definitions(${PROJECT} PRIVATE "MZ_$<UPPER_CASE:${MZ_PLATFORM_NAME}>")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user