]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/CMakeLists.txt
Reduce amount of log output at level=debug.
[flightgear.git] / src / Main / CMakeLists.txt
index ff4538c2ea7c0d49f99e748ab33a13ad1ec6ac99..338a9f6d4fbaad94f3d0b81e36fc5071889d473b 100644 (file)
@@ -1,29 +1,73 @@
 
+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
+       FGInterpolator.cxx
        globals.cxx
+       locale.cxx
        logger.cxx
        main.cxx
        options.cxx
-       renderer.cxx
-       splash.cxx
        util.cxx
-       viewer.cxx
-       viewmgr.cxx
+    positioninit.cxx
+    subsystemFactory.cxx
+       ${RESOURCE_FILE}
+       )
+
+set(HEADERS
+       fg_commands.hxx
+       fg_init.hxx
+       fg_io.hxx
+       fg_props.hxx
+       FGInterpolator.hxx
+       globals.hxx
+       locale.hxx
+       logger.hxx
+       main.hxx
+       options.hxx
+       util.hxx
+    positioninit.hxx
+    subsystemFactory.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})
 
 get_property(FG_LIBS GLOBAL PROPERTY FG_LIBS)
 #message(STATUS "fg libs ${FG_LIBS}")
@@ -31,23 +75,49 @@ 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()
+if(ENABLE_IAX)
+    target_link_libraries(fgfs iaxclient_lib ${OPENAL_LIBRARY})
+endif()
+if(FG_HAVE_GPERFTOOLS)
+    include_directories(${GooglePerfTools_INCLUDE_DIR})
+    target_link_libraries(fgfs ${GooglePerfTools_LIBRARIES})
+endif()
+
+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}
+)
+
 install(TARGETS fgfs RUNTIME DESTINATION bin)
+
+if(ENABLE_METAR)
+    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)
+endif()