2020-05-15 08:03:55 +00:00
|
|
|
project(
|
|
|
|
'gamescope',
|
|
|
|
['c','cpp'],
|
|
|
|
meson_version: '>=0.54.0',
|
|
|
|
default_options: ['warning_level=2'],
|
|
|
|
)
|
2019-10-02 21:08:47 +00:00
|
|
|
|
2019-10-24 01:31:18 +00:00
|
|
|
add_project_arguments([
|
|
|
|
'-DWLR_USE_UNSTABLE',
|
|
|
|
], language: ['c','cpp'])
|
|
|
|
|
2020-05-15 08:20:59 +00:00
|
|
|
cc = meson.get_compiler('c')
|
2020-05-15 08:03:55 +00:00
|
|
|
cppc = meson.get_compiler('cpp')
|
|
|
|
|
2020-05-15 08:20:59 +00:00
|
|
|
add_project_arguments(cc.get_supported_arguments([
|
|
|
|
'-Wno-unused-parameter',
|
|
|
|
]), language: 'c')
|
|
|
|
|
2020-05-15 08:03:55 +00:00
|
|
|
add_project_arguments(cppc.get_supported_arguments([
|
|
|
|
'-Wno-unused-parameter',
|
|
|
|
'-Wno-missing-field-initializers',
|
|
|
|
]), language: 'cpp')
|
|
|
|
|
2019-10-02 21:08:47 +00:00
|
|
|
dep_x11 = dependency('x11')
|
|
|
|
dep_xdamage = dependency('xdamage')
|
|
|
|
dep_xcomposite = dependency('xcomposite')
|
|
|
|
dep_xrender = dependency('xrender')
|
|
|
|
dep_xext = dependency('xext')
|
|
|
|
dep_xxf86vm = dependency('xxf86vm')
|
2020-01-19 04:37:11 +00:00
|
|
|
dep_xtst = dependency('xtst')
|
2019-10-02 21:08:47 +00:00
|
|
|
|
2019-10-24 01:31:18 +00:00
|
|
|
pixman_dep = dependency('pixman-1')
|
|
|
|
drm_dep = dependency('libdrm')
|
2019-12-07 09:11:33 +00:00
|
|
|
vulkan_dep = dependency('vulkan')
|
2019-10-24 01:31:18 +00:00
|
|
|
|
|
|
|
cc = meson.get_compiler('c')
|
|
|
|
|
|
|
|
wayland_server = dependency('wayland-server')
|
|
|
|
wayland_protos = dependency('wayland-protocols', version: '>=1.17')
|
|
|
|
pixman = dependency('pixman-1')
|
|
|
|
libinput = dependency('libinput')
|
|
|
|
xkbcommon = dependency('xkbcommon')
|
|
|
|
math = cc.find_library('m')
|
|
|
|
thread_dep = dependency('threads')
|
2020-09-02 06:25:53 +00:00
|
|
|
cap_dep = cc.find_library('cap')
|
2019-12-09 10:06:44 +00:00
|
|
|
sdl_dep = dependency('SDL2')
|
2019-10-24 01:31:18 +00:00
|
|
|
|
2020-05-05 08:28:01 +00:00
|
|
|
wlroots_proj = subproject('wlroots', default_options:
|
|
|
|
['default_library=static', 'examples=false'])
|
|
|
|
wlroots_static_dep = wlroots_proj.get_variable('wlroots')
|
2019-11-17 00:56:34 +00:00
|
|
|
|
2019-12-08 04:33:58 +00:00
|
|
|
shadercompiler = find_program('glslangValidator')
|
|
|
|
|
|
|
|
spirv_shader = custom_target('shader_target',
|
|
|
|
output : 'composite.h',
|
|
|
|
input : 'src/composite.comp.hlsl',
|
2020-01-28 20:30:20 +00:00
|
|
|
command : [
|
|
|
|
shadercompiler, '-V', '-e', 'main', '--vn',
|
|
|
|
'composite_spv', '@INPUT@', '-o', '@OUTPUT@'
|
|
|
|
],
|
2019-12-08 04:33:58 +00:00
|
|
|
install : false,
|
|
|
|
)
|
|
|
|
|
2020-05-05 08:49:44 +00:00
|
|
|
liftoff_proj = subproject('libliftoff', default_options:
|
|
|
|
['default_library=static'])
|
2020-01-06 04:22:27 +00:00
|
|
|
libftoff_dep = liftoff_proj.get_variable('liftoff')
|
|
|
|
|
2019-10-02 21:08:47 +00:00
|
|
|
executable(
|
2020-01-15 01:35:36 +00:00
|
|
|
'gamescope',
|
2020-01-23 05:50:01 +00:00
|
|
|
'src/steamcompmgr.cpp',
|
2019-10-24 01:31:18 +00:00
|
|
|
'src/main.cpp',
|
2020-06-11 10:42:27 +00:00
|
|
|
'src/wlserver.cpp',
|
2019-12-05 09:11:52 +00:00
|
|
|
'src/drm.cpp',
|
2020-09-02 04:36:48 +00:00
|
|
|
'src/sdlwindow.cpp',
|
2020-01-26 22:59:51 +00:00
|
|
|
'src/vblankmanager.cpp',
|
2019-12-08 04:33:58 +00:00
|
|
|
[ 'src/rendervulkan.cpp', spirv_shader ],
|
2019-10-02 21:08:47 +00:00
|
|
|
dependencies : [
|
2019-12-10 10:03:18 +00:00
|
|
|
dep_x11, dep_xdamage, dep_xcomposite, dep_xrender, dep_xext,
|
2019-12-09 10:28:56 +00:00
|
|
|
dep_xxf86vm, pixman_dep, drm_dep, wayland_server, wayland_protos,
|
|
|
|
libinput, xkbcommon, math, thread_dep, sdl_dep, wlroots_static_dep,
|
2020-09-02 06:25:53 +00:00
|
|
|
vulkan_dep, libftoff_dep, dep_xtst, cap_dep
|
2019-10-02 21:08:47 +00:00
|
|
|
],
|
2019-12-17 21:30:18 +00:00
|
|
|
install: true,
|
2019-10-02 21:08:47 +00:00
|
|
|
)
|