We were loading modules out of the system dirs unconditionally, so tests that loaded modules would use the system ones, or fail if they weren't installed.
Reviewed-By: Pekka Paalanen <pekka.paala...@collabora.co.uk> Signed-off-by: Derek Foreman <der...@osg.samsung.com> --- src/compositor.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/compositor.c b/src/compositor.c index 8f02b4d..3196e5a 100644 --- a/src/compositor.c +++ b/src/compositor.c @@ -4906,16 +4906,21 @@ on_caught_signal(int s, siginfo_t *siginfo, void *context) WL_EXPORT void * weston_load_module(const char *name, const char *entrypoint) { + const char *builddir = getenv("WESTON_BUILD_DIR"); char path[PATH_MAX]; void *module, *init; if (name == NULL) return NULL; - if (name[0] != '/') - snprintf(path, sizeof path, "%s/%s", MODULEDIR, name); - else + if (name[0] != '/') { + if (builddir) + snprintf(path, sizeof path, "%s/.libs/%s", builddir, name); + else + snprintf(path, sizeof path, "%s/%s", MODULEDIR, name); + } else { snprintf(path, sizeof path, "%s", name); + } module = dlopen(path, RTLD_NOW | RTLD_NOLOAD); if (module) { -- 2.1.4 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel