cmake_minimum_required(VERSION 3.15)
project(cplusplus_design_pattern)
set(CMAKE_CXX_STANDARD 11)

set(OUTPUT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/bin/)
message(STATUS "output dir : ${OUTPUT_DIR}")
add_subdirectory(SimpleFactory)
add_subdirectory(factoryMethod)
add_subdirectory(abstractFactory)
add_subdirectory(builder)
add_subdirectory(singleton)
add_subdirectory(clone)
add_subdirectory(proxy)
add_subdirectory(bridge)
add_subdirectory(decorator)
add_subdirectory(adapter)
add_subdirectory(facade)
add_subdirectory(composite)
add_subdirectory(flyweight)
add_subdirectory(observer)
add_subdirectory(template)
add_subdirectory(strategy)
add_subdirectory(chainOfResponsibility)
add_subdirectory(state)
add_subdirectory(iterator)
add_subdirectory(visitor)
add_subdirectory(memento)
add_subdirectory(command)
add_subdirectory(interpreter)
add_subdirectory(mediator)