From: Quentin Glidic <sardemff7+...@sardemff7.net>

Use different functions so we cannot load a libweston common module in
weston directly or the other way around.

Signed-off-by: Quentin Glidic <sardemff7+...@sardemff7.net>
---
 compositor/cms-colord.c             | 1 +
 compositor/systemd-notify.c         | 1 +
 compositor/weston.h                 | 4 ++++
 fullscreen-shell/fullscreen-shell.c | 1 +
 libweston/compositor.c              | 8 +++-----
 libweston/compositor.h              | 3 +--
 tests/plugin-registry-test.c        | 1 +
 tests/surface-global-test.c         | 1 +
 tests/surface-screenshot.c          | 1 +
 tests/surface-test.c                | 1 +
 xwayland/launcher.c                 | 3 +--
 11 files changed, 16 insertions(+), 9 deletions(-)

diff --git a/compositor/cms-colord.c b/compositor/cms-colord.c
index 152a734..ae3ef25 100644
--- a/compositor/cms-colord.c
+++ b/compositor/cms-colord.c
@@ -34,6 +34,7 @@
 #include <colord.h>
 
 #include "compositor.h"
+#include "weston.h"
 #include "cms-helper.h"
 #include "shared/helpers.h"
 
diff --git a/compositor/systemd-notify.c b/compositor/systemd-notify.c
index 49e51f4..ce18ede 100644
--- a/compositor/systemd-notify.c
+++ b/compositor/systemd-notify.c
@@ -34,6 +34,7 @@
 #include "shared/string-helpers.h"
 #include "shared/zalloc.h"
 #include "compositor.h"
+#include "weston.h"
 
 struct systemd_notifier {
        int watchdog_time;
diff --git a/compositor/weston.h b/compositor/weston.h
index bb04002..2e0417c 100644
--- a/compositor/weston.h
+++ b/compositor/weston.h
@@ -63,6 +63,10 @@ wet_get_config(struct weston_compositor *compositor);
 void *
 wet_load_module(const char *name, const char *entrypoint);
 
+int
+module_init(struct weston_compositor *compositor,
+           int *argc, char *argv[]);
+
 int
 wet_load_xwayland(struct weston_compositor *comp);
 
diff --git a/fullscreen-shell/fullscreen-shell.c 
b/fullscreen-shell/fullscreen-shell.c
index b3083d8..dab429d 100644
--- a/fullscreen-shell/fullscreen-shell.c
+++ b/fullscreen-shell/fullscreen-shell.c
@@ -34,6 +34,7 @@
 #include <assert.h>
 
 #include "compositor.h"
+#include "compositor/weston.h"
 #include "fullscreen-shell-unstable-v1-server-protocol.h"
 #include "shared/helpers.h"
 
diff --git a/libweston/compositor.c b/libweston/compositor.c
index 6226810..d00a25a 100644
--- a/libweston/compositor.c
+++ b/libweston/compositor.c
@@ -5357,14 +5357,12 @@ weston_compositor_load_backend(struct weston_compositor 
*compositor,
 WL_EXPORT int
 weston_compositor_load_xwayland(struct weston_compositor *compositor)
 {
-       int (*module_init)(struct weston_compositor *ec,
-                          int *argc, char *argv[]);
-       int argc = 0;
+       int (*module_init)(struct weston_compositor *ec);
 
-       module_init = weston_load_module("xwayland.so", "module_init");
+       module_init = weston_load_module("xwayland.so", "weston_module_init");
        if (!module_init)
                return -1;
-       if (module_init(compositor, &argc, NULL) < 0)
+       if (module_init(compositor) < 0)
                return -1;
        return 0;
 }
diff --git a/libweston/compositor.h b/libweston/compositor.h
index faeea3a..d59e622 100644
--- a/libweston/compositor.h
+++ b/libweston/compositor.h
@@ -1754,8 +1754,7 @@ int
 weston_backend_init(struct weston_compositor *c,
                    struct weston_backend_config *config_base);
 int
-module_init(struct weston_compositor *compositor,
-           int *argc, char *argv[]);
+weston_module_init(struct weston_compositor *compositor);
 
 void
 weston_transformed_coord(int width, int height,
diff --git a/tests/plugin-registry-test.c b/tests/plugin-registry-test.c
index 7fc88f3..2a32e01 100644
--- a/tests/plugin-registry-test.c
+++ b/tests/plugin-registry-test.c
@@ -28,6 +28,7 @@
 #include <assert.h>
 
 #include "compositor.h"
+#include "compositor/weston.h"
 #include "plugin-registry.h"
 
 static void
diff --git a/tests/surface-global-test.c b/tests/surface-global-test.c
index 55899c6..20d99ce 100644
--- a/tests/surface-global-test.c
+++ b/tests/surface-global-test.c
@@ -29,6 +29,7 @@
 #include <stdint.h>
 
 #include "compositor.h"
+#include "compositor/weston.h"
 
 static void
 surface_to_from_global(void *data)
diff --git a/tests/surface-screenshot.c b/tests/surface-screenshot.c
index 332b5e3..6ff2bfc 100644
--- a/tests/surface-screenshot.c
+++ b/tests/surface-screenshot.c
@@ -34,6 +34,7 @@
 #include <linux/input.h>
 
 #include "compositor.h"
+#include "compositor/weston.h"
 #include "file-util.h"
 
 static char *
diff --git a/tests/surface-test.c b/tests/surface-test.c
index 243f8dc..4463061 100644
--- a/tests/surface-test.c
+++ b/tests/surface-test.c
@@ -29,6 +29,7 @@
 #include <assert.h>
 
 #include "compositor.h"
+#include "compositor/weston.h"
 
 static void
 surface_transform(void *data)
diff --git a/xwayland/launcher.c b/xwayland/launcher.c
index 276795a..0ecdb20 100644
--- a/xwayland/launcher.c
+++ b/xwayland/launcher.c
@@ -351,8 +351,7 @@ const struct weston_xwayland_api api = {
 extern const struct weston_xwayland_surface_api surface_api;
 
 WL_EXPORT int
-module_init(struct weston_compositor *compositor,
-           int *argc, char *argv[])
+weston_module_init(struct weston_compositor *compositor)
 
 {
        struct wl_display *display = compositor->wl_display;
-- 
2.10.0

_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to