1
0
Fork 0
flightgear/CMakeModules/SetupFGFSLibraries.cmake
James Turner 740193a378 CMake: different fix for ALIAS issues with 3.10
ALIAS is not really functional in 3.10, so use a variable to approximate
the same behaviour. Not elegant but it seems to work.
2020-08-27 22:33:08 +01:00

69 lines
1.9 KiB
CMake

function(setup_fgfs_libraries target)
get_property(FG_LIBS GLOBAL PROPERTY FG_LIBS)
#message(STATUS "fg libs ${FG_LIBS}")
#message(STATUS "OSG libs ${OPENSCENEGRAPH_LIBRARIES}")
#message(STATUS "SG libs ${SIMGEAR_LIBRARIES}")
if(RTI_FOUND)
set(HLA_LIBRARIES ${RTI_LDFLAGS})
else()
set(HLA_LIBRARIES "")
endif()
if(ENABLE_JSBSIM)
target_link_libraries(${target} JSBSim)
endif()
if(ENABLE_IAX)
target_link_libraries(${target} iaxclient_lib)
endif()
if(HAVE_DBUS)
# ALIAS doesn't work with CMake 3.10, so we need
# variable to store the target name
target_link_libraries(${target} ${dbus_target})
endif()
if(X11_FOUND)
target_link_libraries(${target} ${X11_LIBRARIES})
endif()
target_link_libraries(${target} fgsqlite3 fgvoicesynth fgembeddedresources)
target_link_libraries(${target}
SimGearCore
SimGearScene
Boost::boost
${EVENT_INPUT_LIBRARIES}
${HLA_LIBRARIES}
${OPENGL_LIBRARIES}
${OPENSCENEGRAPH_LIBRARIES}
${PLATFORM_LIBS}
${PLIB_LIBRARIES}
)
if (ENABLE_SWIFT)
# ALIAS doesn't work with CMake 3.10, so we need
# variable to store the target name
target_link_libraries(${target} ${dbus_target} ${libEvent_target})
endif()
if (ENABLE_PLIB_JOYSTICK)
target_link_libraries(${target} PLIBJoystick)
endif()
target_link_libraries(${target} PLIBFont)
if (TARGET fglauncher)
target_link_libraries(${target} Qt5::Core Qt5::Widgets fglauncher fgqmlui)
set_property(TARGET ${target} PROPERTY AUTOMOC ON)
endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
target_link_libraries(${target} execinfo)
endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
target_link_libraries(${target} execinfo)
endif()
endfunction()