Skip to content

Commit

Permalink
build/packaging: Restore Wayland support
Browse files Browse the repository at this point in the history
- Restore build config options
- Fix depends
  • Loading branch information
mtwebster authored and clefebvre committed Nov 7, 2023
1 parent db389b5 commit bc10efe
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 12 deletions.
11 changes: 10 additions & 1 deletion debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,23 @@ Build-Depends:
libgles2-mesa-dev (>= 7.1~rc3-1~) | libgles2-dev,
libglib2.0-dev (>= 2.61.1),
libcinnamon-desktop-dev,
libgbm-dev (>= 17.3) [linux-any],
libgdk-pixbuf-2.0-dev | libgdk-pixbuf2.0-dev,
libgraphene-1.0-dev (>= 1.9.3),
libgtk-3-dev (>= 3.19.8),
libgudev-1.0-dev (>= 232) [linux-any],
libice-dev,
libinput-dev (>= 1.7) [linux-any],
libjson-glib-dev (>= 0.13.2-1~),
libnvidia-egl-wayland-dev [linux-any],
libpam0g-dev,
libpango1.0-dev (>= 1.2.0),
libpipewire-0.3-dev [linux-any] | libpipewire-0.2-dev [linux-any],
libsm-dev,
libstartup-notification0-dev (>= 0.7),
libsystemd-dev (>= 212) [linux-any],
libwacom-dev (>= 0.13) [linux-any],
libwayland-dev,
libxau-dev,
libx11-dev,
libx11-xcb-dev,
Expand All @@ -58,10 +62,14 @@ Build-Depends:
libxt-dev,
meson (>= 0.50),
pkg-config (>= 0.22),
udev [linux-any],
wayland-protocols (>= 1.25) [linux-any],
xauth <!nocheck>,
xcvt [linux-any],
xkb-data,
xserver-xorg-core [linux-any],
xvfb <!nocheck>,
xwayland [linux-any],
zenity
Rules-Requires-Root: no
Standards-Version: 4.5.0
Expand Down Expand Up @@ -153,7 +161,8 @@ Depends: gir1.2-meta-muffin-0.0 (= ${binary:Version}),
libcinnamon-desktop-dev (>= 5.4),
libdrm-dev,
libegl1-mesa-dev,
libgdk-pixbuf2.0-dev,
libgbm-dev,
libgdk-pixbuf-2.0-dev | libgdk-pixbuf2.0-dev,
libgles2-mesa-dev (>= 7.1~rc3-1~) | libgles2-dev,
libglib2.0-dev,
libgraphene-1.0-dev (>= 1.9.3),
Expand Down
13 changes: 11 additions & 2 deletions debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,20 @@ CONFFLAGS = \
-Dprofiler=false \
-Dremote_desktop=false

ifneq ($(DEB_HOST_ARCH_OS),linux)
ifeq ($(DEB_HOST_ARCH_OS),linux)
CONFFLAGS += \
-Degl_device=true\
-Dwayland=true \
-Dwayland_eglstream=true \
-Dnative_backend=true
else
CONFFLAGS += \
-Dudev=false \
-Dcore_tests=false \
-Dlibwacom=false
-Dlibwacom=false \
-Dwayland=false \
-Dnative_backend=false \
-Ddefault_driver=gl

This comment has been minimized.

Copy link
@Fantu

Fantu Jan 20, 2024

Contributor

@mtwebster -Ddefault_driver=gl is not needed here as already set it on all except arm archs

endif

ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH),armel armhf))
Expand Down
12 changes: 4 additions & 8 deletions meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -161,8 +161,7 @@ if have_gles2
endif
endif

#have_wayland = get_option('wayland')
have_wayland = false
have_wayland = get_option('wayland')

if have_wayland
wayland_server_dep = dependency('wayland-server', version: wayland_server_req)
Expand All @@ -182,8 +181,7 @@ if have_libgudev
gudev_dep = dependency('gudev-1.0', version: gudev_req)
endif

# have_native_backend = get_option('native_backend')
have_native_backend = false
have_native_backend = get_option('native_backend')

if have_native_backend
libdrm_dep = dependency('libdrm')
Expand All @@ -210,11 +208,9 @@ if have_native_backend
endif
endif

#have_egl_device = get_option('egl_device')
have_egl_device = false
have_egl_device = get_option('egl_device')

#have_wayland_eglstream = get_option('wayland_eglstream')
have_wayland_eglstream = false
have_wayland_eglstream = get_option('wayland_eglstream')

if have_wayland_eglstream
wayland_eglstream_protocols_dep = dependency('wayland-eglstream-protocols')
Expand Down
44 changes: 43 additions & 1 deletion meson_options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,36 @@ option('glx',
description: 'Enable GLX support'
)

option('wayland',
type: 'boolean',
value: true,
description: 'Enable Wayland support'
)

option('native_backend',
type: 'boolean',
value: true,
description: 'Enable the native backend'
)

option('remote_desktop',
type: 'boolean',
value: true,
description: 'Enable remote desktop and screen cast support'
)

option('egl_device',
type: 'boolean',
value: false,
description: 'Enable EGLDevice and EGLStream renderer support'
)

option('wayland_eglstream',
type: 'boolean',
value: false,
description: 'Enable Wayland EGLStream support client support'
)

option('udev',
type: 'boolean',
value: true,
Expand Down Expand Up @@ -120,5 +144,23 @@ option('verbose',
option('default_driver',
type: 'combo',
choices: ['auto', 'gl', 'gl3', 'gles2', 'nop'],
value: 'gl'
value: 'auto'
)

option('xwayland_path',
type: 'string',
value: '',
description: 'Path to Xwayland executable'
)

option('xwayland_grab_default_access_rules',
type: 'string',
value: 'gnome-boxes,remote-viewer,virt-viewer,virt-manager,vinagre,vncviewer,Xephyr',
description: 'Comma delimited list of applications ressources or class allowed to issue X11 grabs in Xwayland'
)

option('xwayland_initfd',
type: 'feature',
value: 'auto',
description: 'Whether -initfd argument is passed to Xwayland to guarantee services (e.g. gsd-xsettings) startup before applications'
)

1 comment on commit bc10efe

@Fantu
Copy link
Contributor

@Fantu Fantu commented on bc10efe Jan 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mtwebster if I'm not wrong is needed to add of libwayland-dev to libmuffin-dev deps but is missed

Please sign in to comment.