2 IF(OSG_OGL_COREONLY AND NOT OSG_CHECK_COREONLY)
6 PROJECT(OpenSGSimpleExamples)
8 MESSAGE(STATUS "Building simple examples integrated")
10 #############################################################################
13 FILE(GLOB SRCFILES "*.cpp")
15 # stuff that is broken -- these examples need to be fixed
16 LIST(REMOVE_ITEM SRCFILES "${PROJECT_SOURCE_DIR}/clusterclientshader.cpp")
17 LIST(REMOVE_ITEM SRCFILES "${PROJECT_SOURCE_DIR}/geometryshader.cpp")
19 #############################################################################
22 SET(OSG_COMPONENTS OSGBase
37 LIST(APPEND OSG_COMPONENTS OSGWindowCocoa)
39 LIST(APPEND OSG_COMPONENTS OSGWindowX)
44 LIST(APPEND OSG_COMPONENTS OSGWindowWIN32)
51 SET(OSG_EXTERNAL_COMPONENTS Boost GLUT)
56 IF(X11_FOUND AND NOT APPLE)
57 LIST(APPEND OSG_EXTERNAL_COMPONENTS X11)
58 LIST(APPEND OSG_COMPONENTS OSGWindowX)
59 ELSE(X11_FOUND AND NOT APPLE)
60 LIST(REMOVE_ITEM SRCFILES "${PROJECT_SOURCE_DIR}/clusterserverx.cpp")
61 ENDIF(X11_FOUND AND NOT APPLE)
66 FOREACH(OSGDEP ${OSG_COMPONENTS})
67 IF(NOT EXISTS "${CMAKE_BINARY_DIR}/${OSGDEP}.cmake")
68 MESSAGE(STATUS "Dependency (${OSGDEP}) not found, "
69 "can not build ${PROJECT_NAME}\n")
71 ENDIF(NOT EXISTS "${CMAKE_BINARY_DIR}/${OSGDEP}.cmake")
73 INCLUDE("${CMAKE_BINARY_DIR}/${OSGDEP}.cmake")
74 INCLUDE_DIRECTORIES(${${OSGDEP}_INC})
77 FOREACH(OSGEXTDEP ${OSG_EXTERNAL_COMPONENTS})
78 IF(NOT ${OSGEXTDEP}_FOUND)
79 MESSAGE(FATAL_ERROR "Dependency (${OSGEXTDEP}) not found, "
80 "can not build ${PROJECT_NAME}\n")
84 INCLUDE_DIRECTORIES(SYSTEM ${${OSGEXTDEP}_INCLUDE_DIR})
87 set(OSG_ADDON_LIBRARIES "")
90 INCLUDE_DIRECTORIES(AFTER ${ANTTWEAKBAR_INCLUDE_DIR})
91 LIST(APPEND OSG_ADDON_LIBRARIES ${ANTTWEAKBAR_LIBRARIES})
92 add_definitions(-DOSG_WITH_ANTTWEAKBAR)
95 #############################################################################
98 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
100 FOREACH(GLOBAL_INC ${OSG_GLOBAL_DEP_INCDIR})
101 INCLUDE_DIRECTORIES(${${GLOBAL_INC}})
104 FOREACH(SRC ${SRCFILES})
106 GET_FILENAME_COMPONENT(EXE ${SRC} NAME_WE)
108 ADD_EXECUTABLE(${EXE} ${OSGEXCLUDE_EXAMPLES_SIMPLE}
109 ${SRC} ${OSG_ADD_GLOBAL_EXE_SRC})
111 ADD_DEPENDENCIES(OSGAllSimpleExamples ${EXE})
113 FOREACH(OSGDEP ${OSG_COMPONENTS})
114 ADD_DEPENDENCIES(${EXE} ${OSGDEP})
116 TARGET_LINK_LIBRARIES(${EXE} ${OSGDEP})
119 TARGET_LINK_LIBRARIES(${EXE} ${OSG_ADDON_LIBRARIES})
121 IF(LINUX AND CMAKE_BUILD_TYPE STREQUAL "DebugGV" AND OSG_ADD_CXX_FLAGS_GV)
122 SET_PROPERTY(TARGET ${EXE}
123 APPEND PROPERTY COMPILE_FLAGS ${OSG_ADD_CXX_FLAGS_GV})
127 SET_PROPERTY(TARGET ${EXE} PROPERTY FOLDER "Examples/Simple")
131 IF(OSG_INSTALL_EXAMPLES_EXE)
133 INSTALL(TARGETS ${EXE}
134 CONFIGURATIONS Release
135 RUNTIME DESTINATION share/OpenSG/Examples/Simple/bin/rel)
136 INSTALL(TARGETS ${EXE}
138 RUNTIME DESTINATION share/OpenSG/Examples/Simple/bin/debug)
139 INSTALL(TARGETS ${EXE}
140 CONFIGURATIONS ReleaseNoOpt
141 RUNTIME DESTINATION share/OpenSG/Examples/Simple/bin/relnoopt)
142 INSTALL(TARGETS ${EXE}
143 CONFIGURATIONS DebugOpt
144 RUNTIME DESTINATION share/OpenSG/Examples/Simple/bin/debugopt)
146 INSTALL(TARGETS ${EXE}
147 CONFIGURATIONS Release
148 DESTINATION share/OpenSG/Examples/Simple/bin
149 COMPONENT examples_basic)
151 INSTALL(TARGETS ${EXE}
153 DESTINATION share/OpenSG/Examples/Simple/bin/debug
154 COMPONENT examples_basic)
156 INSTALL(TARGETS ${EXE}
157 CONFIGURATIONS DebugGV
158 DESTINATION share/OpenSG/Examples/Simple/bin/debug
159 COMPONENT examples_basic)
162 IF(OSG_INSTALL_EXAMPLES)
163 INSTALL(FILES "${SRC}"
164 DESTINATION share/OpenSG/Examples/Simple
165 COMPONENT examples_basic)
170 IF(OSG_INSTALL_EXAMPLES)
171 INSTALL(FILES CMakeLists.standalone.txt
172 DESTINATION share/OpenSG/Examples/Simple
173 RENAME CMakeLists.txt
174 COMPONENT examples_basic)