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)