# additional utilities
option(ENABLE_FGADMIN "Set to ON to build the FGADMIN application (default)" ON)
+option(ENABLE_FGELEV "Set to ON to build the fgelev application (default)" ON)
option(WITH_FGPANEL "Set to ON to build the fgpanel application (default)" ON)
+option(ENABLE_FGVIEWER "Set to ON to build the fgviewer application (default)" ON)
+option(ENABLE_GPSSMOOTH "Set to ON to build the GPSsmooth application (default)" ON)
+option(ENABLE_TERRASYNC "Set to ON to build the terrasync application (default)" ON)
+
+option(ENABLE_FGJS "Set to ON to build the fgjs application (default)" ON)
+option(ENABLE_JS_DEMO "Set to ON to build the js_demo application (default)" ON)
+
+option(ENABLE_METAR "Set to ON to build the metar application (default)" ON)
+
option(ENABLE_TESTS "Set to ON to build test applications (default)" ON)
if(LOGGING)
set(MANPAGES
fgfs.1
- fgjs.1
- fgpanel.1
gl-info.1
- js_demo.1
- terrasync.1)
+)
+
+if(WITH_FGPANEL)
+ list(APPEND MANPAGES fgpanel.1)
+endif()
+
+if(ENABLE_TERRASYNC)
+ list(APPEND MANPAGES terrasync.1)
+endif()
+
+if(ENABLE_FGJS)
+ list(APPEND MANPAGES fgjs.1)
+endif()
+
+if(ENABLE_JS_DEMO)
+ list(APPEND MANPAGES js_demo.1)
+endif()
# map some variables to what the man-pages expect
set(PACKAGE ${CMAKE_PROJECT_NAME})
include_directories(${UDEV_INCLUDE_DIR})
endif()
-set(FGJS_SOURCES
- fgjs.cxx
- jsinput.cxx
- jssuper.cxx
- )
-
-add_executable(fgjs ${FGJS_SOURCES})
+if(ENABLE_FGJS)
+ set(FGJS_SOURCES
+ fgjs.cxx
+ jsinput.cxx
+ jssuper.cxx
+ )
-target_link_libraries(fgjs
- ${SIMGEAR_CORE_LIBRARIES}
- ${PLIB_LIBRARIES}
- ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES})
+ add_executable(fgjs ${FGJS_SOURCES})
+ target_link_libraries(fgjs
+ ${SIMGEAR_CORE_LIBRARIES}
+ ${PLIB_LIBRARIES}
+ ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES}
+ )
-add_executable(js_demo js_demo.cxx)
+ install(TARGETS fgjs RUNTIME DESTINATION bin)
+endif()
-target_link_libraries(js_demo
- ${SIMGEAR_CORE_LIBRARIES}
- ${PLIB_LIBRARIES}
- ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES})
+if(ENABLE_JS_DEMO)
+ add_executable(js_demo js_demo.cxx)
+ target_link_libraries(js_demo
+ ${SIMGEAR_CORE_LIBRARIES}
+ ${PLIB_LIBRARIES}
+ ${SIMGEAR_CORE_LIBRARY_DEPENDENCIES}
+ )
-flightgear_component(Input "${SOURCES}" "${HEADERS}")
+ install(TARGETS js_demo RUNTIME DESTINATION bin)
+endif()
-install(TARGETS fgjs js_demo RUNTIME DESTINATION bin)
+flightgear_component(Input "${SOURCES}" "${HEADERS}")
\ No newline at end of file
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)
+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()
-add_subdirectory(TerraSync)
-add_subdirectory(fgviewer)
-add_subdirectory(fgelev)
-add_subdirectory(GPSsmooth)
-
-if (FLTK_FOUND)
+if(FLTK_FOUND)
if (EXISTS ${FLTK_FLUID_EXECUTABLE})
add_subdirectory(fgadmin)
else ()
message(STATUS "fluid executable not found, disabling fgadmin")
endif ()
-endif (FLTK_FOUND)
-
-if (WITH_FGPANEL)
- add_subdirectory(fgpanel)
-endif (WITH_FGPANEL)
+endif()
# win32 is just excluded because of not having argument parsing there ...
if(RTI_FOUND AND NOT WIN32)
- add_subdirectory(fgai)
-endif(RTI_FOUND AND NOT WIN32)
+ add_subdirectory(fgai)
+endif()
+
+if(ENABLE_FGELEV)
+ add_subdirectory(fgelev)
+endif()
+
+if(WITH_FGPANEL)
+ add_subdirectory(fgpanel)
+endif()
+
+if(ENABLE_FGVIEWER)
+ add_subdirectory(fgviewer)
+endif()
+
+if(ENABLE_GPSSMOOTH)
+ add_subdirectory(GPSsmooth)
+endif()
+
+if(ENABLE_TERRASYNC)
+ add_subdirectory(TerraSync)
+endif()
\ No newline at end of file