mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-08-12 20:55:39 +08:00
CMakeFiles for XSB
This commit is contained in:
committed by
Chris Collins
parent
5e236443ac
commit
7ae92c47a4
@@ -1,10 +1,11 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules" ${CMAKE_MODULE_PATH})
|
||||
|
||||
find_package(XPSDK REQUIRED)
|
||||
|
||||
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
add_definitions(-DLIN=1)
|
||||
find_package(PNG)
|
||||
#set(XPMP_PLATFORM_SOURCES
|
||||
# src/PlatformUtils.lin.cpp)
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
@@ -16,6 +17,9 @@ elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
#set(XPMP_PLATFORM_SOURCES
|
||||
# src/PlatformUtils.mac.cpp)
|
||||
endif()
|
||||
if(PNG_FOUND)
|
||||
add_definitions(-DBITMAP_USE_PNG=1)
|
||||
endif()
|
||||
|
||||
add_definitions(-DXPLM200=1 -DXPLM210=1)
|
||||
|
||||
@@ -36,9 +40,10 @@ add_library(xplanemp
|
||||
src/XUtils.cpp)
|
||||
target_include_directories(xplanemp
|
||||
PUBLIC
|
||||
${XPSDK_INCLUDE_DIRS}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/include
|
||||
${XPSDK_XPLM_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||
${PNG_INCLUDE_DIRS})
|
||||
target_link_libraries(xplanemp
|
||||
PUBLIC ${XPSDK_XPLM_LIBRARIES})
|
||||
PUBLIC ${XPSDK_XPLM_LIBRARIES} ${PNG_LIBRARIES})
|
||||
set_target_properties(xplanemp PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
@@ -3,20 +3,24 @@ find_path(XPSDK_DIR
|
||||
CHeaders/XPLM/XPLMDefs.h
|
||||
CHeaders/Wrappers/XPCDisplay.h)
|
||||
if(XPSDK_DIR)
|
||||
set(XPSDK_FOUND)
|
||||
set(XPSDK_FOUND TRUE)
|
||||
if(CMAKE_SIZE_OF_VOID_P EQUAL 8)
|
||||
set(WSIZE "_64")
|
||||
endif()
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Linux")
|
||||
set(XPSDK_ARCH "Lin")
|
||||
set(XPSDK_DEFINITIONS "-DLIN=1")
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
set(XPSDK_ARCH "Win")
|
||||
set(XPSDK_DEFINITIONS "-DIBM=1")
|
||||
elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
set(XPSDK_ARCH "Mac")
|
||||
set(XPSDK_DEFINITIONS "-DAPL=1")
|
||||
endif()
|
||||
|
||||
set(XPSDK_INCLUDE_DIRS ${XPSDK_DIR}/CHeaders)
|
||||
set(XPSDK_LIBRARY_DIRS ${XPSDK_DIR}/Libraries/${XPARCH})
|
||||
set(XPSDK_INCLUDE_DIRS ${XPSDK_DIR}/CHeaders/XPLM ${XPSDK_DIR}/CHeaders/Widgets ${XPSDK_DIR}/CHeaders/Wrappers)
|
||||
set(XPSDK_LIBRARY_DIRS ${XPSDK_DIR}/Libraries/${XPSDK_ARCH})
|
||||
file(GLOB XPSDK_WRAPPERS_SOURCES ${XPSDK_DIR}/CHeaders/Wrappers/*.cpp)
|
||||
|
||||
# linux doesn't have linking stubs for XPLM/XPWidgets!
|
||||
if(CMAKE_SYSTEM_NAME MATCHES "Windows")
|
||||
@@ -27,10 +31,6 @@ if(XPSDK_DIR)
|
||||
set(XPSDK_XPWIDGETS_LIBRARIES ${XPSDK_LIBRARY_DIRS}/XPWidgets.framework)
|
||||
endif()
|
||||
|
||||
set(XPSDK_XPLM_INCLUDE_DIRS ${XPSDK_DIR}/CHeaders/XPLM)
|
||||
set(XPSDK_XPWIDGETS_INCLUDE_DIRS ${XPSDK_DIR}/CHeaders/Widgets)
|
||||
set(XPSDK_WRAPPERS_INCLUDE_DIRS ${XPSDK_DIR}/CHeaders/Wrappers)
|
||||
file(GLOB XPSDK_WRAPPERS_SOURCES ${XPSDK_DIR}/CHeaders/Wrappers/*.cpp)
|
||||
else()
|
||||
set(XPSDK_FOUND)
|
||||
set(XPSDK_NOT_FOUND_MESSAGE "Could not find the XPlane Plugin SDK - please set XPSDK_DIR to the top directory of the SDK")
|
||||
|
||||
Reference in New Issue
Block a user