Skip to content
Snippets Groups Projects

Adding wayland include dirs

Merged Antenore Gatta (tmow) requested to merge bug/2427-wayland-cmake into master

@jweberhofer Can you have a look?

This is based on what has been already merged in master, a full diff with 1.4.12 is:

diff --git a/CMakeLists.txt b/CMakeLists.txt
index ebe088e5..939ce9b7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -364,7 +364,27 @@ if(NOT GTK3_FOUND)
     message(FATAL_ERROR "GTK3 library not found")
 endif(NOT GTK3_FOUND)
 include_directories(${GTK3_INCLUDE_DIRS})
-set(GTK_LIBRARIES ${GTK3_LIBRARY} ${GDK3_LIBRARY} ${GDKPixbuf_LIBRARY} ${Pango_LIBRARY} ${Cairo_LIBRARY} ${GObject_LIBRARY} ${GLib_LIBRARY} ${GIO_LIBRARY} ${Gmodule_LIBRARIES} ${GMODULE_LIBRARY})
+
+pkg_check_modules(wayland-client REQUIRED wayland-client)
+if(NOT wayland-client_FOUND)
+    message(FATAL_ERROR "Wayland library not found")
+endif(NOT wayland-client_FOUND)
+
+include_directories(${wayland-client_INCLUDE_DIRS})
+
+set(GTK_LIBRARIES
+    ${GTK3_LIBRARY}
+    ${GDK3_LIBRARY}
+    ${GDKPixbuf_LIBRARY}
+    ${Pango_LIBRARY}
+    ${Cairo_LIBRARY}
+    ${GObject_LIBRARY}
+    ${GLib_LIBRARY}
+    ${GIO_LIBRARY}
+    ${Gmodule_LIBRARIES}
+    ${GMODULE_LIBRARY}
+    ${wayland-client_LIBRARIES}
+)

