cmake_minimum_required(VERSION 3.16)

project(cmake-vsenv LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

if (MSVC)
    add_compile_options(/utf-8)
    add_definitions(-DWIN32_LEAN_AND_MEAN)
    add_definitions(-D_WIN32_WINNT=0x0601)
    add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif()

set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib/${CMAKE_BUILD_TYPE})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE}/)

add_definitions(-DFMT_HEADER_ONLY)
find_package(cxxLibrary CONFIG REQUIRED)

include_directories(thirdparty)
add_executable(cmake-vsenv main.cpp read_config.h read_config.cpp exec_cmd.h exec_cmd.cpp)
target_link_libraries(cmake-vsenv PRIVATE cxxLibrary::cxxLibrary ntdll)
