CMakeLists.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. CMAKE_MINIMUM_REQUIRED (VERSION 2.8)
  2. PROJECT (TTTT CXX)
  3. # Declare semantic versioning for FILVAL
  4. SET(FILVAL_VERSION_MAJOR 0)
  5. SET(FILVAL_VERSION_MINOR 1)
  6. SET(FILVAL_VERSION_PATCH 0)
  7. CONFIGURE_FILE (
  8. "${PROJECT_SOURCE_DIR}/filval/filval.hpp"
  9. "${PROJECT_BINARY_DIR}/filval/filval.hpp"
  10. )
  11. SET( TTTT_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} )
  12. SET( TTTT_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR} )
  13. # Setup clang as the project compiler
  14. SET (CMAKE_CXX_COMPILER "/usr/bin/clang++")
  15. SET (CMAKE_CXX_FLAGS "-Wall")
  16. SET (CMAKE_CXX_FLAGS_DEBUG "-g")
  17. SET (CMAKE_CXX_FLAGS_MINSIZEREL "-Os -DNDEBUG")
  18. SET (CMAKE_CXX_FLAGS_RELEASE "-O4 -DNDEBUG")
  19. SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
  20. SET (CMAKE_AR "/usr/bin/llvm-ar")
  21. SET (CMAKE_LINKER "/usr/bin/llvm-ld")
  22. SET (CMAKE_NM "/usr/bin/llvm-nm")
  23. SET (CMAKE_OBJDUMP "/usr/bin/llvm-objdump")
  24. SET (CMAKE_RANLIB "/usr/bin/llvm-ranlib")
  25. LIST( APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake )
  26. # add a target to generate API documentation with Doxygen
  27. FIND_PACKAGE(Doxygen)
  28. IF(DOXYGEN_FOUND)
  29. CONFIGURE_FILE(
  30. ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in
  31. ${CMAKE_CURRENT_BINARY_DIR}/docs/Doxyfile @ONLY
  32. )
  33. ADD_CUSTOM_TARGET(docs
  34. ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/docs/Doxyfile
  35. WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/docs
  36. COMMENT "Generating API documentation with Doxygen" VERBATIM
  37. )
  38. ENDIF(DOXYGEN_FOUND)
  39. FIND_PACKAGE(ROOT REQUIRED)
  40. INCLUDE_DIRECTORIES(SYSTEM ${ROOT_INCLUDE_DIR})
  41. LINK_LIBRARIES(${ROOT_LIBRARIES})
  42. ADD_EXECUTABLE(main TTTT_Analysis.cpp)