CMakeLists.txt 1022 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. cmake_minimum_required(VERSION 3.1)
  2. # External cmake modules
  3. set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/external/cmake ${CMAKE_MODULE_PATH})
  4. project("GameEngine")
  5. include(GetGitRevisionDescription)
  6. include(GetLua)
  7. include(BuildImGui)
  8. git_describe(VERSION --tags --dirty=-dirty)
  9. option(WARN_AS_ERROR "Enable warning as error" OFF)
  10. set(CMAKE_CXX_STANDARD 17)
  11. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  12. set(CMAKE_CXX_EXTENSIONS OFF)
  13. set(COMP_FLAGS "-Wall -Wextra -Wno-unused-parameter -Wno-unused-result -Wno-write-strings")
  14. if (WARN_AS_ERROR)
  15. set(COMP_FLAGS "${COMP_FLAGS} -Werror")
  16. endif()
  17. set(CMAKE_C_FLAGS ${COMP_FLAGS})
  18. set(CMAKE_CXX_FLAGS ${COMP_FLAGS})
  19. # Add Lua
  20. AddExternalLua(5.3.5 112eb10ff04d1b4c9898e121d6bdf54a81482447)
  21. # Add other libraries deps
  22. # Need to find how we will add imgui
  23. # add_subdirectory(external/imgui)
  24. add_subdirectory(external/glm)
  25. add_subdirectory(external/sol)
  26. message("-- Building version ${VERSION}")
  27. add_compile_definitions(VERSION="${VERSION}")
  28. add_subdirectory(source)