weston/remoting/meson.build
Pekka Paalanen 4f5e360180 build: simplify include_directories
Define common_inc which includes both public_inc and the project root directory.
The project root directory will allow access to config.h and all the shared/
headers.

Replacing all custom '.', '..', '../..', '../shared' etc. include paths with
common_inc reduces clutter in the target definitions and enforces the common
 #include directive style, as e.g. including shared/ headers without the
subdirectory name no longer works.

Unfortunately this does not prevent one from using private libweston headers
with the usual include pattern for public headers.

Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com>
2019-10-04 17:14:22 +03:00

33 lines
943 B
Meson

if get_option('remoting')
user_hint = 'If you rather not build this, set \'-Dremoting=false\'.'
if not get_option('backend-drm')
error('Attempting to build the remoting plugin without the required DRM backend. ' + user_hint)
endif
depnames = [
'gstreamer-1.0', 'gstreamer-allocators-1.0',
'gstreamer-app-1.0', 'gstreamer-video-1.0',
'gobject-2.0', 'glib-2.0'
]
deps_remoting = [ dep_libweston ]
foreach depname : depnames
dep = dependency(depname, required: false)
if not dep.found()
error('Remoting plugin requires @0@ which was not found. '.format(depname) + user_hint)
endif
deps_remoting += dep
endforeach
plugin_remoting = shared_library(
'remoting-plugin',
'remoting-plugin.c',
include_directories: common_inc,
dependencies: deps_remoting,
name_prefix: '',
install: true,
install_dir: dir_module_libweston
)
env_modmap += 'remoting-plugin.so=@0@;'.format(plugin_remoting.full_path())
endif