cmake_minimum_required(VERSION 4.0)
project(Lab8)

set(CMAKE_CXX_STANDARD 20)

include(FetchContent)

FetchContent_Declare(
        nlohmann_json
        GIT_REPOSITORY https://github.com/nlohmann/json.git
        GIT_TAG v3.11.3
)

FetchContent_MakeAvailable(nlohmann_json)

add_executable(Lab8
        src/TaxRates.h
        src/Property.h
        src/Property.cpp
        src/Apartment.cpp
        src/Apartment.h
        src/Car.cpp
        src/Car.h
        src/CountryHouse.cpp
        src/CountryHouse.h
        src/main.cpp
        src/Owner.cpp
        src/Owner.h
        src/Ijsonio.cpp
        src/Ijsonio.h
        src/PropertySimpleFactory.cpp
        src/PropertySimpleFactory.h
        src/TaxService.cpp
        src/TaxService.h
        src/tinyxml2.cpp
        src/tinyxml2.h
        src/Ixmlio.cpp
        src/Ixmlio.h
        src/FileType.h
        src/FileTypeFactory.h
        src/FileTypeFactory.cpp
)

target_link_libraries(Lab8 PRIVATE nlohmann_json::nlohmann_json)
