root/OpenSceneGraph/trunk/src/osg/CMakeLists.txt @ 9671

Revision 9671, 8.3 kB (checked in by robert, 4 years ago)

From Sherman Wilcox, added VS versioning information into libs

  • Property svn:eol-style set to native
Line 
1
2# FIXME: For OS X, need flag for Framework or dylib
3IF   (DYNAMIC_OPENSCENEGRAPH)
4    ADD_DEFINITIONS(-DOSG_LIBRARY)
5ELSE (DYNAMIC_OPENSCENEGRAPH)
6    ADD_DEFINITIONS(-DOSG_LIBRARY_STATIC)
7ENDIF(DYNAMIC_OPENSCENEGRAPH)
8
9SET(LIB_NAME osg)
10
11
12#
13# Enable workaround for OpenGL driver crash with occlusion query
14#
15OPTION(OSG_FORCE_QUERY_RESULT_AVAILABLE_BEFORE_RETRIEVAL "Set to ON to build OcclussionQueryNode with a workaround for multi-threaded OpenGL driver occlussion query crash. " OFF)
16IF(OSG_FORCE_QUERY_RESULT_AVAILABLE_BEFORE_RETRIEVAL)
17    ADD_DEFINITIONS(-DFORCE_QUERY_RESULT_AVAILABLE_BEFORE_RETRIEVAL)
18ENDIF(OSG_FORCE_QUERY_RESULT_AVAILABLE_BEFORE_RETRIEVAL)
19
20
21SET(HEADER_PATH ${OpenSceneGraph_SOURCE_DIR}/include/${LIB_NAME})
22SET(LIB_PUBLIC_HEADERS
23    ${HEADER_PATH}/AlphaFunc
24    ${HEADER_PATH}/AnimationPath
25    ${HEADER_PATH}/ApplicationUsage
26    ${HEADER_PATH}/ArgumentParser
27    ${HEADER_PATH}/Array
28    ${HEADER_PATH}/AutoTransform
29    ${HEADER_PATH}/Billboard
30    ${HEADER_PATH}/BlendColor
31    ${HEADER_PATH}/BlendEquation
32    ${HEADER_PATH}/BlendFunc
33    ${HEADER_PATH}/BoundingBox
34    ${HEADER_PATH}/BoundingSphere
35    ${HEADER_PATH}/BoundsChecking
36    ${HEADER_PATH}/buffered_value
37    ${HEADER_PATH}/BufferObject
38    ${HEADER_PATH}/Camera
39    ${HEADER_PATH}/CameraNode
40    ${HEADER_PATH}/CameraView
41    ${HEADER_PATH}/ClampColor
42    ${HEADER_PATH}/ClearNode
43    ${HEADER_PATH}/ClipNode
44    ${HEADER_PATH}/ClipPlane
45    ${HEADER_PATH}/ClusterCullingCallback
46    ${HEADER_PATH}/CollectOccludersVisitor
47    ${HEADER_PATH}/ColorMask
48    ${HEADER_PATH}/ColorMatrix
49    ${HEADER_PATH}/ComputeBoundsVisitor
50    ${HEADER_PATH}/ConvexPlanarOccluder
51    ${HEADER_PATH}/ConvexPlanarPolygon
52    ${HEADER_PATH}/CoordinateSystemNode
53    ${HEADER_PATH}/CopyOp
54    ${HEADER_PATH}/CullFace
55    ${HEADER_PATH}/CullingSet
56    ${HEADER_PATH}/CullSettings
57    ${HEADER_PATH}/CullStack
58    ${HEADER_PATH}/DeleteHandler
59    ${HEADER_PATH}/Depth
60    ${HEADER_PATH}/DisplaySettings
61    ${HEADER_PATH}/Drawable
62    ${HEADER_PATH}/DrawPixels
63    ${HEADER_PATH}/Endian
64    ${HEADER_PATH}/Export
65    ${HEADER_PATH}/fast_back_stack
66    ${HEADER_PATH}/Fog
67    ${HEADER_PATH}/FragmentProgram
68    ${HEADER_PATH}/FrameBufferObject
69    ${HEADER_PATH}/FrameStamp
70    ${HEADER_PATH}/FrontFace
71    ${HEADER_PATH}/Geode
72    ${HEADER_PATH}/Geometry
73    ${HEADER_PATH}/GL
74    ${HEADER_PATH}/GL2Extensions
75    ${HEADER_PATH}/GLExtensions
76    ${HEADER_PATH}/GLObjects
77    ${HEADER_PATH}/GLU
78    ${HEADER_PATH}/GraphicsContext
79    ${HEADER_PATH}/GraphicsThread
80    ${HEADER_PATH}/Group
81    ${HEADER_PATH}/Hint
82    ${HEADER_PATH}/Image
83    ${HEADER_PATH}/ImageSequence
84    ${HEADER_PATH}/ImageStream
85    ${HEADER_PATH}/ImageUtils
86    ${HEADER_PATH}/io_utils
87    ${HEADER_PATH}/KdTree
88    ${HEADER_PATH}/Light
89    ${HEADER_PATH}/LightModel
90    ${HEADER_PATH}/LightSource
91    ${HEADER_PATH}/LineSegment
92    ${HEADER_PATH}/LineStipple
93    ${HEADER_PATH}/LineWidth
94    ${HEADER_PATH}/LOD
95    ${HEADER_PATH}/LogicOp
96    ${HEADER_PATH}/Material
97    ${HEADER_PATH}/Math
98    ${HEADER_PATH}/Matrix
99    ${HEADER_PATH}/Matrixd
100    ${HEADER_PATH}/Matrixf
101    ${HEADER_PATH}/MatrixTransform
102    ${HEADER_PATH}/MixinVector
103    ${HEADER_PATH}/Multisample
104    ${HEADER_PATH}/Node
105    ${HEADER_PATH}/NodeCallback
106    ${HEADER_PATH}/NodeTrackerCallback
107    ${HEADER_PATH}/NodeVisitor
108    ${HEADER_PATH}/Notify
109    ${HEADER_PATH}/Object
110    ${HEADER_PATH}/observer_ptr
111    ${HEADER_PATH}/OccluderNode
112    ${HEADER_PATH}/OcclusionQueryNode
113    ${HEADER_PATH}/OperationThread
114    ${HEADER_PATH}/PagedLOD
115    ${HEADER_PATH}/Plane
116    ${HEADER_PATH}/Point
117    ${HEADER_PATH}/PointSprite
118    ${HEADER_PATH}/PolygonMode
119    ${HEADER_PATH}/PolygonOffset
120    ${HEADER_PATH}/PolygonStipple
121    ${HEADER_PATH}/Polytope
122    ${HEADER_PATH}/PositionAttitudeTransform
123    ${HEADER_PATH}/PrimitiveSet
124    ${HEADER_PATH}/Program
125    ${HEADER_PATH}/Projection
126    ${HEADER_PATH}/ProxyNode
127    ${HEADER_PATH}/Quat
128    ${HEADER_PATH}/Referenced
129    ${HEADER_PATH}/ref_ptr
130    ${HEADER_PATH}/RenderInfo
131    ${HEADER_PATH}/Scissor
132    ${HEADER_PATH}/Sequence
133    ${HEADER_PATH}/ShadeModel
134    ${HEADER_PATH}/Shader
135    ${HEADER_PATH}/ShadowVolumeOccluder
136    ${HEADER_PATH}/Shape
137    ${HEADER_PATH}/ShapeDrawable
138    ${HEADER_PATH}/State
139    ${HEADER_PATH}/StateAttribute
140    ${HEADER_PATH}/StateSet
141    ${HEADER_PATH}/Stats
142    ${HEADER_PATH}/Stencil
143    ${HEADER_PATH}/StencilTwoSided
144    ${HEADER_PATH}/Switch
145    ${HEADER_PATH}/TemplatePrimitiveFunctor
146    ${HEADER_PATH}/TexEnv
147    ${HEADER_PATH}/TexEnvCombine
148    ${HEADER_PATH}/TexEnvFilter
149    ${HEADER_PATH}/TexGen
150    ${HEADER_PATH}/TexGenNode
151    ${HEADER_PATH}/TexMat
152    ${HEADER_PATH}/Texture
153    ${HEADER_PATH}/Texture1D
154    ${HEADER_PATH}/Texture2D
155    ${HEADER_PATH}/Texture2DArray
156    ${HEADER_PATH}/Texture3D
157    ${HEADER_PATH}/TextureCubeMap
158    ${HEADER_PATH}/TextureRectangle
159    ${HEADER_PATH}/Timer
160    ${HEADER_PATH}/TransferFunction
161    ${HEADER_PATH}/Transform
162    ${HEADER_PATH}/TriangleFunctor
163    ${HEADER_PATH}/TriangleIndexFunctor
164    ${HEADER_PATH}/Uniform
165    ${HEADER_PATH}/Vec2
166    ${HEADER_PATH}/Vec2b
167    ${HEADER_PATH}/Vec2d
168    ${HEADER_PATH}/Vec2f
169    ${HEADER_PATH}/Vec2s
170    ${HEADER_PATH}/Vec3
171    ${HEADER_PATH}/Vec3b
172    ${HEADER_PATH}/Vec3d
173    ${HEADER_PATH}/Vec3f
174    ${HEADER_PATH}/Vec3s
175    ${HEADER_PATH}/Vec4
176    ${HEADER_PATH}/Vec4b
177    ${HEADER_PATH}/Vec4d
178    ${HEADER_PATH}/Vec4f
179    ${HEADER_PATH}/Vec4s
180    ${HEADER_PATH}/Vec4ub
181    ${HEADER_PATH}/Version
182    ${HEADER_PATH}/VertexProgram
183    ${HEADER_PATH}/View
184    ${HEADER_PATH}/Viewport
185    ${OPENSCENEGRAPH_CONFIG_HEADER}
186)
187
188ADD_LIBRARY(${LIB_NAME}
189    ${OPENSCENEGRAPH_USER_DEFINED_DYNAMIC_OR_STATIC}
190    ${LIB_PUBLIC_HEADERS}
191    AlphaFunc.cpp
192    AnimationPath.cpp
193    ApplicationUsage.cpp
194    ArgumentParser.cpp
195    Array.cpp
196    AutoTransform.cpp
197    Billboard.cpp
198    BlendColor.cpp
199    BlendEquation.cpp
200    BlendFunc.cpp
201    BufferObject.cpp
202    Camera.cpp
203    CameraView.cpp
204    ClampColor.cpp
205    ClearNode.cpp
206    ClipNode.cpp
207    ClipPlane.cpp
208    ClusterCullingCallback.cpp
209    CollectOccludersVisitor.cpp
210    ColorMask.cpp
211    ColorMatrix.cpp
212    ComputeBoundsVisitor.cpp
213    ConvexPlanarOccluder.cpp
214    ConvexPlanarPolygon.cpp
215    CoordinateSystemNode.cpp
216    CopyOp.cpp
217    CullFace.cpp
218    CullingSet.cpp
219    CullSettings.cpp
220    CullStack.cpp
221    DeleteHandler.cpp
222    Depth.cpp
223    DisplaySettings.cpp
224    Drawable.cpp
225    DrawPixels.cpp
226    dxtctool.cpp
227    dxtctool.h
228    Fog.cpp
229    FragmentProgram.cpp
230    FrameBufferObject.cpp
231    FrameStamp.cpp
232    FrontFace.cpp
233    Geode.cpp
234    Geometry.cpp
235    GL2Extensions.cpp
236    GLExtensions.cpp
237    GLObjects.cpp
238    GraphicsContext.cpp
239    GraphicsThread.cpp
240    Group.cpp
241    Hint.cpp
242    Image.cpp
243    ImageSequence.cpp
244    ImageStream.cpp
245    ImageUtils.cpp
246    KdTree.cpp
247    Light.cpp
248    LightModel.cpp
249    LightSource.cpp
250    LineSegment.cpp
251    LineStipple.cpp
252    LineWidth.cpp
253    LOD.cpp
254    LogicOp.cpp
255    Material.cpp
256    Math.cpp
257    Matrixd.cpp
258    MatrixDecomposition.cpp
259    Matrixf.cpp
260    # We don't build this one
261    #    Matrix_implementation.cpp
262    MatrixTransform.cpp
263    Multisample.cpp
264    NodeCallback.cpp
265    Node.cpp
266    NodeTrackerCallback.cpp
267    NodeVisitor.cpp
268    Notify.cpp
269    Object.cpp
270    OccluderNode.cpp
271    OcclusionQueryNode.cpp
272    OperationThread.cpp
273    PagedLOD.cpp
274    Point.cpp
275    PointSprite.cpp
276    PolygonMode.cpp
277    PolygonOffset.cpp
278    PolygonStipple.cpp
279    PositionAttitudeTransform.cpp
280    PrimitiveSet.cpp
281    Program.cpp
282    Projection.cpp
283    ProxyNode.cpp
284    Quat.cpp
285    Referenced.cpp
286    Scissor.cpp
287    Sequence.cpp
288    ShadeModel.cpp
289    Shader.cpp
290    ShadowVolumeOccluder.cpp
291    Shape.cpp
292    ShapeDrawable.cpp
293    StateAttribute.cpp
294    State.cpp
295    StateSet.cpp
296    Stats.cpp
297    Stencil.cpp
298    StencilTwoSided.cpp
299    Switch.cpp
300    TexEnvCombine.cpp
301    TexEnv.cpp
302    TexEnvFilter.cpp
303    TexGen.cpp
304    TexGenNode.cpp
305    TexMat.cpp
306    Texture1D.cpp
307    Texture2DArray.cpp
308    Texture2D.cpp
309    Texture3D.cpp
310    Texture.cpp
311    TextureCubeMap.cpp
312    TextureRectangle.cpp
313    Timer.cpp
314    TransferFunction.cpp
315    Transform.cpp
316    Uniform.cpp
317    Version.cpp
318    VertexProgram.cpp
319    View.cpp
320    Viewport.cpp
321    ${OPENSCENEGRAPH_VERSIONINFO_RC}
322)
323
324LINK_INTERNAL(${LIB_NAME}     
325    OpenThreads
326)
327LINK_EXTERNAL(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT}    ${MATH_LIBRARY} )
328LINK_CORELIB_DEFAULT(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY} )
329
330INCLUDE(ModuleInstall OPTIONAL)
Note: See TracBrowser for help on using the browser.