CMakeLists.txt 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #
  2. # peTI-NESulator CMake
  3. #
  4. # Created by Manoel TRAPIER.
  5. # Copyright (c) 2003-2018 986Corp. All rights reserved.
  6. #
  7. # $LastChangedDate$
  8. # $Author$
  9. # $HeadURL$
  10. # $Revision$
  11. cmake_minimum_required (VERSION 2.8)
  12. project (peTI-NESulator)
  13. # External cmake modules
  14. set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/external/cmake ${CMAKE_MODULE_PATH})
  15. # Include GLFW
  16. set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
  17. set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
  18. set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
  19. add_subdirectory("external/glfw")
  20. find_package(OpenGL REQUIRED)
  21. include_directories(${OPENGL_INCLUDE_DIR})
  22. # Include PortAudio
  23. set(PA_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
  24. set(PA_BUILD_TESTS OFF CACHE BOOL "" FORCE)
  25. set(PA_ENABLE_DEBUG_OUTPUT OFF CACHE BOOL "" FORCE)
  26. add_subdirectory("external/portaudio")
  27. if (COVERALLS)
  28. enable_testing()
  29. endif (COVERALLS)
  30. # Generate version from Git Tag
  31. include(GetGitRevisionDescription)
  32. git_describe(VERSION --tags --dirty=-dirty)
  33. #parse the version information into pieces.
  34. string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${VERSION}")
  35. string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${VERSION}")
  36. string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_MICRO "${VERSION}")
  37. string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.[0-9]+-(.*)" "\\1" VERSION_SHA1 "${VERSION}")
  38. message("-- Building version ${VERSION}")
  39. add_compile_options(-DV_MAJOR=${VERSION_MAJOR})
  40. add_compile_options(-DV_MINOR=${VERSION_MINOR})
  41. add_compile_options(-DV_MICRO=${VERSION_MICRO})
  42. add_compile_options(-DV_TEXT="${VERSION_SHA1}")
  43. add_subdirectory (src)