cmake_minimum_required(VERSION 3.10)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_BUILD_TYPE Release)

project(main LANGUAGES CXX)

add_executable(main
    main.cpp
    boxblur.cpp
    gaussblur.cpp
    stb_image.cpp
    stb_image_write.cpp
    rwimage.cpp
    )

find_package(OpenMP REQUIRED)
target_link_libraries(main PUBLIC OpenMP::OpenMP_CXX)

#find_package(TBB REQUIRED)
#target_link_libraries(main PUBLIC TBB::tbb)

if (MSVC)
    target_compile_options(main PUBLIC /fp:fast /arch:AVX)
else()
    target_compile_options(main PUBLIC -ffast-math -march=native)
endif()
