2019-10-12 15:24:57 +00:00
|
|
|
project(
|
|
|
|
'wayvnc',
|
|
|
|
'c',
|
|
|
|
version: '0.0.0',
|
|
|
|
license: 'ISC',
|
|
|
|
default_options: [
|
|
|
|
'c_std=gnu11',
|
|
|
|
],
|
|
|
|
)
|
|
|
|
|
|
|
|
add_project_arguments([
|
|
|
|
'-D_GNU_SOURCE',
|
|
|
|
'-fvisibility=hidden',
|
|
|
|
], language: 'c')
|
|
|
|
|
|
|
|
cc = meson.get_compiler('c')
|
|
|
|
|
|
|
|
libm = cc.find_library('m', required: false)
|
|
|
|
|
|
|
|
pixman = dependency('pixman-1')
|
|
|
|
libuv = dependency('libuv')
|
|
|
|
egl = dependency('egl')
|
|
|
|
glesv2 = dependency('glesv2')
|
2019-12-24 15:54:58 +00:00
|
|
|
xkbcommon = dependency('xkbcommon')
|
2019-10-12 15:24:57 +00:00
|
|
|
wayland_client = dependency('wayland-client')
|
|
|
|
|
|
|
|
neatvnc_project = subproject(
|
|
|
|
'neatvnc',
|
|
|
|
required: false,
|
|
|
|
)
|
|
|
|
|
|
|
|
if neatvnc_project.found()
|
|
|
|
neatvnc = neatvnc_project.get_variable('neatvnc_dep')
|
|
|
|
else
|
|
|
|
neatvnc = dependency('neatvnc')
|
|
|
|
endif
|
|
|
|
|
|
|
|
inc = include_directories('include')
|
|
|
|
|
|
|
|
subdir('protocols')
|
|
|
|
|
|
|
|
sources = [
|
|
|
|
'src/main.c',
|
|
|
|
'src/render.c',
|
|
|
|
'src/dmabuf.c',
|
|
|
|
'src/strlcpy.c',
|
|
|
|
'src/shm.c',
|
|
|
|
'src/screencopy.c',
|
2019-10-13 12:38:47 +00:00
|
|
|
'src/output.c',
|
2019-12-22 15:41:51 +00:00
|
|
|
'src/pointer.c',
|
2019-12-24 15:54:58 +00:00
|
|
|
'src/keyboard.c',
|
2019-12-31 13:55:25 +00:00
|
|
|
'src/seat.c',
|
2019-12-29 11:47:31 +00:00
|
|
|
'src/smooth.c',
|
2019-10-12 15:24:57 +00:00
|
|
|
]
|
|
|
|
|
|
|
|
dependencies = [
|
|
|
|
libm,
|
|
|
|
pixman,
|
|
|
|
libuv,
|
|
|
|
egl,
|
|
|
|
glesv2,
|
|
|
|
wayland_client,
|
|
|
|
neatvnc,
|
2019-12-24 15:54:58 +00:00
|
|
|
xkbcommon,
|
2019-10-12 15:24:57 +00:00
|
|
|
client_protos,
|
|
|
|
]
|
|
|
|
|
|
|
|
executable(
|
|
|
|
'wayvnc',
|
|
|
|
sources,
|
|
|
|
dependencies: dependencies,
|
|
|
|
include_directories: inc,
|
|
|
|
install: true,
|
|
|
|
)
|