add_library(basic_inheritance_solutions)
add_library(basic_inheritance::solutions ALIAS basic_inheritance_solutions)

if(BUILD_TASK_1)
  target_sources(basic_inheritance_solutions PRIVATE task01.cpp)
endif()

if(BUILD_TASK_2)
  target_sources(basic_inheritance_solutions PRIVATE task02.cpp)
endif()

if(BUILD_TASK_3)
  target_sources(basic_inheritance_solutions PRIVATE task03.cpp)
endif()

target_sources(basic_inheritance_solutions
  PUBLIC
    FILE_SET HEADERS
      BASE_DIRS include
      FILES
        include/Garden.h
        include/task01.h
        include/task02.h
        include/task03.h
)

target_compile_features(basic_inheritance_solutions PUBLIC cxx_std_23)
target_link_libraries(basic_inheritance_solutions
  PUBLIC
    basic_inheritance::support
  PRIVATE
    basic_inheritance::warnings
    basic_inheritance::sanitizers
)
