CMakeLists.txt 7.49 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
#
# This file is part of the ViTE project.
#
# This software is governed by the CeCILL-A license under French law
# and abiding by the rules of distribution of free software. You can
# use, modify and/or redistribute the software under the terms of the
# CeCILL-A license as circulated by CEA, CNRS and INRIA at the following
# URL: "http://www.cecill.info".
#
# As a counterpart to the access to the source code and rights to copy,
# modify and redistribute granted by the license, users are provided
# only with a limited warranty and the software's author, the holder of
# the economic rights, and the successive licensors have only limited
# liability.
#
# In this respect, the user's attention is drawn to the risks associated
# with loading, using, modifying and/or developing or reproducing the
# software by the user in light of its specific status of free software,
# that may mean that it is complicated to manipulate, and that also
# therefore means that it is reserved for developers and experienced
# professionals having in-depth computer knowledge. Users are therefore
# encouraged to load and test the software's suitability as regards
# their requirements in conditions enabling the security of their
# systems and/or data to be ensured and, more generally, to use and
# operate it in the same conditions as regards security.
#
# The fact that you are presently reading this means that you have had
# knowledge of the CeCILL-A license and that you accept its terms.
#
# ViTE developers are (for version 0.* to 1.0):
#
#        - COULOMB Kevin
#        - FAVERGE Mathieu
#        - JAZEIX Johnny
#        - LAGRASSE Olivier
#        - MARCOUEILLE Jule
#        - NOISETTE Pascal
#        - REDONDY Arthur
#        - VUCHENER Clment
#        - (RICHART Nicolas)
#
#

SET(VITE_HDRS
  common/common.hpp
  common/Message.hpp
  common/Errors.hpp
  common/Tools.hpp
49
  common/Info.hpp
50
  common/Session.hpp
51 52
  common/trace.h
  common/Memory.hpp
53
  general/qtcolorpicker/src/qtcolorpicker.h
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
  # Data structure headers
  trace/values/Color.hpp
  trace/values/Date.hpp
  trace/values/Double.hpp
  trace/values/Hex.hpp
  trace/values/Integer.hpp
  trace/values/Name.hpp
  trace/values/String.hpp
  trace/values/Value.hpp
  trace/values/Values.hpp
  trace/tree/BinaryTree.hpp
  trace/tree/Node.hpp
  trace/tree/Interval.hpp
  trace/ContainerType.hpp
  trace/EntityType.hpp
  trace/EventType.hpp
  trace/StateType.hpp
  trace/LinkType.hpp
  trace/VariableType.hpp
  trace/EntityTypes.hpp
  trace/EntityValue.hpp
  trace/Container.hpp
  trace/Entity.hpp
  trace/Event.hpp
  trace/State.hpp
  trace/StateChange.hpp
  trace/Link.hpp
  trace/Entitys.hpp
  trace/Variable.hpp
  trace/DrawTrace.hpp
  trace/DrawTree.hpp
  trace/Trace.hpp
  # Render headers
87
  render/Palette.hpp
Olivier Lagrasse's avatar
Olivier Lagrasse committed
88
  render/Render.hpp
89
  render/Geometry.hpp
90
  render/Hook_event.hpp
91
  render/Minimap.hpp
92
  render/Render_opengl.hpp
Olivier Lagrasse's avatar
Olivier Lagrasse committed
93
  render/Render_svg.hpp
94 95 96
  render/render_stats.hpp
  render/render_stats_opengl.hpp
  render/render_stats_svg.hpp
97
  render/Ruler.hpp
98 99
  # Interface headers
  interface/resource.hpp
100
  interface/Interface.hpp
101
  interface/Settings_window.hpp
102 103 104
  interface/Interface_graphic.hpp
  # Core header
  core/Core.hpp
105
  # Parser headers
106
  parser/ParsingThread.hpp
107
  parser/Parser.hpp
108 109 110 111
  parser/ParserFactory.hpp
  # Paje 
  parser/PajeDefinition.hpp
  parser/PajeFileManager.hpp
112 113 114
  parser/ParserDefinitionPaje.hpp
  parser/ParserEventPaje.hpp
  parser/ParserPaje.hpp
115
#  parser/ParserVite.hpp
116 117 118 119 120 121 122
  # Statistics headers
  statistics/Stats_window.hpp
  statistics/Statistic.hpp
  statistics/DrawStats.hpp
  statistics/DrawVDiagram.hpp
  statistics/DrawHDiagram.hpp
  statistics/DrawCounter.hpp
123 124
  # Plugin header
  plugin/Command_window.hpp
125 126
  plugin/Plugin_window.hpp
  plugin/Plugin.hpp
127 128 129 130
)

