X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;ds=sidebyside;f=CMakeLists.txt;h=19ef467f9f8ecfb911b9d91b66924bd378be68fb;hb=448d423ce3dc6eea8af166b366687c24825b6e2b;hp=d90f029cfb92c4b90b6f75e4ba36504dea9476ae;hpb=38544c29cc95d78cbcaba7c7bb8d02a125ffd3c4;p=apitrace diff --git a/CMakeLists.txt b/CMakeLists.txt index d90f029..19ef467 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -24,18 +24,20 @@ if (NOT WIN32) # to deploy the wrappers DLLs find_package (ZLIB) find_package (PNG) + find_package (X11 REQUIRED) else (NOT WIN32) find_package (DirectX) endif (NOT WIN32) -find_package (GLUT) - if (WIN32) # MSVC & MinGW only define & use APIENTRY add_definitions (-DGLAPIENTRY=__stdcall) endif (WIN32) if (MSVC) + # C99 includes for msvc + include_directories (msvc) + # Enable math constants defines add_definitions (-D_USE_MATH_DEFINES) @@ -179,6 +181,7 @@ if (WIN32) endif (MINGW) else () + include_directories (${X11_INCLUDE_DIR}) # libGL.so add_custom_command ( @@ -188,17 +191,20 @@ else () ) add_library (glxtrace SHARED glxtrace.cpp trace_write.cpp os_posix.cpp ${CMAKE_CURRENT_BINARY_DIR}/glproc.hpp) - set_target_properties (glxtrace PROPERTIES - COMPILER_DEFINITIONS "-DRETRACE" + + set_target_properties (glxtrace PROPERTIES PREFIX "" ) + target_link_libraries (glxtrace dl) endif () if (WIN32) set (os os_win32.cpp) + set (glws glws_wgl.cpp) else (WIN32) set (os os_posix.cpp) + set (glws glws_glx.cpp) endif (WIN32) add_library (trace trace_model.cpp trace_parser.cpp ${os}) @@ -206,39 +212,49 @@ add_library (trace trace_model.cpp trace_parser.cpp ${os}) add_executable (dump dump.cpp) target_link_libraries (dump trace) -if (GLUT_INCLUDE_DIR) - add_custom_command ( - OUTPUT glretrace.cpp - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glretrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace.cpp - DEPENDS glretrace.py retrace.py codegen.py glapi.py glenum.py stdapi.py - ) +add_custom_command ( + OUTPUT glretrace_gl.cpp + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glretrace.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace_gl.cpp + DEPENDS glretrace.py retrace.py codegen.py glapi.py glenum.py stdapi.py +) - add_custom_command ( - OUTPUT glstate.cpp - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glstate.py > ${CMAKE_CURRENT_BINARY_DIR}/glstate.cpp - DEPENDS glstate.py glenum.py stdapi.py - ) +add_custom_command ( + OUTPUT glretrace_state.cpp + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/glstate.py > ${CMAKE_CURRENT_BINARY_DIR}/glretrace_state.cpp + DEPENDS glstate.py glapi.py glenum.py stdapi.py +) - include_directories ( - ${CMAKE_CURRENT_BINARY_DIR} - ${OPENGL_INCLUDE_PATH} - ${GLUT_INCLUDE_DIR} - ) +include_directories ( + ${CMAKE_CURRENT_BINARY_DIR} + ${OPENGL_INCLUDE_PATH} +) - add_executable (glretrace - glretrace.cpp - glstate.cpp - image.cpp - ${CMAKE_CURRENT_BINARY_DIR}/glproc.hpp - ) +add_executable (glretrace + glretrace_gl.cpp + glretrace_main.cpp + glretrace_state.cpp + retrace.cpp + ${glws} + image.cpp + ${CMAKE_CURRENT_BINARY_DIR}/glproc.hpp +) - target_link_libraries (glretrace - trace - ${OPENGL_gl_LIBRARY} - ${OPENGL_glu_LIBRARY} - ${GLUT_glut_LIBRARY} - ) -endif (GLUT_INCLUDE_DIR) +set_property ( + TARGET glretrace + APPEND + PROPERTY COMPILE_DEFINITIONS "RETRACE" +) + +target_link_libraries (glretrace + trace + ${OPENGL_gl_LIBRARY} + ${OPENGL_glu_LIBRARY} + ${X11_LIBRARIES} +) + +if (NOT WIN32) + target_link_libraries (glretrace ${X11_LIBRARIES}) +endif (NOT WIN32) if (QT4_FOUND AND QJSON_FOUND) add_subdirectory(gui)