project( 'graphics-test', 'cpp', version: '0.1.0', default_options: ['cpp_std=c++26', 'warning_level=everything', 'buildtype=debugoptimized'], ) cpp = meson.get_compiler('cpp') common_cpp_args = [ '-Wno-c++20-compat', '-Wno-c++20-extensions', '-Wno-c++98-compat', '-Wno-c++98-compat-pedantic', '-Wno-disabled-macro-expansion', '-Wno-missing-prototypes', '-Wno-padded', '-Wno-pre-c++20-compat-pedantic', '-Wno-switch-default', '-Wno-unsafe-buffer-usage', '-Wunused-function', '-fvisibility=hidden', ] add_project_arguments(cpp.get_supported_arguments(common_cpp_args), language: 'cpp') deps = [ dependency('fmt', include_type: 'system'), dependency('glfw3', include_type: 'system'), dependency('glm', include_type: 'system'), dependency('vulkan', include_type: 'system'), ] spirv_dep = dependency('SPIRV-Tools', required: false, include_type: 'system') if not spirv_dep.found() spirv_dep = cpp.find_library('SPIRV-Tools', required: true) endif glslang_dep = dependency('glslang', required: false, include_type: 'system') if not glslang_dep.found() glslang_dep = cpp.find_library('glslang', required: true) endif imgui_dep = dependency('imgui', required: false, include_type: 'system') if not imgui_dep.found() imgui_dep = cpp.find_library('imgui', required: true) endif deps += [glslang_dep, spirv_dep, imgui_dep] executable( 'graphics-test', sources: files('src/main.cpp'), include_directories: include_directories('include', is_system: true), dependencies: deps, )