]> git.cworth.org Git - vogl/blob - src/vogleditor/CMakeLists.txt
Default QTDIR to /usr/local/Trolltech/Qt-4.8.5 if not set.
[vogl] / src / vogleditor / CMakeLists.txt
1 project(vogleditor)
2 cmake_minimum_required(VERSION 2.8.9)
3
4 include("${SRC_DIR}/build_options.cmake")
5
6 if (NOT DEFINED ENV{QTDIR})
7 set(ENV{QTDIR} /usr/local/Trolltech/Qt-4.8.5)
8 endif()
9 find_package(Qt4 REQUIRED)
10
11 find_package(Threads REQUIRED)
12 find_package(X11 REQUIRED)
13
14 include_directories(
15     ${SRC_DIR}
16     ${SRC_DIR}/voglcore
17     ${SRC_DIR}/voglcommon
18     ${SRC_DIR}/voglinc
19     ${SRC_DIR}/extlib/loki/include/loki
20     ${SRC_DIR}/libtelemetry
21     ${CMAKE_CURRENT_BINARY_DIR}
22     ${QT_INCLUDE_DIR}
23     ${QT_QTCORE_INCLUDE_DIR}
24     ${QT_QTGUI_INCLUDE_DIR}
25 )
26
27 #include(${QT_USE_FILE})
28
29 ## uncomment these to enable additional Qt modules
30 # set(QT_USE_QTNETWORK true)
31 # set(QT_USE_QTOPENGL true)
32 # set(QT_USE_QTSQL true)
33 # set(QT_USE_QTXML true)
34 # set(QT_USE_QTSVG true)
35 # set(QT_USE_QTTEST true)
36 # set(QT_USE_QTDBUS true)
37 # set(QT_USE_QTSCRIPT true)
38 # set(QT_USE_QTWEBKIT true)
39 # set(QT_USE_QTXMLPATTERNS true)
40 # set(QT_USE_PHONON true)
41
42 set(SRC_LIST
43     main.cpp
44     vogleditor.cpp
45     vogleditor_apicalltreeitem.cpp
46     vogleditor_apicalltimelinemodel.cpp
47     vogleditor_gl_state_snapshot.cpp
48     vogleditor_qapicalltreemodel.cpp
49     vogleditor_qframebufferexplorer.cpp
50     vogleditor_qprogramexplorer.cpp
51     vogleditor_qshaderexplorer.cpp
52     vogleditor_qstatetreemodel.cpp
53     vogleditor_qtextureexplorer.cpp
54     vogleditor_qtextureviewer.cpp
55     vogleditor_qtimelineview.cpp
56     vogleditor_statetreearbprogramitem.cpp
57     vogleditor_statetreearbprogramenvitem.cpp
58     vogleditor_statetreebufferitem.cpp
59     vogleditor_statetreecontextgeneralitem.cpp
60     vogleditor_statetreecontextinfoitem.cpp
61     vogleditor_statetreecontextitem.cpp
62     vogleditor_statetreedisplaylistitem.cpp
63     vogleditor_statetreeframebufferitem.cpp
64     vogleditor_statetreeitem.cpp
65     vogleditor_statetreelightitem.cpp
66     vogleditor_statetreematrixitem.cpp
67     vogleditor_statetreepolygonstippleitem.cpp
68     vogleditor_statetreeprogramitem.cpp
69     vogleditor_statetreequeryitem.cpp
70     vogleditor_statetreerenderbufferitem.cpp
71     vogleditor_statetreesampleritem.cpp
72     vogleditor_statetreeshaderitem.cpp
73     vogleditor_statetreesyncitem.cpp
74     vogleditor_statetreetexenvitem.cpp
75     vogleditor_statetreetextureitem.cpp
76     vogleditor_statetreevertexarrayitem.cpp
77     vogleditor_timelineitem.cpp
78     vogleditor_timelinemodel.cpp
79     vogleditor_tracereplayer.cpp
80    )
81
82 # This should only contain headers that define a QOBJECT
83 # Typically that means just headers for UI objects
84 set(UI_HEADER_LIST
85     vogleditor.h
86     vogleditor_qapicalltreemodel.h
87     vogleditor_qframebufferexplorer.h
88     vogleditor_qprogramexplorer.h
89     vogleditor_qshaderexplorer.h
90     vogleditor_qstatetreemodel.h
91     vogleditor_qtextureviewer.h
92     vogleditor_qtextureexplorer.h
93     vogleditor_qtimelineview.h
94    )
95
96 # these are for non-QOBJECT headers
97 set(HEADER_LIST
98     vogleditor.h
99     vogleditor_apicallitem.h
100     vogleditor_apicalltimelinemodel.h
101     vogleditor_apicalltreeitem.h
102     vogleditor_frameitem.h
103     vogleditor_gl_state_snapshot.h
104     vogleditor_snapshotitem.h
105     vogleditor_statetreearbprogramitem.h
106     vogleditor_statetreearbprogramenvitem.h
107     vogleditor_statetreebufferitem.h
108     vogleditor_statetreecontextgeneralitem.h
109     vogleditor_statetreecontextinfoitem.h
110     vogleditor_statetreecontextitem.h
111     vogleditor_statetreedisplaylistitem.h
112     vogleditor_statetreeitem.h
113     vogleditor_statetreelightitem.h
114     vogleditor_statetreematrixitem.h
115     vogleditor_statetreepolygonstippleitem.h
116     vogleditor_statetreeprogramitem.h
117     vogleditor_statetreequeryitem.h
118     vogleditor_statetreerenderbufferitem.h
119     vogleditor_statetreesampleritem.h
120     vogleditor_statetreeshaderitem.h
121     vogleditor_statetreesyncitem.h
122     vogleditor_statetreetexenvitem.h
123     vogleditor_statetreetextureitem.h
124     vogleditor_statetreevertexarrayitem.h
125     vogleditor_statetreeframebufferitem.h
126     vogleditor_timelineitem.h
127     vogleditor_timelinemodel.h
128     vogleditor_tracereplayer.h
129    )
130
131 set(FORM_LIST
132     vogleditor.ui
133     vogleditor_qframebufferexplorer.ui
134     vogleditor_qprogramexplorer.ui
135     vogleditor_qshaderexplorer.ui
136     vogleditor_qtextureexplorer.ui
137    )
138
139 set(RESOURCE_LIST
140    )
141
142 QT4_WRAP_CPP(QT_GEN_HEADER_MOC_LIST ${UI_HEADER_LIST})
143 QT4_WRAP_UI(QT_GEN_FORM_HEADER_LIST ${FORM_LIST})
144 QT4_ADD_RESOURCES(QT_GEN_RESOURCE_RCC_LIST ${RESOURCE_LIST})
145
146 #add_definitions(${QT_DEFINITIONS})
147
148 add_executable(${PROJECT_NAME} ${SRC_LIST} ${HEADER_LIST}
149         ${QT_GEN_HEADER_MOC_LIST}
150         ${QT_GEN_FORM_HEADER_LIST}
151         ${QT_GEN_RESOURCE_RCC_LIST}
152    )
153
154 target_link_libraries(${PROJECT_NAME}
155         ${QT_QTMAIN_LIBRARY} 
156         ${QT_QTCORE_LIBRARY} 
157         ${QT_QTGUI_LIBRARY} 
158         ${TELEMETRY_LIBRARY}
159         ${X11_X11_LIB}
160         backtrace
161         voglcommon
162     voglcore
163     ${CMAKE_DL_LIBS}
164    )
165
166 build_options_finalize()