cmake_minimum_required(VERSION 3.27) set(CMAKE_CXX_STANDARD 17) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(PROJECT_NAME "encoder") project(${PROJECT_NAME}) message(STATUS "Downloading fastlz library") include(FetchContent) FetchContent_Declare(fastlz URL https://github.com/ariya/FastLZ/archive/refs/heads/master.zip) FetchContent_MakeAvailable(fastlz) file(GLOB_RECURSE PROJECT_SOURCES CONFIGURE_DEPENDS "*.cpp" "*.c" ${fastlz_SOURCE_DIR}/fastlz.c) set(PROJECT_INCLUDE "encoder" ${fastlz_SOURCE_DIR}) set(PROJECT_VENDOR "") add_executable(${PROJECT_NAME} ${PROJECT_SOURCES} ${VENDOR_SOURCES}) target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_INCLUDE}) target_link_libraries(${PROJECT_NAME} PUBLIC ${PROJECT_VENDOR})