cmake_minimum_required(VERSION 3.20)

project(
    json
    LANGUAGES
        C
)

set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

add_library(
    ${PROJECT_NAME}
    json.c
)
target_include_directories(
    ${PROJECT_NAME}
    PUBLIC
        ${CMAKE_CURRENT_SOURCE_DIR}
)
set_target_properties(
    ${PROJECT_NAME}
    PROPERTIES
        C_STANDARD 23
        C_STANDARD_REQUIRED ON
        C_EXTENSIONS OFF
)

install(TARGETS ${PROJECT_NAME} DESTINATION lib)
install(FILES json.h DESTINATION include)

option(BUILD_EXAMPLE "Build the example" OFF)
if(BUILD_EXAMPLE)
    add_subdirectory(example)
endif()

option(BUILD_TESTS "Build unit tests" OFF)
if(BUILD_TESTS)
    enable_testing()
    add_subdirectory(tests)
endif()

