CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. #
  2. # peTI-NESulator CMake
  3. #
  4. # Created by Manoel TRAPIER.
  5. # Copyright (c) 2002-2019 986-Studio.
  6. #
  7. cmake_minimum_required (VERSION 3.1)
  8. project (peTI-NESulator)
  9. # External cmake modules
  10. set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/external/cmake ${CMAKE_MODULE_PATH})
  11. if (USE_GLFW)
  12. message("Coucou ${USE_GLFW}")
  13. # Include GLFW
  14. set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
  15. set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
  16. set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
  17. add_subdirectory("external/glfw")
  18. find_package(OpenGL REQUIRED)
  19. include_directories(${OPENGL_INCLUDE_DIR})
  20. endif (USE_GLFW)
  21. if (USE_PORTAUDIO)
  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. endif (USE_PORTAUDIO)
  28. if (COVERALLS)
  29. enable_testing()
  30. endif (COVERALLS)
  31. # Generate version from Git Tag
  32. include(GetGitRevisionDescription)
  33. git_describe(VERSION --tags --dirty=-dirty)
  34. #parse the version information into pieces.
  35. string(REGEX REPLACE "^v([0-9]+)\\..*" "\\1" VERSION_MAJOR "${VERSION}")
  36. string(REGEX REPLACE "^v[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${VERSION}")
  37. string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_MICRO "${VERSION}")
  38. string(REGEX REPLACE "^v[0-9]+\\.[0-9]+\\.[0-9]+-(.*)" "\\1" VERSION_SHA1 "${VERSION}")
  39. message("-- Building version ${VERSION}")
  40. add_compile_options(-DV_MAJOR=${VERSION_MAJOR})
  41. add_compile_options(-DV_MINOR=${VERSION_MINOR})
  42. add_compile_options(-DV_MICRO=${VERSION_MICRO})
  43. add_compile_options(-DV_TEXT="${VERSION_SHA1}")
  44. add_subdirectory (src)