1 ##############################################################################
6 ${CMAKE_CURRENT_SOURCE_DIR}
7 ${CMAKE_SOURCE_DIR}/helpers
8 ${CMAKE_BINARY_DIR}/dispatch
9 ${CMAKE_SOURCE_DIR}/dispatch
15 # Silence warnings about @nn suffix mismatch
16 set (CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--enable-stdcall-fixup")
20 if (DirectX_D3D_INCLUDE_DIR)
21 include_directories (SYSTEM ${DirectX_D3D_INCLUDE_DIR})
24 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/ddrawtrace.py > ${CMAKE_CURRENT_BINARY_DIR}/ddrawtrace.cpp
29 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
30 ${CMAKE_SOURCE_DIR}/specs/d3d.py
31 ${CMAKE_SOURCE_DIR}/specs/d3dtypes.py
32 ${CMAKE_SOURCE_DIR}/specs/d3dcaps.py
33 ${CMAKE_SOURCE_DIR}/specs/ddraw.py
34 ${CMAKE_SOURCE_DIR}/specs/winapi.py
35 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
37 add_library (ddrawtrace MODULE ddraw.def ddrawtrace.cpp)
38 target_link_libraries (ddrawtrace
43 set_target_properties (ddrawtrace PROPERTIES
47 install (TARGETS ddrawtrace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
51 if (DirectX_D3D8_INCLUDE_DIR AND DirectX_D3DX9_INCLUDE_DIR)
52 include_directories (SYSTEM ${DirectX_D3D8_INCLUDE_DIR} ${DirectX_D3DX9_INCLUDE_DIR})
55 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d8trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d8trace.cpp
60 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
61 ${CMAKE_SOURCE_DIR}/specs/d3d8.py
62 ${CMAKE_SOURCE_DIR}/specs/d3d8types.py
63 ${CMAKE_SOURCE_DIR}/specs/d3d8caps.py
64 ${CMAKE_SOURCE_DIR}/specs/winapi.py
65 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
67 add_library (d3d8trace MODULE d3d8.def d3d8trace.cpp d3d9shader.cpp)
68 target_link_libraries (d3d8trace
73 set_target_properties (d3d8trace PROPERTIES
77 install (TARGETS d3d8trace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
81 if (DirectX_D3DX9_INCLUDE_DIR)
82 include_directories (SYSTEM ${DirectX_D3DX9_INCLUDE_DIR})
85 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d9trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d9trace.cpp
90 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
91 ${CMAKE_SOURCE_DIR}/specs/d3d9.py
92 ${CMAKE_SOURCE_DIR}/specs/d3d9types.py
93 ${CMAKE_SOURCE_DIR}/specs/d3d9caps.py
94 ${CMAKE_SOURCE_DIR}/specs/winapi.py
95 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
97 add_library (d3d9trace MODULE d3d9.def d3d9trace.cpp d3d9shader.cpp)
98 target_link_libraries (d3d9trace
103 set_target_properties (d3d9trace PROPERTIES
107 install (TARGETS d3d9trace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
111 if (DirectX_D3D10_INCLUDE_DIR)
112 include_directories (SYSTEM ${DirectX_D3D10_INCLUDE_DIR})
114 OUTPUT d3d10trace.cpp
115 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d10trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d10trace.cpp
120 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
121 ${CMAKE_SOURCE_DIR}/specs/d3d10.py
122 ${CMAKE_SOURCE_DIR}/specs/d3d10misc.py
123 ${CMAKE_SOURCE_DIR}/specs/d3d10sdklayers.py
124 ${CMAKE_SOURCE_DIR}/specs/d3d10shader.py
125 ${CMAKE_SOURCE_DIR}/specs/d3d10effect.py
126 ${CMAKE_SOURCE_DIR}/specs/d3dcommon.py
127 ${CMAKE_SOURCE_DIR}/specs/dxgi.py
128 ${CMAKE_SOURCE_DIR}/specs/dxgitype.py
129 ${CMAKE_SOURCE_DIR}/specs/dxgiformat.py
130 ${CMAKE_SOURCE_DIR}/specs/winapi.py
131 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
133 add_library (d3d10trace MODULE d3d10.def d3d10trace.cpp d3d10shader.cpp)
134 target_link_libraries (d3d10trace
139 set_target_properties (d3d10trace PROPERTIES
143 install (TARGETS d3d10trace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
147 if (DirectX_D3D10_1_INCLUDE_DIR)
148 include_directories (SYSTEM ${DirectX_D3D10_1_INCLUDE_DIR})
150 OUTPUT d3d10_1trace.cpp
151 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d10_1trace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3d10_1trace.cpp
156 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
157 ${CMAKE_SOURCE_DIR}/specs/d3d10_1.py
158 ${CMAKE_SOURCE_DIR}/specs/d3d10.py
159 ${CMAKE_SOURCE_DIR}/specs/d3d10sdklayers.py
160 ${CMAKE_SOURCE_DIR}/specs/d3dcommon.py
161 ${CMAKE_SOURCE_DIR}/specs/dxgi.py
162 ${CMAKE_SOURCE_DIR}/specs/dxgitype.py
163 ${CMAKE_SOURCE_DIR}/specs/dxgiformat.py
164 ${CMAKE_SOURCE_DIR}/specs/winapi.py
165 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
167 add_library (d3d10_1trace MODULE d3d10_1.def d3d10_1trace.cpp)
168 target_link_libraries (d3d10_1trace
173 set_target_properties (d3d10_1trace
177 install (TARGETS d3d10_1trace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
181 if (DirectX_D3D11_INCLUDE_DIR)
182 if (DirectX_D3D11_1_INCLUDE_DIR)
188 include_directories (SYSTEM ${DirectX_D3D11_INCLUDE_DIR})
190 OUTPUT d3d11trace.cpp
191 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d11trace.py ${HAVE_D3D11_1} > ${CMAKE_CURRENT_BINARY_DIR}/d3d11trace.cpp
196 ${CMAKE_SOURCE_DIR}/specs/d3d11_1.py
197 ${CMAKE_SOURCE_DIR}/specs/d3d11.py
198 ${CMAKE_SOURCE_DIR}/specs/d3d11sdklayers.py
199 ${CMAKE_SOURCE_DIR}/specs/d3dcommon.py
200 ${CMAKE_SOURCE_DIR}/specs/dxgi.py
201 ${CMAKE_SOURCE_DIR}/specs/dxgitype.py
202 ${CMAKE_SOURCE_DIR}/specs/dxgiformat.py
203 ${CMAKE_SOURCE_DIR}/specs/winapi.py
204 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
206 add_library (d3d11trace MODULE d3d11.def d3d11trace.cpp)
207 target_link_libraries (d3d11trace
212 set_target_properties (d3d11trace
216 install (TARGETS d3d11trace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
222 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/wgltrace.py > ${CMAKE_CURRENT_BINARY_DIR}/wgltrace.cpp
227 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
228 ${CMAKE_SOURCE_DIR}/specs/wglapi.py
229 ${CMAKE_SOURCE_DIR}/specs/wglenum.py
230 ${CMAKE_SOURCE_DIR}/specs/glapi.py
231 ${CMAKE_SOURCE_DIR}/specs/glparams.py
232 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
233 ${CMAKE_SOURCE_DIR}/specs/winapi.py
234 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
236 add_library (wgltrace MODULE opengl32.def
241 add_dependencies (wgltrace glproc)
242 target_link_libraries (wgltrace
248 set_target_properties (wgltrace PROPERTIES
252 install (TARGETS wgltrace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
258 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/cgltrace.py > ${CMAKE_CURRENT_BINARY_DIR}/cgltrace.cpp
263 ${CMAKE_SOURCE_DIR}/specs/cglapi.py
264 ${CMAKE_SOURCE_DIR}/specs/glapi.py
265 ${CMAKE_SOURCE_DIR}/specs/glparams.py
266 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
267 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
270 add_library (cgltrace SHARED
276 add_dependencies (cgltrace glproc)
278 set_target_properties (cgltrace PROPERTIES
279 # OpenGL framework name
280 PREFIX "" OUTPUT_NAME "OpenGL" SUFFIX ""
281 # Specificy the version and reexport GLU symbols
282 LINK_FLAGS "-compatibility_version 1 -current_version 1.0.0 -Wl,-reexport_library,/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib"
285 target_link_libraries (cgltrace
290 ${CMAKE_THREAD_LIBS_INIT}
294 install (TARGETS cgltrace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
299 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glxtrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glxtrace.cpp
304 ${CMAKE_SOURCE_DIR}/specs/glxapi.py
305 ${CMAKE_SOURCE_DIR}/specs/glapi.py
306 ${CMAKE_SOURCE_DIR}/specs/glparams.py
307 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
308 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
311 add_library (glxtrace SHARED
317 add_dependencies (glxtrace glproc)
319 set_target_properties (glxtrace PROPERTIES
320 # avoid the default "lib" prefix
322 # Prevent symbol relocations internal to our wrapper library to be
323 # overwritten by the application.
324 LINK_FLAGS "-Wl,-Bsymbolic -Wl,-Bsymbolic-functions"
327 target_link_libraries (glxtrace
333 ${CMAKE_THREAD_LIBS_INIT}
337 install (TARGETS glxtrace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})
341 if (ENABLE_EGL AND NOT WIN32 AND NOT APPLE)
345 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/egltrace.py > ${CMAKE_CURRENT_BINARY_DIR}/egltrace.cpp
350 ${CMAKE_SOURCE_DIR}/specs/eglapi.py
351 ${CMAKE_SOURCE_DIR}/specs/glesapi.py
352 ${CMAKE_SOURCE_DIR}/specs/glapi.py
353 ${CMAKE_SOURCE_DIR}/specs/glparams.py
354 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
355 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
358 add_library (egltrace SHARED
364 add_dependencies (egltrace glproc)
366 set_target_properties (egltrace PROPERTIES
367 # avoid the default "lib" prefix
369 # Prevent symbol relocations internal to our wrapper library to be
370 # overwritten by the application.
371 LINK_FLAGS "-Wl,-Bsymbolic -Wl,-Bsymbolic-functions"
374 target_link_libraries (egltrace
379 ${CMAKE_THREAD_LIBS_INIT}
383 install (TARGETS egltrace LIBRARY DESTINATION ${WRAPPER_INSTALL_DIR})