cmake_minimum_required(VERSION 3.0) project(CS-7353-Red-Black_Tree LANGUAGES CXX) # Common compiler options among built types set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17") # Specific compiler options for Debug or Release builds set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -O0 -ggdb -Wall -pedantic") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g -Wall -pedantic -O1") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O1") add_library(Nodelib STATIC "${CMAKE_SOURCE_DIR}/src/Node.cpp") add_library(RBlib STATIC "${CMAKE_SOURCE_DIR}/src/Red-Black.cpp") target_link_libraries(RBlib PUBLIC Nodelib) add_executable(main "${CMAKE_SOURCE_DIR}/src/main.cpp") target_link_libraries(main PUBLIC RBlib)