CMakeLists.txt 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. cmake_minimum_required(VERSION 2.6)
  2. project(citra)
  3. SET(GCC_COMPILE_FLAGS "-std=c++11 -fpermissive")
  4. # silence some spam
  5. add_definitions(-Wno-attributes)
  6. add_definitions(-DSINGLETHREADED)
  7. add_definitions(${GCC_COMPILE_FLAGS})
  8. # dependency checking
  9. set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_SOURCE_DIR}/CMakeTests)
  10. include(FindOpenGL REQUIRED)
  11. include(FindX11 REQUIRED)
  12. find_package(PkgConfig REQUIRED)
  13. pkg_search_module(GLFW REQUIRED glfw3)
  14. include_directories(${GLFW_INCLUDE_DIRS})
  15. option(DISABLE_QT4 "Disable Qt4 GUI" OFF)
  16. if(NOT DISABLE_QT4)
  17. include(FindQt4)
  18. find_package(Qt4 COMPONENTS QtCore QtGui QtOpenGL)
  19. if(QT4_FOUND AND QT_QTCORE_FOUND AND QT_QTGUI_FOUND AND QT_QTOPENGL_FOUND)
  20. include(${QT_USE_FILE})
  21. include_directories(${QT_INCLUDES})
  22. include_directories(externals/qhexedit)
  23. else()
  24. message("Qt4 libraries not found! Disabling Qt4 GUI")
  25. endif()
  26. endif()
  27. # generate git revision information
  28. list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modules/")
  29. include(GetGitRevisionDescription)
  30. get_git_head_revision(GIT_REF_SPEC GIT_REV)
  31. git_describe(GIT_DESC --always --long --dirty)
  32. git_branch_name(GIT_BRANCH)
  33. # external includes
  34. include_directories(${OPENGL_INCLUDE_DIR})
  35. # internal includes
  36. include_directories(src)
  37. # process subdirectories
  38. if(QT4_FOUND AND QT_QTCORE_FOUND AND QT_QTGUI_FOUND AND QT_QTOPENGL_FOUND AND NOT DISABLE_QT4)
  39. add_subdirectory(externals/qhexedit)
  40. endif()
  41. add_subdirectory(src)