]> git.mxchange.org Git - simgear.git/blob - simgear/CMakeLists.txt
Fixes for headless mode.
[simgear.git] / simgear / CMakeLists.txt
1
2 file(WRITE ${PROJECT_BINARY_DIR}/simgear/version.h "#define SIMGEAR_VERSION ${SIMGEAR_VERSION}")
3
4 foreach( mylibfolder 
5         bucket
6         debug
7         ephemeris
8         io
9         magvar
10         math
11         misc
12         nasal
13         props
14         route
15         serial
16         structure
17         threads
18         timing
19         xml
20     )
21
22     add_subdirectory(${mylibfolder})
23
24 endforeach( mylibfolder )
25
26 if(NOT SIMGEAR_HEADLESS)
27     add_subdirectory(environment)
28     add_subdirectory(screen)
29     add_subdirectory(scene)
30     add_subdirectory(sound)
31 endif(NOT SIMGEAR_HEADLESS)
32
33
34 if(ENABLE_RTI)
35     add_subdirectory(hla)
36 endif(ENABLE_RTI)
37
38
39 set(HEADERS compiler.h constants.h sg_inlines.h ${PROJECT_BINARY_DIR}/simgear/version.h)
40 install (FILES ${HEADERS}  DESTINATION include/simgear/)
41
42 if(SIMGEAR_SHARED)
43     message(STATUS "building shared library")
44     get_property(allSources GLOBAL PROPERTY ALL_SOURCES)
45     get_property(publicHeaders GLOBAL PROPERTY PUBLIC_HEADERS)
46
47     add_library(SimGear SHARED ${allSources})
48     set_property(TARGET SimGear PROPERTY FRAMEWORK 1)
49     message(STATUS "public header: ${publicHeaders}")
50     set_property(TARGET SimGear PROPERTY PUBLIC_HEADER "${publicHeaders}")
51     set_property(TARGET SimGear PROPERTY LINKER_LANGUAGE CXX)
52         
53     target_link_libraries(SimGear ${ZLIB_LIBRARY} 
54                         ${OPENSCENEGRAPH_LIBRARIES} 
55                         ${OPENAL_LIBRARY} ${ALUT_LIBRARY}
56                         ${OPENGL_LIBRARY})
57                         
58     install(TARGETS SimGear LIBRARY DESTINATION lib${LIB_SUFFIX}
59                             PUBLIC_HEADER DESTINATION include/simgear)
60 endif(SIMGEAR_SHARED)
61