1 ##############################################################################
5 ${CMAKE_CURRENT_SOURCE_DIR}
6 ${CMAKE_SOURCE_DIR}/helpers
7 ${CMAKE_BINARY_DIR}/dispatch
8 ${CMAKE_SOURCE_DIR}/dispatch
11 add_definitions (-DRETRACE)
14 OUTPUT glretrace_gl.cpp
15 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glretrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace_gl.cpp
19 ${CMAKE_SOURCE_DIR}/specs/glapi.py
20 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
21 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
25 OUTPUT glstate_params.cpp
26 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glstate_params.py > ${CMAKE_CURRENT_BINARY_DIR}/glstate_params.cpp
29 ${CMAKE_SOURCE_DIR}/specs/glparams.py
30 ${CMAKE_SOURCE_DIR}/specs/gltypes.py
31 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
34 add_library (retrace_common
41 target_link_libraries (retrace_common
48 add_library (glretrace_common
63 add_dependencies (glretrace_common glproc)
66 if (WIN32 OR APPLE OR X11_FOUND)
67 add_executable (glretrace
71 add_dependencies (glretrace glproc)
73 target_link_libraries (glretrace
82 target_link_libraries (glretrace
84 "-framework ApplicationServices" # CGS*
85 #"-framework OpenGL" # CGL*
88 target_link_libraries (glretrace ${X11_X11_LIB})
91 target_link_libraries (glretrace
92 # gdb doesn't like when pthreads is loaded through dlopen (which happens
93 # when dlopen'ing libGL), so link pthreads to avoid this issue. See also
94 # http://stackoverflow.com/questions/2702628/gdb-cannot-find-new-threads-generic-error
95 ${CMAKE_THREAD_LIBS_INIT}
99 if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
100 target_link_libraries (glretrace rt)
105 install (TARGETS glretrace RUNTIME DESTINATION bin)
108 if (ENABLE_EGL AND X11_FOUND AND NOT WIN32 AND NOT APPLE)
109 add_executable (eglretrace
113 add_dependencies (eglretrace glproc)
115 target_link_libraries (eglretrace
120 ${CMAKE_THREAD_LIBS_INIT}
124 if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
125 target_link_libraries (eglretrace rt)
128 install (TARGETS eglretrace RUNTIME DESTINATION bin)
131 if (WIN32 AND DirectX_D3DX9_INCLUDE_DIR)
132 include_directories (SYSTEM ${DirectX_D3DX9_INCLUDE_DIR})
134 OUTPUT d3dretrace_d3d9.cpp
135 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3d9retrace.py > ${CMAKE_CURRENT_BINARY_DIR}/d3dretrace_d3d9.cpp
140 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
141 ${CMAKE_SOURCE_DIR}/specs/d3d9.py
142 ${CMAKE_SOURCE_DIR}/specs/d3d9types.py
143 ${CMAKE_SOURCE_DIR}/specs/d3d9caps.py
144 ${CMAKE_SOURCE_DIR}/specs/winapi.py
145 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
148 if (DirectX_D3D10_INCLUDE_DIR)
149 include_directories (SYSTEM ${DirectX_D3D10_INCLUDE_DIR})
151 if (DirectX_D3D10_1_INCLUDE_DIR)
152 include_directories (SYSTEM ${DirectX_D3D10_1_INCLUDE_DIR})
153 set (MODULES ${MODULES} d3d10_1)
157 if (DirectX_D3D11_INCLUDE_DIR)
158 include_directories (SYSTEM ${DirectX_D3D11_INCLUDE_DIR})
159 set (MODULES ${MODULES} d3d11)
160 if (DirectX_D3D11_1_INCLUDE_DIR)
161 include_directories (SYSTEM ${DirectX_D3D11_1_INCLUDE_DIR})
162 set (MODULES ${MODULES} d3d11_1)
167 OUTPUT d3dretrace_d3d10.cpp
168 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/d3dcommonretrace.py ${MODULES} > ${CMAKE_CURRENT_BINARY_DIR}/d3dretrace_d3d10.cpp
173 ${CMAKE_SOURCE_DIR}/dispatch/dispatch.py
174 ${CMAKE_SOURCE_DIR}/specs/d3d11_1.py
175 ${CMAKE_SOURCE_DIR}/specs/d3d11.py
176 ${CMAKE_SOURCE_DIR}/specs/d3d11sdklayers.py
177 ${CMAKE_SOURCE_DIR}/specs/d3d10_1.py
178 ${CMAKE_SOURCE_DIR}/specs/d3d10.py
179 ${CMAKE_SOURCE_DIR}/specs/d3d10misc.py
180 ${CMAKE_SOURCE_DIR}/specs/d3d10sdklayers.py
181 ${CMAKE_SOURCE_DIR}/specs/d3d10shader.py
182 ${CMAKE_SOURCE_DIR}/specs/d3d10effect.py
183 ${CMAKE_SOURCE_DIR}/specs/d3dcommon.py
184 ${CMAKE_SOURCE_DIR}/specs/dxgi.py
185 ${CMAKE_SOURCE_DIR}/specs/dxgitype.py
186 ${CMAKE_SOURCE_DIR}/specs/dxgiformat.py
187 ${CMAKE_SOURCE_DIR}/specs/winapi.py
188 ${CMAKE_SOURCE_DIR}/specs/stdapi.py
191 add_executable (d3dretrace
199 target_link_libraries (d3dretrace
203 install (TARGETS d3dretrace RUNTIME DESTINATION bin)