48 lines
1.2 KiB
CMake
48 lines
1.2 KiB
CMake
cmake_minimum_required(VERSION 3.10)
|
|
|
|
project(UsbMakroBoard VERSION 1.0)
|
|
|
|
# Add the executable target
|
|
add_executable(usbmakroboard
|
|
src/main.cpp # Add your source files here
|
|
)
|
|
|
|
# Include yaml-cpp as a dependency
|
|
include(FetchContent)
|
|
|
|
FetchContent_Declare(
|
|
yaml-cpp
|
|
GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git
|
|
GIT_TAG master
|
|
)
|
|
FetchContent_GetProperties(yaml-cpp)
|
|
|
|
if(NOT yaml-cpp_POPULATED)
|
|
message(STATUS "Fetching yaml-cpp...")
|
|
FetchContent_Populate(yaml-cpp)
|
|
add_subdirectory(${yaml-cpp_SOURCE_DIR} ${yaml-cpp_BINARY_DIR})
|
|
endif()
|
|
|
|
# Link yaml-cpp with your executable
|
|
target_link_libraries(usbmakroboard PUBLIC yaml-cpp::yaml-cpp)
|
|
|
|
# Include spdlog as a dependency
|
|
include(FetchContent)
|
|
|
|
FetchContent_Declare(
|
|
spdlog
|
|
GIT_REPOSITORY https://github.com/gabime/spdlog.git
|
|
GIT_TAG v1.14.1
|
|
)
|
|
FetchContent_GetProperties(spdlog)
|
|
|
|
if(NOT spdlog_POPULATED)
|
|
message(STATUS "Fetching spdlog...")
|
|
FetchContent_Populate(spdlog)
|
|
add_subdirectory(${spdlog_SOURCE_DIR} ${spdlog_BINARY_DIR})
|
|
endif()
|
|
|
|
# Link spdlog with your executable
|
|
target_link_libraries(usbmakroboard PRIVATE spdlog::spdlog)
|
|
|
|
install(TARGETS usbmakroboard DESTINATION "${CMAKE_INSTALL_PREFIX}/bin") |