SET(VITE_UIS
  interface/info_window.ui
131
  interface/settings.ui
132 133 134
  interface/main_window.ui
  interface/option_export_window.ui
  interface/stats_viewer.ui
135
  interface/global_cmd.ui
Mathieu Faverge's avatar
Mathieu Faverge committed
136
  interface/list_of_counter_to_export.ui
137 138 139 140 141 142 143
)

SET(VITE_SRCS
  # Messages & Errors 
  common/Message.cpp
  common/Errors.cpp
  common/Tools.cpp
144
  common/Info.cpp
145
  common/Session.cpp
146
  common/Memory.cpp
147
  general/qtcolorpicker/src/qtcolorpicker.cpp
148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
  # Data structure code files
  trace/values/Color.cpp
  trace/values/Date.cpp
  trace/values/Double.cpp
  trace/values/Hex.cpp
  trace/values/Integer.cpp
  trace/values/Name.cpp
  trace/values/String.cpp
  trace/tree/Interval.cpp
  trace/EntityValue.cpp
  trace/ContainerType.cpp
  trace/EntityType.cpp
  trace/EventType.cpp
  trace/StateType.cpp
  trace/LinkType.cpp
  trace/VariableType.cpp
  trace/Entity.cpp
  trace/Event.cpp
  trace/State.cpp
  trace/StateChange.cpp
  trace/Link.cpp
  trace/Variable.cpp
  trace/Container.cpp
  trace/Trace.cpp
  # Render code files
173
  render/Palette.cpp
174
  render/Geometry.cpp
175
  render/Hook_event.cpp
Olivier Lagrasse's avatar
Olivier Lagrasse committed
176
  render/Render.hpp
177
  render/Minimap.cpp
178
  render/Render_opengl.cpp
Olivier Lagrasse's avatar
Olivier Lagrasse committed
179
  render/Render_svg.cpp
180 181
  render/render_stats_opengl.cpp
  render/render_stats_svg.cpp
182
  render/Ruler.cpp
183
  # Parser code files
184 185 186 187 188 189
  parser/Parser.cpp
  parser/ParserFactory.cpp
  parser/ParsingThread.cpp
  # Paje Parser
  parser/PajeDefinition.cpp
  parser/PajeFileManager.cpp
190 191 192
  parser/ParserDefinitionPaje.cpp
  parser/ParserEventPaje.cpp
  parser/ParserPaje.cpp
193
#  parser/ParserVite.cpp
194 195 196 197
  # Statistics code files
  statistics/Statistic.cpp
  statistics/Stats_window.cpp
  # Interface code files
198
  interface/Settings_window.cpp
199
  interface/Interface_graphic.cpp
200 201
  # Plugin code file
  plugin/Command_window.cpp
202 203 204
  plugin/Plugin_window.cpp
  plugin/Plugin.cpp
  # Core code files
205
  core/Core.cpp
206 207 208 209 210 211 212 213
  # Main
  main.cpp
  )

SET(VITE_RCCS
  interface/vite.qrc
  )

