project('vulkan learning', 'c') deps = [dependency('glfw3'), dependency('vulkan'), dependency('dl'), dependency('threads'), dependency('X11'), dependency('xxf86vm'), dependency('xrandr'), dependency('xi'), dependency('cglm')] glslc = find_program('glslc') shaders = ['src/vertex_simple.vert', 'src/fragment_simple.frag', 'src/compute_simple.comp', 'src/compute_simple2.comp', 'src/postprocess.comp'] foreach shader : shaders out = (shader.split('.')[-2] + '.spv').split('/')[-1] target = custom_target(out, output : out, input : shader, command : [glslc, '@INPUT@', '-o', '@OUTPUT@'], install : true, install_dir : 'shaders') endforeach executable('triangle', 'src/main.c', dependencies: deps) executable('compute', 'src/vlk_compute.c', dependencies: deps)