graaf is header-only and can be used from CMake via:
find_path(GRAAF_INCLUDE_DIRS "graaflib/graph.h")
target_include_directories(main PRIVATE ${GRAAF_INCLUDE_DIRS})