cmake_minimum_required(VERSION 3.16)

project(os_process_manager C)

set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED ON)
set(CMAKE_C_EXTENSIONS OFF)

add_executable(process_manager
    src/ipc.c
    src/output.c
    src/process.c
    src/scheduler.c
    src/sync.c
)

target_include_directories(process_manager PRIVATE include)

if(MSVC)
    target_compile_options(process_manager PRIVATE /W4)
else()
    target_compile_options(process_manager PRIVATE -Wall -Wextra -Wpedantic)
endif()
