1
0
Fork 0
flightgear/CMakeModules/SetupFGFSLibraries.cmake
James Turner 7738f33306 Adjust FindDBus to use imported targets
This is necessary on macOS where DBus is typically installed using
Homebrew, and hence we need additional linker flags to find the
library. Using the PkgConfig::DBUS imported target handles all this
transparently, but then we need to define an imported target for
Windows to work.
2019-05-27 11:37:35 +01:00

89 lines
2.3 KiB
CMake

function(setup_fgfs_libraries target)
link_directories ( ${Boost_LIBRARY_DIRS} )
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_LIBRARIES})
else()
set(HLA_LIBRARIES "")
endif()
if(GDAL_FOUND)
set(GDAL_LIBRARIES ${GDAL_LIBRARY})
else()
set(GDAL_LIBRARIES "")
endif()
if(ENABLE_JSBSIM)
target_link_libraries(${target} JSBSim)
endif()
if(ENABLE_IAX)
target_link_libraries(${target} iaxclient_lib ${OPENAL_LIBRARY})
endif()
# manually created DBus target
if(TARGET DBus)
target_link_libraries(${target} DBus)
endif()
# PkgCOnfig::DBUS target
if(TARGET PkgConfig::DBUS)
target_link_libraries(${target} PkgConfig::DBUS)
endif()
if(FG_HAVE_GPERFTOOLS)
target_link_libraries(${target} ${GooglePerfTools_LIBRARIES})
endif()
if(CRASHRPT_FOUND)
target_link_libraries(${target} ${CRASHRPT_LIBRARY})
endif()
if(X11_FOUND)
target_link_libraries(${target} ${X11_LIBRARIES})
endif()
target_link_libraries(${target}
SimGearCore
SimGearScene
${EVENT_INPUT_LIBRARIES}
${GDAL_LIBRARIES}
${HLA_LIBRARIES}
${OPENGL_LIBRARIES}
${OPENSCENEGRAPH_LIBRARIES}
${PLATFORM_LIBS}
${PLIB_LIBRARIES}
${SQLITE3_LIBRARY}
${SIMGEAR_LIBRARIES}
)
if (ENABLE_PLIB_JOYSTICK)
target_link_libraries(${target} PLIBJoystick)
endif()
if(ENABLE_FLITE)
if(SYSTEM_HTS_ENGINE)
target_link_libraries(${target} flite_hts ${HTS_ENGINE_LIBRARIES})
else()
target_link_libraries(${target} flite_hts hts_engine)
endif()
endif()
if(Qt5Core_FOUND)
target_link_libraries(${target} Qt5::Core Qt5::Widgets fglauncher fgqmlui)
set_property(TARGET ${target} PROPERTY AUTOMOC ON)
endif()
if(USE_AEONWAVE)
target_link_libraries(${target} ${AAX_LIBRARY})
endif()
if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
target_link_libraries(${target} execinfo)
endif()
endfunction()