vulkan-test/meson.build
2024-11-21 18:50:38 -05:00

51 lines
1.2 KiB
Meson

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-pre-c++20-compat-pedantic',
'-Wno-padded',
'-Wno-switch-default',
'-mavx2',
]
add_project_arguments(cpp.get_supported_arguments(common_cpp_args), language: 'cpp')
deps = [
dependency('glfw3', include_type: 'system'),
dependency('glm', include_type: 'system'),
dependency('vulkan', include_type: 'system'),
dependency('shaderc', include_type: 'system'),
]
imgui_dep = dependency('imgui', required: false, include_type: 'system')
if not imgui_dep.found()
imgui_dep = cpp.find_library('imgui', required: true)
endif
deps += imgui_dep
executable(
'graphics-test',
sources: [
'src/main.cpp',
'src/camera/camera.cpp',
'src/gui/imgui_manager.cpp',
'src/init/vulkan_instance.cpp',
'src/init/debug_messenger.cpp',
'src/init/device_manager.cpp',
'src/window/window_manager.cpp',
],
include_directories: include_directories('include', is_system: true),
dependencies: deps,
)