Bug#1065816: weston: Dependency neatvnc found: NO found 0.8.0 but need: '< 0.8.0' ; matched: '>= 0.7.0'

2024-03-10 Thread Simon McVittie
Control: block 1036884 by -1

On Sun, 10 Mar 2024 at 10:37:51 +0100, Aurelien Jarno wrote:
> weston fails to build in unstable since the upload of neatvnc in version
> 8.0. From my build log on amd64:
...
> | Dependency neatvnc found: NO found 0.8.0 but need: '< 0.8.0' ; matched: '>= 
> 0.7.0'

This is important for the 64-bit time_t transition, because weston is
part of that transition, and also because packages like gtk4 use weston in
headless mode to test their Wayland backends. This could be mitigated by
temporarily making gtk4 skip its Wayland tests on 32-bit architectures,
but with gtk4 hat on, I would not be comfortable with doing that in
the long term, because in practice it seems to be inevitable that
functionality that isn't tested doesn't actually work.

Looking at the recent neatvnc upload, I was surprised to see that its
former maintainer updated it to a new upstream release in the same upload
as orphaning it (#1065738), and also updated the closely-related wayvnc
package to a new upstream release that matches neatvnc.

I also noticed that neatvnc 0.8.0 has an ABI break without bumping the
SONAME (#1065824), although that might be ignorable since nothing in
Debian seems to use the affected symbol.

I think the options here in the short term are:

1. adapt weston to support neatvnc 0.8.0, if it's straightforward to do so;
2. revert neatvnc to 0.8.0+really0.7.1+dfsg and wayvnc to 0.8.0+really0.7.2,
   and revisit this later, when we are *not* in the middle of a transition
   that touches thousands of packages;
3. temporarily disable the VNC backend in weston, and revisit this later

I would personally be very tempted by (2.) since it seems like the option
with least risk of regressions when compared with what's currently in
trixie, but I have no particular knowledge of these packages, so it
would be better if the maintainers of weston and/or wayvnc could adopt
neatvnc and handle this in whatever way they prefer. If this situation
is not resolved then I might do the revert (2.), by QA-uploading neatvnc
and NMU'ing wayvnc.

Thanks,
smcv



Bug#1065816: weston: Dependency neatvnc found: NO found 0.8.0 but need: '< 0.8.0' ; matched: '>= 0.7.0'

2024-03-10 Thread Aurelien Jarno
Source: weston
Version: 13.0.0-4
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)

Dear maintainer,

weston fails to build in unstable since the upload of neatvnc in version
8.0. From my build log on amd64:

| Determining dependency 'neatvnc' with pkg-config executable 
'/usr/bin/pkg-config'
| env[PKG_CONFIG_PATH]: 
| env[PKG_CONFIG]: /usr/bin/pkg-config
| ---
| Called: `/usr/bin/pkg-config --modversion neatvnc` -> 0
| stdout:
| 0.8.0
| ---
| env[PKG_CONFIG_PATH]: 
| env[PKG_CONFIG]: /usr/bin/pkg-config
| ---
| Called: `/usr/bin/pkg-config --cflags neatvnc` -> 0
| stdout:
| -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/p11-kit-1 
-I/usr/include/x86_64-linux-gnu
| ---
| env[PKG_CONFIG_ALLOW_SYSTEM_LIBS]: 1
| env[PKG_CONFIG_PATH]: 
| env[PKG_CONFIG]: /usr/bin/pkg-config
| ---
| Called: `/usr/bin/pkg-config --libs neatvnc` -> 0
| stdout:
| -L/usr/lib/x86_64-linux-gnu -lneatvnc
| ---
| env[PKG_CONFIG_PATH]: 
| env[PKG_CONFIG]: /usr/bin/pkg-config
| ---
| Called: `/usr/bin/pkg-config --libs neatvnc` -> 0
| stdout:
| -lneatvnc
| ---
| Dependency neatvnc found: NO found 0.8.0 but need: '< 0.8.0' ; matched: '>= 
0.7.0'
| CMake binary for host machine is cached as not found
| CMake binary for machine host machine not found. Giving up.
| Run-time dependency neatvnc found: NO (tried pkgconfig and cmake)
| Looking for a fallback subproject for the dependency neatvnc
| Automatic wrap-based subproject downloading is disabled
| Subproject  neatvnc is buildable: NO (disabling)
| Dependency neatvnc from subproject neatvnc found: NO (subproject failed to 
configure)
| 
| ../libweston/backend-vnc/meson.build:8:1: ERROR: Problem encountered: VNC 
backend requires neatvnc which was not found. Or, you can use 
'-Dbackend-vnc=false'.
| dh_auto_configure: error: cd obj-x86_64-linux-gnu && 
DEB_PYTHON_INSTALL_LAYOUT=deb LC_ALL=C.UTF-8 meson setup .. 
--wrap-mode=nodownload --buildtype=plain --prefix=/usr --sysconfdir=/etc 
--localstatedir=/var --libdir=lib/x86_64-linux-gnu -Dpython.bytecompile=-1 
-Dbackend-rdp=true -Dbackend-vnc=true -Dscreenshare=true -Dsystemd=true 
returned exit code 1
| make[1]: *** [debian/rules:18: override_dh_auto_configure] Error 25
| make[1]: Leaving directory '/<>'
| make: *** [debian/rules:44: binary] Error 2
| dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 
2


A full build log is also available here:
https://buildd.debian.org/status/fetch.php?pkg=weston=riscv64=13.0.0-4%2Bb2=1710049432=0

Regards
Aurelien