diff --git a/configure.ac b/configure.ac index 8b2b95e03..7b4b0d641 100644 --- a/configure.ac +++ b/configure.ac @@ -1406,21 +1406,17 @@ AS_IF([test -n "$GCC"], [ [AC_MSG_RESULT(no)]) CFLAGS="$OLDCFLAGS" - AS_IF([test x$enable_wayland = xyes],[ - DSOFLAGS="$DSOFLAGS -Wl,--allow-shlib-undefined" - ] , [ - dnl Make sure that shared libraries don't have undefined references - # See if ld supports -no-undefined... - AC_MSG_CHECKING([if ld supports -no-undefined]) - OLDLDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -Wl,-no-undefined" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM([[]], [[]])], - [DSOFLAGS="$DSOFLAGS -Wl,-no-undefined" - AC_MSG_RESULT(yes)], - [AC_MSG_RESULT(no)]) - LDFLAGS="$OLDLDFLAGS" - ]) + dnl Make sure that shared libraries don't have undefined references + # See if ld supports -no-undefined... + AC_MSG_CHECKING([if ld supports -no-undefined]) + OLDLDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -Wl,-no-undefined" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], [[]])], + [DSOFLAGS="$DSOFLAGS -Wl,-no-undefined" + AC_MSG_RESULT(yes)], + [AC_MSG_RESULT(no)]) + LDFLAGS="$OLDLDFLAGS" # See if ld supports -Bsymbolic-functions... AC_MSG_CHECKING([if ld supports -Bsymbolic-functions]) diff --git a/src/drivers/Wayland/Fl_Wayland_Gl_Window_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Gl_Window_Driver.cxx index db42a712d..598a412c4 100644 --- a/src/drivers/Wayland/Fl_Wayland_Gl_Window_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Gl_Window_Driver.cxx @@ -71,7 +71,7 @@ Fl_Wayland_Gl_Window_Driver::Fl_Wayland_Gl_Window_Driver(Fl_Gl_Window *win) : Fl void Fl_Wayland_Gl_Window_Driver::init() { EGLint major, minor; - if (!Fl_Wayland_Screen_Driver::wl_display) Fl::screen_driver()->open_display(); + if (!Fl_Wayland_Screen_Driver::wl_display) fl_open_display(); egl_display = eglGetDisplay((EGLNativeDisplayType) Fl_Wayland_Screen_Driver::wl_display); if (egl_display == EGL_NO_DISPLAY) { Fl::fatal("Can't create egl display\n"); diff --git a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.H b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.H index 196f07d5e..0dbdb084d 100644 --- a/src/drivers/Wayland/Fl_Wayland_Screen_Driver.H +++ b/src/drivers/Wayland/Fl_Wayland_Screen_Driver.H @@ -63,7 +63,7 @@ class Fl_Wayland_Screen_Driver : public Fl_Screen_Driver static int insertion_point_height; static bool insertion_point_location_is_valid; public: - static struct wl_display *wl_display; + static FL_EXPORT struct wl_display *wl_display; static void insertion_point_location(int x, int y, int height); static bool insertion_point_location(int *px, int *py, int *pwidth, int *pheight); int get_mouse_unscaled(int &xx, int &yy); diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.H b/src/drivers/Wayland/Fl_Wayland_Window_Driver.H index a419fa54b..fc84bf18d 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.H +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.H @@ -84,7 +84,7 @@ public: struct xdg_toplevel *xdg_toplevel(); Fl_Wayland_Window_Driver(Fl_Window*); virtual ~Fl_Wayland_Window_Driver(); - static struct wld_window *wld_window; + static FL_EXPORT struct wld_window *wld_window; static void redraw(struct wld_window *window); static inline Fl_Wayland_Window_Driver* driver(const Fl_Window *w) {return (Fl_Wayland_Window_Driver*)Fl_Window_Driver::driver(w);}