cmake_minimum_required(VERSION 3.13)

project(FGGL VERSION 0.1 LANGUAGES CXX)

set(FGGL_WAYLAND True)

# Set C++ version
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

# depdencies
find_package( glfw3 )
if ( NOT glfw3_FOUND )
  include(FetchContent)
  set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
  set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
  set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
  if ( FGGL_WAYLAND )
    set(GLFW_USE_WAYLAND True)
  endif ()
  FetchContent_Declare(
    glfw3
    URL https://github.com/glfw/glfw/releases/download/3.3.4/glfw-3.3.4.zip
  )
  FetchContent_MakeAvailable( glfw3 )
endif ()
add_subdirectory(vendor/imgui/)

# engine
add_subdirectory(fggl)

# extras
add_subdirectory(tests)
add_subdirectory(demo)