cmake changes for osg::CullSettings::ClearMask and Fedora
HAVE_CULLSETTINGS_CLEAR_MASK was not set, so a program to test CLEAR_MASK was added. The Posix timer function clock_gettime is in librt on Fedora, and probably on other systems too.
This commit is contained in:
parent
ded664e89e
commit
958a28b97f
3 changed files with 47 additions and 4 deletions
|
@ -2,6 +2,8 @@ cmake_minimum_required (VERSION 2.6)
|
|||
|
||||
include (CheckFunctionExists)
|
||||
include (CheckCSourceCompiles)
|
||||
include (CheckCXXSourceCompiles)
|
||||
include (CheckIncludeFile)
|
||||
include (CPack)
|
||||
|
||||
project(FlightGear)
|
||||
|
@ -67,7 +69,48 @@ find_package(OpenSceneGraph 2.8.2 REQUIRED osgText osgSim osgDB osgParticle osgF
|
|||
find_package(PLIB REQUIRED puaux pu js fnt)
|
||||
find_package(SimGear 2.0.0 REQUIRED)
|
||||
|
||||
find_path (HAVE_SYS_TIME_H sys/time.h )
|
||||
check_include_file(unistd.h HAVE_UNISTD_H)
|
||||
check_include_file(sys/time.h HAVE_SYS_TIME_H)
|
||||
|
||||
# definition depends on OSG version
|
||||
set(CMAKE_REQUIRED_INCLUDES ${OPENSCENEGRAPH_INCLUDE_DIRS})
|
||||
|
||||
check_cxx_source_compiles(
|
||||
"#include <osg/CullSettings>
|
||||
int main()
|
||||
{
|
||||
osg::CullSettings::VariablesMask mask = osg::CullSettings::CLEAR_MASK;
|
||||
return 0;
|
||||
}
|
||||
"
|
||||
HAVE_CULLSETTINGS_CLEAR_MASK)
|
||||
|
||||
# library required by simgear
|
||||
# XXX This should go in a module and only run if simgear is not shared.
|
||||
|
||||
if(HAVE_UNISTD_H)
|
||||
set(CMAKE_REQUIRED_INCLUDES ${CMAKE_INCLUDE_PATH})
|
||||
check_cxx_source_compiles(
|
||||
"#include <unistd.h>
|
||||
#if !defined(_POSIX_TIMERS) || (0 >= _POSIX_TIMERS)
|
||||
#error clock_gettime is not supported
|
||||
#endif
|
||||
|
||||
int main() { return 0; }
|
||||
"
|
||||
HAVE_CLOCK_GETTIME)
|
||||
endif(HAVE_UNISTD_H)
|
||||
|
||||
set(RT_LIBRARY "")
|
||||
if(HAVE_CLOCK_GETTIME)
|
||||
check_function_exists(clock_gettime CLOCK_GETTIME_IN_LIBC)
|
||||
if(NOT CLOCK_GETTIME_IN_LIBC)
|
||||
check_library_exists(rt clock_gettime "" HAVE_RT)
|
||||
if(HAVE_RT)
|
||||
set(RT_LIBRARY rt)
|
||||
endif(HAVE_RT)
|
||||
endif(NOT CLOCK_GETTIME_IN_LIBC)
|
||||
endif(HAVE_CLOCK_GETTIME)
|
||||
|
||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||
set(WARNING_FLAGS -Wall)
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#define ENABLE_AUDIO_SUPPORT 1
|
||||
|
||||
#cmakedefine HAVE_SYS_TIME_H
|
||||
#cmakedefine HAVE_CULLSETTINGS_CLEAR_MASK
|
||||
|
||||
#define VERSION "@FLIGHTGEAR_VERSION"
|
||||
|
||||
|
|
|
@ -38,8 +38,7 @@ target_link_libraries(fgfs
|
|||
${OPENGL_LIBRARIES}
|
||||
${ALUT_LIBRARY}
|
||||
${ZLIB_LIBRARIES}
|
||||
${PLIB_LIBRARIES})
|
||||
${PLIB_LIBRARIES}
|
||||
${RT_LIBRARY})
|
||||
|
||||
install(TARGETS fgfs RUNTIME DESTINATION bin)
|
||||
|
||||
|
Loading…
Reference in a new issue