cmake_minimum_required(VERSION 3.5)

project(My_test LANGUAGES CXX)

SET(CMAKE_CXX_STANDARD 11)

find_package(Qt5Gui REQUIRED)
find_package(Qt5Xml REQUIRED)
find_package(Qt5Widgets REQUIRED)

#-for Catch2 Testing

Include(FetchContent)

FetchContent_Declare(
  Catch2
  GIT_REPOSITORY https://github.com/catchorg/Catch2.git
  GIT_TAG        v2.13.1)

FetchContent_MakeAvailable(Catch2)

#-end Catch2 Testing

add_executable(
    ${PROJECT_NAME}
    tst_My_test.cpp
    main.cpp
    ../../sources/borderproperties.h
    ../../sources/borderproperties.cpp)

target_link_libraries(
    ${PROJECT_NAME}
    PUBLIC
    Catch2::Catch2
    PRIVATE
    Qt5::Gui
    Qt5::Xml
    Qt5::Widgets)

#-for Catch2 Testing

if (DEFINED ENV{CATCH_INCLUDE_DIR})
    set(CATCH_INCLUDE_DIR $ENV{CATCH_INCLUDE_DIR})
else ()
    set(CATCH_INCLUDE_DIR "") # set by Qt Creator wizard
endif ()
if (CATCH_INCLUDE_DIR STREQUAL "")
    message("CATCH_INCLUDE_DIR is not set, assuming Catch2 can be found automatically in your system")
elseif (EXISTS ${CATCH_INCLUDE_DIR})
    include_directories(${CATCH_INCLUDE_DIR})
endif ()

#-end Catch2 Testing
