find_package(VulkanHeaders REQUIRED) find_package(glfw3 REQUIRED) find_package(freetype REQUIRED) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Werror") add_library(graphics SHARED) target_include_directories(graphics PRIVATE ${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/third_party/include/ ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_SOURCE_DIR} ${vma_INCLUDE_DIR} ${glfw3_INCLUDE_DIR} ${stb_INCLUDE_DIR} ) target_sources(graphics PRIVATE src/vma_port.cpp src/window.c src/vulkan_base.c src/vulkan_commands.c src/vulkan_buffers.c src/rse_graphics.c src/math.c src/mesh_controller.c src/vulkan_commons.c src/vulkan_image.c src/vulkan_render_pass.c src/vulkan_swapchain.c src/text_renderer.c src/pipeline_builder.c src/descriptor_builder.c ) target_link_libraries(graphics PUBLIC utilities vulkan-headers::vulkan-headers glfw Freetype::Freetype )