## CMake
cmake_minimum_required(VERSION 3.14)
if(NOT CMAKE_BUILD_TYPE)
    set(CMAKE_BUILD_TYPE Debug)
endif()

## Project
project(glbackend
    VERSION 1.0.0
    LANGUAGES CXX
)

## Main target
add_library(${PROJECT_NAME})

## Variables
set(GLBACKEND_DEPENDENCIES)
set(GLBACKEND_DEFINITIONS)

## glfw
find_package(glfw3)
if(glfw3_FOUND)
    list(APPEND GLBACKEND_DEPENDENCIES glfw)
    list(APPEND GLBACKEND_DEFINITIONS  GLBACKEND_GLFW)
endif()

## sdl
find_package(SDL2)
if(SDL2_FOUND)
    list(APPEND GLBACKEND_DEPENDENCIES SDL2)
    list(APPEND GLBACKEND_DEFINITIONS  GLBACKEND_SDL)
endif()

## Common
include(common.cmake)
common(
    CXX_STANDARD 11
    FETCHCONTENT
        https://git.rcrnstn.net/rcrnstn/glbase
        https://git.rcrnstn.net/rcrnstn/cxx-str
    DEPENDENCIES_PRIVATE
        glbase
        cxx-str
        ${GLBACKEND_DEPENDENCIES}
    DEPENDENCIES_TESTS
        glbase
        cxx-str
        ${GLBACKEND_DEPENDENCIES}
    DEFINITIONS
        ${GLBACKEND_DEFINITIONS}
)