cmake_minimum_required(VERSION 3.14) project(genlittlefs LANGUAGES C) set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake" ${CMAKE_MODULE_PATH}) find_package(BLKID REQUIRED) # only add LittleFS subdirectory during a standalone config of genlittlefs if (CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../../third-party/littlefs ${CMAKE_CURRENT_BINARY_DIR}/littlefs EXCLUDE_FROM_ALL ) endif() set(GENLITTLEFS_SRCS mklfs.c parse_partitions.c parse_args.c lfs_ioaccess.c ) add_executable(${PROJECT_NAME} ${GENLITTLEFS_SRCS}) target_compile_options(${PROJECT_NAME} PRIVATE -Wall -pedantic -Werror -Wextra ) target_compile_definitions(${PROJECT_NAME} PRIVATE _GNU_SOURCE ) target_link_libraries(${PROJECT_NAME} PRIVATE littlefs ${BLKID_LIBRARIES}) target_include_directories(${PROJECT_NAME} PRIVATE ${BLKID_INCLUDE_DIR})