mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-08-11 20:29:47 +08:00
feat: Use conan for dependency management
This commit is contained in:
62
cmake/modules/FindVATSIMAuth.cmake
Normal file
62
cmake/modules/FindVATSIMAuth.cmake
Normal file
@@ -0,0 +1,62 @@
|
||||
# SPDX-FileCopyrightText: Copyright (C) swift Project Community / Contributors
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
|
||||
|
||||
|
||||
macro(CheckPackageFound MSG)
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
find_package_handle_standard_args(VATSIMAuth
|
||||
REQUIRED_VARS VATSIM_AUTH_FOUND
|
||||
FAIL_MESSAGE "VATSIMAuth not found. ${MSG}"
|
||||
)
|
||||
endmacro()
|
||||
|
||||
if (NOT DEFINED VATSIM_AUTH_PATH)
|
||||
CheckPackageFound("VATSIM_AUTH_PATH not set")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if (NOT EXISTS ${VATSIM_AUTH_PATH})
|
||||
CheckPackageFound("VATSIM_AUTH_PATH does not exist")
|
||||
return()
|
||||
endif()
|
||||
|
||||
if (NOT EXISTS "${VATSIM_AUTH_PATH}/common/include/vatsim/vatsimauth.h" OR NOT EXISTS "${VATSIM_AUTH_PATH}/linux-g++/64/lib/libvatsimauth.so")
|
||||
CheckPackageFound("VATSIM_AUTH_PATH does not contain VATSIMAuth")
|
||||
return()
|
||||
endif()
|
||||
|
||||
|
||||
add_library(VATSIMAuth::VATSIMAuth SHARED IMPORTED GLOBAL)
|
||||
|
||||
target_include_directories(VATSIMAuth::VATSIMAuth INTERFACE ${VATSIM_AUTH_PATH}/common/include)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if(UNIX AND NOT APPLE)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_LOCATION ${VATSIM_AUTH_PATH}/linux-g++/64/lib/libvatsimauth.so)
|
||||
elseif(APPLE)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_LOCATION ${VATSIM_AUTH_PATH}/macx-clang/64/lib/libvatsimauth.dylib)
|
||||
elseif(SWIFT_WIN32)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_IMPLIB ${VATSIM_AUTH_PATH}/win32-msvc/32/lib/vatsimauth.lib)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_LOCATION ${VATSIM_AUTH_PATH}/win32-msvc/32/lib/vatsimauth.dll)
|
||||
elseif(SWIFT_WIN64)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_IMPLIB ${VATSIM_AUTH_PATH}/win32-msvc/64/lib/vatsimauth.lib)
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_LOCATION ${VATSIM_AUTH_PATH}/win32-msvc/64/lib/vatsimauth.dll)
|
||||
endif()
|
||||
|
||||
if(UNIX AND NOT APPLE)
|
||||
# https://gitlab.kitware.com/cmake/cmake/-/issues/19860#note_642079
|
||||
set_target_properties(VATSIMAuth::VATSIMAuth PROPERTIES IMPORTED_NO_SONAME TRUE)
|
||||
endif()
|
||||
|
||||
install(IMPORTED_RUNTIME_ARTIFACTS VATSIMAuth::VATSIMAuth
|
||||
LIBRARY DESTINATION lib
|
||||
RUNTIME DESTINATION bin
|
||||
)
|
||||
|
||||
|
||||
set(VATSIM_AUTH_FOUND TRUE)
|
||||
CheckPackageFound("Found")
|
||||
52
cmake/modules/FindXPSDK.cmake
Normal file
52
cmake/modules/FindXPSDK.cmake
Normal file
@@ -0,0 +1,52 @@
|
||||
# SPDX-FileCopyrightText: Copyright (C) swift Project Community / Contributors
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later OR LicenseRef-swift-pilot-client-1
|
||||
|
||||
|
||||
macro(CheckPackageFound MSG)
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
find_package_handle_standard_args(XPSDK
|
||||
REQUIRED_VARS XP_SDK_FOUND
|
||||
FAIL_MESSAGE "XP SDK not found. ${MSG}"
|
||||
)
|
||||
endmacro()
|
||||
|
||||
if (NOT DEFINED XP_SDK_PATH)
|
||||
CheckPackageFound("XP_SDK_PATH not set")
|
||||
return()
|
||||
endif ()
|
||||
|
||||
if (NOT EXISTS ${XP_SDK_PATH})
|
||||
CheckPackageFound("XP_SDK_PATH does not exist")
|
||||
return()
|
||||
endif ()
|
||||
|
||||
if (NOT EXISTS "${XP_SDK_PATH}/CHeaders" OR NOT EXISTS "${XP_SDK_PATH}/Libraries")
|
||||
CheckPackageFound("XP_SDK_PATH content does not look like XP SDK")
|
||||
return()
|
||||
endif ()
|
||||
|
||||
|
||||
if (SWIFT_WIN64 OR APPLE)
|
||||
add_library(XPSDK::XPLM STATIC IMPORTED GLOBAL)
|
||||
add_library(XPSDK::XPWidgets STATIC IMPORTED GLOBAL)
|
||||
elseif (UNIX)
|
||||
add_library(XPSDK::XPLM IMPORTED INTERFACE)
|
||||
add_library(XPSDK::XPWidgets IMPORTED INTERFACE)
|
||||
endif ()
|
||||
|
||||
target_include_directories(XPSDK::XPLM INTERFACE ${XP_SDK_PATH}/CHeaders ${XP_SDK_PATH}/CHeaders/XPLM)
|
||||
target_include_directories(XPSDK::XPWidgets INTERFACE ${XP_SDK_PATH}/CHeaders ${XP_SDK_PATH}/CHeaders/Widgets)
|
||||
|
||||
if (SWIFT_WIN64)
|
||||
set_target_properties(XPSDK::XPLM PROPERTIES IMPORTED_LOCATION ${XP_SDK_PATH}/Libraries/Win/XPLM_64.lib)
|
||||
set_target_properties(XPSDK::XPWidgets PROPERTIES IMPORTED_LOCATION ${XP_SDK_PATH}/Libraries/Win/XPWidgets_64.lib)
|
||||
|
||||
elseif (APPLE)
|
||||
set_target_properties(XPSDK::XPLM PROPERTIES IMPORTED_LOCATION ${XP_SDK_PATH}/Libraries/Mac/XPLM.framework/XPLM)
|
||||
set_target_properties(XPSDK::XPWidgets PROPERTIES IMPORTED_LOCATION ${XP_SDK_PATH}/Libraries/Mac/XPWidgets.framework/XPWidgets)
|
||||
|
||||
endif ()
|
||||
|
||||
set(XP_SDK_FOUND TRUE)
|
||||
CheckPackageFound("Found")
|
||||
Reference in New Issue
Block a user