X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=CMakeLists.txt;h=62c39ad23a15a68d2d7fabf9edaa799677991cf3;hb=45ac5cb2fa738afa3a50b0b03ece5358f3a31e74;hp=61824342e6ffec623172d8179871e676026d4775;hpb=7bcf02a0b47486ed6eed755320ecb5cb795a3b4f;p=simgear.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 61824342..62c39ad2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -68,13 +68,22 @@ else(${CMAKE_VERSION} VERSION_GREATER 2.8.4) endif(${CMAKE_VERSION} VERSION_GREATER 2.8.4) message(STATUS "Library installation directory: ${CMAKE_INSTALL_LIBDIR}") +if (NOT MSVC) option(SIMGEAR_SHARED "Set to ON to build SimGear as a shared library/framework" OFF) +option(SYSTEM_EXPAT "Set to ON to build SimGear using the system libExpat" OFF) +else() +# Building SimGear DLLs is currently not supported for MSVC. +set(SIMGEAR_SHARED OFF) +# Using a system expat is currently not supported for MSVC - it would require shared simgear (DLL). +set(SYSTEM_EXPAT OFF) +endif() + option(SIMGEAR_HEADLESS "Set to ON to build SimGear without GUI/graphics support" OFF) option(JPEG_FACTORY "Enable JPEG-factory support" OFF) option(ENABLE_LIBSVN "Set to ON to build SimGear with libsvnclient support" ON) option(ENABLE_RTI "Set to ON to build SimGear with RTI support" OFF) option(ENABLE_TESTS "Set to OFF to disable building SimGear's test applications" ON) -option(SYSTEM_EXPAT "Set to ON to build SimGear using the system libExpat" OFF) +option(ENABLE_SOUND "Set to OFF to disable building SimGear's sound support" ON) if (MSVC) GET_FILENAME_COMPONENT(PARENT_DIR ${PROJECT_SOURCE_DIR} PATH) @@ -134,10 +143,15 @@ set (BOOST_CXX_FLAGS "-DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION -DBOOST_BIMAP_DI if(SIMGEAR_HEADLESS) message(STATUS "SimGear mode: HEADLESS") + set(ENABLE_SOUND 0) else() message(STATUS "SimGear mode: NORMAL") find_package(OpenGL REQUIRED) - find_package(OpenAL REQUIRED) + + if (ENABLE_SOUND) + find_package(OpenAL REQUIRED) + endif(ENABLE_SOUND) + find_package(OpenSceneGraph 3.0.0 REQUIRED osgText osgSim osgDB osgParticle osgGA osgUtil) endif(SIMGEAR_HEADLESS) @@ -179,11 +193,17 @@ else() add_definitions(-DHAVE_EXPAT_CONFIG_H) endif(SYSTEM_EXPAT) +check_include_file(inttypes.h HAVE_INTTYPES_H) check_include_file(sys/time.h HAVE_SYS_TIME_H) check_include_file(sys/timeb.h HAVE_SYS_TIMEB_H) check_include_file(unistd.h HAVE_UNISTD_H) check_include_file(windows.h HAVE_WINDOWS_H) +if(HAVE_INTTYPES_H) + # ShivaVG needs inttypes.h + add_definitions(-DHAVE_INTTYPES_H) +endif() + if(ENABLE_RTI) # See if we have any rti library variant installed message(STATUS "RTI: ENABLED") @@ -280,6 +300,7 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WARNING_FLAGS_C} ${MSVC_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WARNING_FLAGS_CXX} ${MSVC_FLAGS} ${BOOST_CXX_FLAGS}") include_directories(${PROJECT_SOURCE_DIR}) +include_directories(${PROJECT_SOURCE_DIR}/simgear/canvas/ShivaVG/include) include_directories(${PROJECT_BINARY_DIR}/simgear) include_directories(${PROJECT_BINARY_DIR}/simgear/xml)