Should fix #2427 (closed)

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • added bug label

  • @antenore, I have incorporated this change into my code-base and it seem to solve the issue. Unfortunately another one pops up:

    [    6s] /usr/lib64/gcc/x86_64-suse-linux/7/../../../../x86_64-suse-linux/bin/ld: CMakeFiles/remmina-plugin-spice.dir/spice_plugin_file_transfer.c.o: in function `remmina_plugin_spice_file_transfer_cancel_cb':
    [    6s] /home/abuild/rpmbuild/BUILD/Remmina-v1.4.12/plugins/spice/spice_plugin_file_transfer.c:168: undefined reference to `spice_file_transfer_task_cancel'
    [    6s] collect2: error: ld returned 1 exit status
    [    6s] make[2]: *** [plugins/spice/CMakeFiles/remmina-plugin-spice.dir/build.make:144: plugins/spice/remmina-plugin-spice.so] Error 1
    [    6s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/Remmina-v1.4.12/build'
    [    6s] make[1]: *** [CMakeFiles/Makefile2:655: plugins/spice/CMakeFiles/remmina-plugin-spice.dir/all] Error 2
    [    6s] make[1]: *** Waiting for unfinished jobs....
  • That's strange... We didn't touch that part

  • @jweberhofer there's something terribly wrong in how Remmina is built.

    spice_file_transfer_task_cancel has been introduced starting from spice-gtk 0.31, but the file plugins/spice/spice_plugin_file_transfer.c should be built only if SPICE_GTK_CHECK_VERSION(0, 31, 0)

    See https://gitlab.com/Remmina/Remmina/-/blob/master/plugins/spice/spice_plugin_file_transfer.c#L37

    So I don't know why the openSUSE build system tries to build it anyway.

    Please check on your side.

    I'm merging this MR as the wayland problem is solved

  • mentioned in commit 5e1d4b26

  • On the other side if openSUSE have that version or newer of spice-gtk, that include dirs and libraries are added at build time.

    $ ninja -v | grep -i spice
    [71/154] /usr/bin/cc -DDEBUG -DHAVE_LIBAVAHI_CLIENT -DHAVE_LIBAVAHI_UI -DHAVE_LIBGCRYPT -DHAVE_LIBSSH -DWITH_ICON_CACHE -DWITH_MANPAGES -DWITH_NEWS -DWITH_UPDATE_DESKTOP_DB -Dremmina_plugin_spice_EXPORTS -I../. -I../src/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I../plugins -I/usr/include/spice-client-gtk-3.0 -I/usr/include/spice-client-glib-2.0 -I/usr/include/spice-1 -fPIC -Wall -msse2 -Wunused-result -Wunused-but-set-variable -Wdeprecated-declarations -Wimplicit-function-declaration -Wredundant-decls -g -g -fPIC -MD -MT plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin.c.o -MF plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin.c.o.d -o plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin.c.o -c ../plugins/spice/spice_plugin.c
    [72/154] /usr/bin/cc -DDEBUG -DHAVE_LIBAVAHI_CLIENT -DHAVE_LIBAVAHI_UI -DHAVE_LIBGCRYPT -DHAVE_LIBSSH -DWITH_ICON_CACHE -DWITH_MANPAGES -DWITH_NEWS -DWITH_UPDATE_DESKTOP_DB -Dremmina_plugin_spice_EXPORTS -I../. -I../src/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I../plugins -I/usr/include/spice-client-gtk-3.0 -I/usr/include/spice-client-glib-2.0 -I/usr/include/spice-1 -fPIC -Wall -msse2 -Wunused-result -Wunused-but-set-variable -Wdeprecated-declarations -Wimplicit-function-declaration -Wredundant-decls -g -g -fPIC -MD -MT plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_usb.c.o -MF plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_usb.c.o.d -o plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_usb.c.o -c ../plugins/spice/spice_plugin_usb.c
    [73/154] /usr/bin/cc -DDEBUG -DHAVE_LIBAVAHI_CLIENT -DHAVE_LIBAVAHI_UI -DHAVE_LIBGCRYPT -DHAVE_LIBSSH -DWITH_ICON_CACHE -DWITH_MANPAGES -DWITH_NEWS -DWITH_UPDATE_DESKTOP_DB -Dremmina_plugin_spice_EXPORTS -I../. -I../src/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I../plugins -I/usr/include/spice-client-gtk-3.0 -I/usr/include/spice-client-glib-2.0 -I/usr/include/spice-1 -fPIC -Wall -msse2 -Wunused-result -Wunused-but-set-variable -Wdeprecated-declarations -Wimplicit-function-declaration -Wredundant-decls -g -g -fPIC -MD -MT plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_file_transfer.c.o -MF plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_file_transfer.c.o.d -o plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_file_transfer.c.o -c ../plugins/spice/spice_plugin_file_transfer.c
    [81/154] : && /usr/bin/cc -fPIC -fPIC -Wall -msse2 -Wunused-result -Wunused-but-set-variable -Wdeprecated-declarations -Wimplicit-function-declaration -Wredundant-decls -g -g   -shared  -o plugins/spice/remmina-plugin-spice.so plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin.c.o plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_file_transfer.c.o plugins/spice/CMakeFiles/remmina-plugin-spice.dir/spice_plugin_usb.c.o  /usr/lib64/libgtk-3.so  /usr/lib64/libgdk-3.so  /usr/lib64/libgdk_pixbuf-2.0.so  /usr/lib64/libpango-1.0.so  /usr/lib64/libcairo.so  /usr/lib64/libgobject-2.0.so  /usr/lib64/libglib-2.0.so  /usr/lib64/libgio-2.0.so  /usr/lib64/libgmodule-2.0.so  -lwayland-client  -lpthread  /usr/lib64/libspice-client-gtk-3.0.so && :
    
  • mentioned in commit 5a42ebf2

  • mentioned in commit bd1be9d3

Please register or sign in to reply
Loading