cmake_minimum_required(VERSION 3.20) project(sparse-tools C) set(CMAKE_C_STANDARD 99) include_directories( include ) add_executable(blksync src/blksync.c src/bs_recv_linear.c src/bs_send_linear.c src/bs_recv_merkle.c src/bs_send_merkle.c src/hash.c src/bs_tools.c src/bs_test.c src/merkle.c include/merkle.h src/bs_comm_handshake.c src/bs_sendrecv.c src/bs_analyze.c include/bs_msg.h include/bs_progress.h include/bs_engine.h include/bs_types.h src/bs_msg_queue.c src/bs_comm.c src/bs_engine.c include/bs_comm.h include/bs_analyze.h src/bs_progress.c include/bs_tools.h src/bs_sync.c include/bs_sync.h src/bs_transfer.c include/bs_transfer.h) target_link_libraries(blksync pthread) add_executable(mksparse src/mksparse.c) add_executable(hashtest src/hashtest.c src/hash.c) add_executable(test_merkle src/test_merkle.c src/merkle.c) add_executable(test_mmap src/test_mmap.c) add_executable(fillblocks src/fillblocks.c) add_executable(diffblocks src/diffblocks.c src/hash.c)