cmake_minimum_required(VERSION 3.25)
project(radio_event_checks LANGUAGES CXX)
enable_testing()
foreach(tu 0 4)
  add_executable(radio_events_${tu} radio_events_test.cpp ../../src/hooks/radio_events.cpp)
  target_include_directories(radio_events_${tu} PRIVATE stubs ../../src)
  target_compile_features(radio_events_${tu} PRIVATE cxx_std_20)
  target_compile_definitions(radio_events_${tu} PRIVATE FORZA_TITLE_UPDATE=${tu} _CRT_SECURE_NO_WARNINGS)
  if(MSVC)
    target_compile_options(radio_events_${tu} PRIVATE /W4 /WX /UNDEBUG)
  else()
    target_compile_options(radio_events_${tu} PRIVATE -Wall -Wextra -Werror -UNDEBUG)
  endif()
  foreach(mode off on)
    add_test(NAME radio_events_${tu}_${mode} COMMAND radio_events_${tu} ${mode})
  endforeach()
endforeach()
