Files
mosh-me/CMakeLists.txt

57 lines
1.6 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(
mosh-me
VERSION 0.1.0
LANGUAGES CXX)
find_package(spdlog REQUIRED)
find_package(avcpp REQUIRED)
# ##############################################################################
add_library(mosh-me-lib STATIC
${PROJECT_SOURCE_DIR}/src/pipeline.cpp
)
target_link_libraries(mosh-me-lib PUBLIC avcpp::avcpp spdlog::spdlog)
target_compile_features(mosh-me-lib PUBLIC cxx_std_23)
target_include_directories(mosh-me-lib PUBLIC ${PROJECT_SOURCE_DIR}/include)
add_executable(mosh-me
${PROJECT_SOURCE_DIR}/app/mosh-me.cpp
)
target_link_libraries(mosh-me avcpp::avcpp spdlog::spdlog)
target_compile_features(mosh-me PUBLIC cxx_std_23)
target_include_directories(mosh-me PRIVATE ${PROJECT_SOURCE_DIR}/include)
add_executable(mk-moshable
${PROJECT_SOURCE_DIR}/app/mk-moshable.cpp
)
target_link_libraries(mk-moshable avcpp::avcpp spdlog::spdlog)
target_compile_features(mk-moshable PUBLIC cxx_std_23)
target_include_directories(mk-moshable PRIVATE ${PROJECT_SOURCE_DIR}/include)
install(TARGETS mosh-me mk-moshable)
################################################################################
if (BUILD_TESTING)
find_package(Catch2 REQUIRED)
add_executable(mosh-me_test
${PROJECT_SOURCE_DIR}/test/pipeline.cpp
)
target_link_libraries(mosh-me_test mosh-me-lib Catch2::Catch2WithMain)
endif()
################################################################################
if(CMAKE_EXPORT_COMPILE_COMMANDS)
set(CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES})
set(CMAKE_C_STANDARD_INCLUDE_DIRECTORIES ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES})
endif()