cmake_minimum_required(VERSION 3.27)

project(aquamarine-tests LANGUAGES CXX)

find_package(PkgConfig REQUIRED)
set(CMAKE_CXX_STANDARD 23)
add_compile_options(
  -Wall
  -Wextra
  -Wno-unused-parameter
  -Wno-unused-value
  -Wno-missing-field-initializers
  -Wpedantic)

find_package(PkgConfig REQUIRED)
pkg_check_modules(deps REQUIRED IMPORTED_TARGET aquamarine hyprutils libdrm pixman-1)

enable_testing()

add_executable(attachments "tests/Attachments.cpp")
target_link_libraries(attachments PRIVATE PkgConfig::deps aquamarine)
add_test(
  NAME "attachments"
  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/tests
  COMMAND attachments "attachments")

add_executable(output "tests/Output.cpp")
target_include_directories(output PRIVATE "./src/include")
target_link_libraries(output PRIVATE PkgConfig::deps aquamarine)
add_test(
  NAME "output"
  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/tests
  COMMAND output "output")

add_executable(commitThread "tests/CommitThread.cpp")
target_include_directories(commitThread PRIVATE "./src/backend/drm")
target_link_libraries(commitThread PRIVATE PkgConfig::deps aquamarine)
add_test(
  NAME "commitThread"
  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/tests
  COMMAND commitThread "commitThread")
