mirror of
https://github.com/JakubVojvoda/design-patterns-cpp.git
synced 2025-12-16 20:37:05 +03:00
48 lines
885 B
CMake
48 lines
885 B
CMake
cmake_minimum_required(VERSION 3.5)
|
|
|
|
project(CppDesignPatterns)
|
|
|
|
set(PATTERNS
|
|
abstract-factory
|
|
adapter
|
|
bridge
|
|
builder
|
|
chain-of-responsibility
|
|
command
|
|
composite
|
|
decorator
|
|
facade
|
|
factory-method
|
|
flyweight
|
|
interpreter
|
|
iterator
|
|
mediator
|
|
memento
|
|
observer
|
|
prototype
|
|
proxy
|
|
singleton
|
|
state
|
|
strategy
|
|
template-method
|
|
visitor
|
|
)
|
|
|
|
foreach(_dir IN ITEMS ${PATTERNS})
|
|
file(GLOB _files "${_dir}/*.cpp")
|
|
message(STATUS "Pattern `${_dir}':")
|
|
|
|
foreach(_file IN ITEMS ${_files})
|
|
|
|
get_filename_component(_file_name
|
|
${_file} NAME
|
|
)
|
|
|
|
set(_project_name "${_file_name}")
|
|
message(STATUS " ${_dir}/${_file_name} is going to be built")
|
|
|
|
add_executable(${_project_name} "${_dir}/${_file_name}")
|
|
endforeach()
|
|
|
|
endforeach()
|