build: add rpath to modules that use symbols from libexec_weston

The cms-static, desktop-shell, hmi-controller, ivi-shell, and screen-share
modules use symbols from libexec_weston, e.g.:

  $ ldd /usr/lib/x86_64-linux-gnu/weston/desktop-shell.so | grep "not found"
  	libexec_weston.so.0 => not found

Loading these modules from weston happens to work because the weston executable
itself links against libexec_weston, and has an rpath set. Still, these modules
depend on a library in a non-standard location. Adding an rpath could help
static checkers to make sure all shared objects' dependencies are present.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
dev
Philipp Zabel 5 years ago committed by Pekka Paalanen
parent 741fca40b5
commit 4b1de0112b
  1. 6
      compositor/meson.build
  2. 3
      desktop-shell/meson.build
  3. 6
      ivi-shell/meson.build

@ -90,7 +90,8 @@ if get_option('screenshare')
dependencies: deps_screenshare,
name_prefix: '',
install: true,
install_dir: dir_module_weston
install_dir: dir_module_weston,
install_rpath: '$ORIGIN'
)
env_modmap += 'screen-share.so=@0@;'.format(plugin_screenshare.full_path())
endif
@ -115,7 +116,8 @@ if get_option('color-management-lcms')
dependencies: [ dep_libexec_weston, dep_libweston_public, dep_lcms2 ],
name_prefix: '',
install: true,
install_dir: dir_module_weston
install_dir: dir_module_weston,
install_rpath: '$ORIGIN'
)
env_modmap += 'cms-static.so=@0@;'.format(plugin_lcms.full_path())
endif

@ -24,7 +24,8 @@ if get_option('shell-desktop')
dependencies: deps_shell_desktop,
name_prefix: '',
install: true,
install_dir: dir_module_weston
install_dir: dir_module_weston,
install_rpath: '$ORIGIN'
)
env_modmap += 'desktop-shell.so=@0@;'.format(plugin_shell_desktop.full_path())
endif

@ -20,7 +20,8 @@ if get_option('shell-ivi')
],
name_prefix: '',
install: true,
install_dir: dir_module_weston
install_dir: dir_module_weston,
install_rpath: '$ORIGIN'
)
env_modmap += 'ivi-shell.so=@0@;'.format(plugin_shell_ivi.full_path())
@ -42,7 +43,8 @@ if get_option('shell-ivi')
],
name_prefix: '',
install: true,
install_dir: dir_module_weston
install_dir: dir_module_weston,
install_rpath: '$ORIGIN'
)
env_modmap += 'hmi-controller.so=@0@;'.format(plugin_ivi_hmi.full_path())

Loading…
Cancel
Save