2 file(WRITE ${PROJECT_BINARY_DIR}/simgear/version.h "#define SIMGEAR_VERSION ${SIMGEAR_VERSION}")
24 add_subdirectory(${mylibfolder})
26 endforeach( mylibfolder )
28 if(NOT SIMGEAR_HEADLESS)
29 add_subdirectory(canvas)
30 add_subdirectory(environment)
31 add_subdirectory(screen)
32 add_subdirectory(scene)
33 add_subdirectory(sound)
34 endif(NOT SIMGEAR_HEADLESS)
42 set(HEADERS compiler.h constants.h sg_inlines.h ${PROJECT_BINARY_DIR}/simgear/version.h)
43 install (FILES ${HEADERS} DESTINATION include/simgear/)
45 get_property(coreSources GLOBAL PROPERTY CORE_SOURCES)
46 get_property(sceneSources GLOBAL PROPERTY SCENE_SOURCES)
47 get_property(publicHeaders GLOBAL PROPERTY PUBLIC_HEADERS)
48 get_property(localExpatSources GLOBAL PROPERTY LOCAL_EXPAT_SOURCES)
51 add_definitions(${APR_CFLAGS})
52 include_directories(${LIBSVN_INCLUDE_DIR})
56 message(STATUS "Library building mode: SHARED LIBRARIES")
57 add_library(SimGearCore SHARED ${coreSources} ${localExpatSources})
59 # set_property(TARGET SimGearCore PROPERTY FRAMEWORK 1)
60 # message(STATUS "public header: ${publicHeaders}")
61 # set_property(TARGET SimGearCore PROPERTY PUBLIC_HEADER "${publicHeaders}")
62 set_property(TARGET SimGearCore PROPERTY LINKER_LANGUAGE CXX)
64 set_property(TARGET SimGearCore PROPERTY VERSION ${SIMGEAR_VERSION})
65 set_property(TARGET SimGearCore PROPERTY SOVERSION ${SIMGEAR_SOVERSION})
67 target_link_libraries(SimGearCore ${ZLIB_LIBRARY} ${RT_LIBRARY}
68 ${LibArchive_LIBRARIES}
70 ${CMAKE_THREAD_LIBS_INIT}
71 ${CORE_SERVICES_LIBRARY})
74 target_link_libraries(SimGearCore ${LIBSVN_LIBRARIES})
77 if(NOT SIMGEAR_HEADLESS)
78 add_library(SimGearScene SHARED ${sceneSources})
79 # set_property(TARGET SimGearScene PROPERTY FRAMEWORK 1)
80 # set_property(TARGET SimGearScene PROPERTY PUBLIC_HEADER "${publicHeaders}")
81 set_property(TARGET SimGearScene PROPERTY LINKER_LANGUAGE CXX)
82 set_property(TARGET SimGearScene PROPERTY VERSION ${SIMGEAR_VERSION})
83 set_property(TARGET SimGearScene PROPERTY SOVERSION ${SIMGEAR_SOVERSION})
85 target_link_libraries(SimGearScene
88 ${OPENSCENEGRAPH_LIBRARIES}
93 install(TARGETS SimGearScene LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
96 install(TARGETS SimGearCore LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
98 message(STATUS "Library building mode: STATIC LIBRARIES")
100 get_property(FG_GROUPS_CORE_SOURCES_C GLOBAL PROPERTY FG_GROUPS_CORE_SOURCES_C)
101 string(REPLACE "@" ";" groups ${FG_GROUPS_CORE_SOURCES_C} )
103 string(REPLACE "#" ";" g2 ${g})
106 source_group("${name}\\Sources" FILES ${g2})
109 get_property(FG_GROUPS_CORE_SOURCES_H GLOBAL PROPERTY FG_GROUPS_CORE_SOURCES_H)
110 string(REPLACE "@" ";" groups ${FG_GROUPS_CORE_SOURCES_H} )
112 string(REPLACE "#" ";" g2 ${g})
115 source_group("${name}\\Headers" FILES ${g2})
118 add_library(SimGearCore STATIC ${coreSources} ${localExpatSources})
119 install(TARGETS SimGearCore ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
121 if(NOT SIMGEAR_HEADLESS)
122 get_property(FG_GROUPS_SCENE_SOURCES_C GLOBAL PROPERTY FG_GROUPS_SCENE_SOURCES_C)
123 string(REPLACE "@" ";" groups ${FG_GROUPS_SCENE_SOURCES_C} )
125 string(REPLACE "#" ";" g2 ${g})
128 source_group("${name}\\Sources" FILES ${g2})
131 get_property(FG_GROUPS_SCENE_SOURCES_H GLOBAL PROPERTY FG_GROUPS_SCENE_SOURCES_H)
132 string(REPLACE "@" ";" groups ${FG_GROUPS_SCENE_SOURCES_H} )
134 string(REPLACE "#" ";" g2 ${g})
137 source_group("${name}\\Headers" FILES ${g2})
140 add_library(SimGearScene STATIC ${sceneSources})
141 install(TARGETS SimGearScene ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
142 endif(NOT SIMGEAR_HEADLESS)
143 endif(SIMGEAR_SHARED)
146 # Ugly first aid to make hla compile agian
147 set_property(SOURCE hla/RTI13InteractionClass.cxx hla/RTI13ObjectClass.cxx
148 hla/RTI13ObjectInstance.cxx hla/RTI13Federate.cxx
149 hla/RTI13FederateFactory.cxx
150 APPEND PROPERTY COMPILE_FLAGS "-I${RTI_INCLUDE_DIR}")