214 215 216 217 218 219
IF(VITE_ENABLE_VBO)
  ADD_DEFINITIONS(-DWITH_VBO)

  SET(VITE_HDRS
    ${VITE_HDRS}
    render/vbo.hpp
220
    render/Render_alternate.hpp
221 222 223 224 225
    )

  SET(VITE_SRCS
    ${VITE_SRCS}
    render/vbo.cpp
226
    render/Render_alternate.cpp
227 228 229 230
    )  
ENDIF(VITE_ENABLE_VBO)


231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252

IF(VITE_ENABLE_OTF)
  ADD_DEFINITIONS(-DWITH_OTF)

  SET(VITE_HDRS
    ${VITE_HDRS}
    parser/ParserDefinitionOTF.hpp
    parser/ParserEventOTF.hpp
    parser/ParserOTF.hpp
    )

  SET(VITE_SRCS
    ${VITE_SRCS}
    parser/ParserDefinitionOTF.cpp
    parser/ParserEventOTF.cpp
    parser/ParserOTF.cpp
    )

  INCLUDE_DIRECTORIES(${OTF_INCLUDE_DIR})

ENDIF(VITE_ENABLE_OTF)

253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272
IF(VITE_ENABLE_TAU)
  ADD_DEFINITIONS(-DWITH_TAU)

  SET(VITE_HDRS
    ${VITE_HDRS}
    parser/ParserTau.hpp
    parser/TauStructs.hpp
    )

  SET(VITE_SRCS
    ${VITE_SRCS}
    parser/ParserTau.cpp
    )

  INCLUDE_DIRECTORIES(${TAU_INCLUDE_DIR})

ENDIF(VITE_ENABLE_TAU)

#ADD_DEFINITIONS(-DMEMORY_USAGE)
#ADD_DEFINITIONS(-DMEMORY_TRACE)
273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297

QT4_AUTOMOC(${VITE_SRCS})
FOREACH(_hdrs_file ${VITE_HDRS})
  GET_FILENAME_COMPONENT(_abs_file ${_hdrs_file} ABSOLUTE)
  FILE(READ ${_abs_file} _contents)
  STRING(REGEX MATCHALL "Q_OBJECT" _match "${_contents}")
  IF(_match)
    SET(VITE_MOC_HDRS ${VITE_MOC_HDRS} ${_hdrs_file})
  ENDIF(_match)
ENDFOREACH(_hdrs_file ${VITE_HDRS})

QT4_WRAP_UI(VITE_UIS_H ${VITE_UIS})
QT4_WRAP_CPP(VITE_MOC ${VITE_UIS_H} ${VITE_MOC_HDRS})
QT4_ADD_RESOURCES(VITE_RCC_SRCS ${VITE_RCCS})

ADD_DEFINITIONS(-DQT_NO_DEBUG)

INCLUDE_DIRECTORIES(
  ${CMAKE_CURRENT_BINARY_DIR}
  ${CMAKE_CURRENT_SOURCE_DIR}
)

ADD_EXECUTABLE(vite ${VITE_SRCS} ${VITE_MOC} ${VITE_RCC_SRCS})
TARGET_LINK_LIBRARIES(vite
  ${QT_LIBRARIES}
298
#  ${GLUT_LIBRARIES}
299 300
  )

301 302 303 304 305 306
IF(VITE_ENABLE_VBO)
  TARGET_LINK_LIBRARIES(vite
    ${GLEW_LIBRARY}
    )
ENDIF(VITE_ENABLE_VBO)

307 308 309 310 311 312
IF(VITE_ENABLE_OTF)
  TARGET_LINK_LIBRARIES(vite
    ${OTF_LIBRARY}
    )
ENDIF(VITE_ENABLE_OTF)

313 314 315 316 317 318
IF(VITE_ENABLE_TAU)
  TARGET_LINK_LIBRARIES(vite
    ${TAU_LIBRARY}
    )
ENDIF(VITE_ENABLE_TAU)

319
INSTALL_TARGETS(/bin vite)