X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FMain%2FCMakeLists.txt;h=8a8769cd3f9b0a55897d2cbd0ec153d70295852d;hb=3b6c2c426d8fa1b72b7563383cecbba8eb0ff018;hp=ff4538c2ea7c0d49f99e748ab33a13ad1ec6ac99;hpb=3134acca83a4ba67ea92e149381dafac01a2b3f4;p=flightgear.git diff --git a/src/Main/CMakeLists.txt b/src/Main/CMakeLists.txt index ff4538c2e..8a8769cd3 100644 --- a/src/Main/CMakeLists.txt +++ b/src/Main/CMakeLists.txt @@ -1,29 +1,74 @@ +if (MSVC) + if (CMAKE_CL_64) + set( RESOURCE_FILE flightgear64.rc ) + else (CMAKE_CL_64) + set( RESOURCE_FILE flightgear.rc ) + endif (CMAKE_CL_64) +endif (MSVC) + set(SOURCES - CameraGroup.cxx - FGEventHandler.cxx - WindowBuilder.cxx - WindowSystemAdapter.cxx bootstrap.cxx fg_commands.cxx fg_init.cxx fg_io.cxx fg_os_common.cxx - fg_os_osgviewer.cxx fg_props.cxx - fgviewer.cxx globals.cxx + locale.cxx logger.cxx main.cxx options.cxx - renderer.cxx - splash.cxx util.cxx - viewer.cxx - viewmgr.cxx + positioninit.cxx + ${RESOURCE_FILE} + ) + +set(HEADERS + fg_commands.hxx + fg_init.hxx + fg_io.hxx + fg_props.hxx + globals.hxx + locale.hxx + logger.hxx + main.hxx + options.hxx + util.hxx + positioninit.hxx ) - -add_executable(fgfs ${SOURCES}) + +get_property(FG_SOURCES GLOBAL PROPERTY FG_SOURCES) +get_property(FG_HEADERS GLOBAL PROPERTY FG_HEADERS) + +link_directories ( ${Boost_LIBRARY_DIRS} ) + +get_property(FG_GROUPS_C GLOBAL PROPERTY FG_GROUPS_C) +string(REPLACE "@" ";" groups ${FG_GROUPS_C} ) +foreach(g ${groups}) + string(REPLACE "#" ";" g2 ${g}) + list(GET g2 0 name) + list(REMOVE_AT g2 0) + source_group("${name}\\Sources" FILES ${g2}) +endforeach() + +get_property(FG_GROUPS_H GLOBAL PROPERTY FG_GROUPS_H) +string(REPLACE "@" ";" groups ${FG_GROUPS_H} ) +foreach(g ${groups}) + string(REPLACE "#" ";" g2 ${g}) + list(GET g2 0 name) + list(REMOVE_AT g2 0) + source_group("${name}\\Headers" FILES ${g2}) +endforeach() + +source_group("Main\\Headers" FILES ${HEADERS}) +source_group("Main\\Sources" FILES ${SOURCES}) +add_executable(fgfs ${SOURCES} ${FG_SOURCES} ${FG_HEADERS} ${HEADERS}) + +# disable sqlite3 dynamic lib support +# this should really be a SOURCE property, but the way we handle +# Fcomponent sources is making that tricky +add_definitions(-DSQLITE_OMIT_LOAD_EXTENSION) get_property(FG_LIBS GLOBAL PROPERTY FG_LIBS) #message(STATUS "fg libs ${FG_LIBS}") @@ -31,23 +76,45 @@ get_property(FG_LIBS GLOBAL PROPERTY FG_LIBS) #message(STATUS "SG libs ${SIMGEAR_LIBRARIES}") if(RTI_FOUND) - find_sg_component(hla13 SIMGEAR_LIBRARIES) - find_sg_component(hla SIMGEAR_LIBRARIES) - set(HLA_LIBRARIES ${RTI_LIBRARIES}) + set(HLA_LIBRARIES ${RTI_LIBRARIES}) else() - set(HLA_LIBRARIES "") + set(HLA_LIBRARIES "") endif() -target_link_libraries(fgfs - ${FG_LIBS} - ${HLA_LIBRARIES} +if(ENABLE_JSBSIM) + # FIXME - remove once JSBSim doesn't expose private headers + include_directories(${PROJECT_SOURCE_DIR}/src/FDM/JSBSim) + + target_link_libraries(fgfs JSBSim) +endif() + +include_directories(${PROJECT_SOURCE_DIR}/src/Canvas/ShivaVG/include) +add_definitions(-DVG_API_EXPORT) + +target_link_libraries(fgfs + ${SQLITE3_LIBRARY} ${SIMGEAR_LIBRARIES} - ${OPENSCENEGRAPH_LIBRARIES} - ${OPENAL_LIBRARY} + ${OPENSCENEGRAPH_LIBRARIES} ${OPENGL_LIBRARIES} - ${ALUT_LIBRARY} - ${ZLIB_LIBRARIES} ${PLIB_LIBRARIES} - ${RT_LIBRARY}) - + ${JPEG_LIBRARY} + ${HLA_LIBRARIES} + ${EVENT_INPUT_LIBRARIES} + ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES} + ${SIMGEAR_SCENE_LIBRARY_DEPENDENCIES} + ${PLATFORM_LIBS} + ShivaVG +) + install(TARGETS fgfs RUNTIME DESTINATION bin) + +add_executable(metar metar_main.cxx) + +target_link_libraries(metar + ${SIMGEAR_LIBRARIES} + ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES} + ${SIMGEAR_SCENE_LIBRARY_DEPENDENCIES} + ${PLATFORM_LIBS} +) + +install(TARGETS metar RUNTIME DESTINATION bin)