Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FTBFS with --enable-wayland: Comparison operator but no version after package name 'gdk-wayland-3.0' #361

Open
bobby285271 opened this issue Feb 23, 2024 · 6 comments

Comments

@bobby285271
Copy link

Expected behaviour

Building with explicit --enable-wayland succeeds

Actual behaviour

This line:

WAYLAND_DEPS="gtk-layer-shell-0 >= $GTK_LAYER_SHELL_REQUIRED_VERSION wayland-client gdk-wayland-3.0 >= $GDK_WAYLAND_REQUIRED_VERSION"

But neither GTK_LAYER_SHELL_REQUIRED_VERSION nor GDK_WAYLAND_REQUIRED_VERSION is set anywhere (also searched on GitHub to make sure it is not set elsewhere),

$ grep -inr 'GTK_LAYER_SHELL_REQUIRED_VERSION' 
configure.ac:239:WAYLAND_DEPS="gtk-layer-shell-0 >= $GTK_LAYER_SHELL_REQUIRED_VERSION wayland-client gdk-wayland-3.0 >= $GDK_WAYLAND_REQUIRED_VERSION"

$ grep -inr 'GDK_WAYLAND_REQUIRED_VERSION'                     
configure.ac:239:WAYLAND_DEPS="gtk-layer-shell-0 >= $GTK_LAYER_SHELL_REQUIRED_VERSION wayland-client gdk-wayland-3.0 >= $GDK_WAYLAND_REQUIRED_VERSION"

The build complains:

checking for gtk-layer-shell-0 >=  wayland-client gdk-wayland-3.0 >= ... no
configure: error: Package requirements (gtk-layer-shell-0 >=  wayland-client gdk-wayland-3.0 >= ) were not met:

Comparison operator but no version after package name 'gdk-wayland-3.0' in file '(command line arguments)'

The --enable-wayland build succeeds after I removed >= $GTK_LAYER_SHELL_REQUIRED_VERSION and >= $GDK_WAYLAND_REQUIRED_VERSION so I don't think needed libraries (or versions) are missing

Steps to reproduce the behaviour

Build with explicit --enable-wayland (I use release tarballs)

MATE general version

1.28

Package version

1.28

Linux Distribution

NixOS

Link to bugreport of your Distribution (requirement)

(I am the packager?)

@lukefromdc
Copy link
Member

Odd that this didn't fail unconditionally. All my tests that worked but should NOT have, I just submitted
#362
to fix this.

@raveit65
Copy link
Member

raveit65 commented Feb 24, 2024

I am still wondering about this report.
I built successful mate-utils-1.28.0 with --enable-wayland flag for fedora https://koji.fedoraproject.org/koji/taskinfo?taskID=113969119
I used these BuildRequires and configure options:

BuildRequires: desktop-file-utils
BuildRequires: e2fsprogs-devel
BuildRequires: gtk-layer-shell-devel
BuildRequires: hardlink
BuildRequires: libcanberra-devel
BuildRequires: libgtop2-devel
BuildRequires: libudisks2-devel
BuildRequires: libX11-devel
BuildRequires: libXmu-devel
BuildRequires: make
BuildRequires: mate-common
BuildRequires: mate-desktop-devel
BuildRequires: mate-panel-devel
BuildRequires: mesa-libGL-devel
BuildRequires: popt-devel
BuildRequires: usermode
BuildRequires: yelp-tools

%if 0%{?fedora} && 0%{?fedora} >= 29
BuildRequires: gcc-c++
%endif

%build
%configure \
    --disable-static            \
    --disable-schemas-compile   \
    --enable-gdict-applet       \
    --enable-in-process         \
    --enable-wayland            \
    --enable-gtk-doc-html       \
    --enable-ipv6=yes           \
    --enable-maintainer-flags=no  \
    --with-x

Please show us your config.
What package manager is used in NixOs ?

@lukefromdc
Copy link
Member

I did find that GTK_LAYER_SHELL_REQUIRED_VERSION was not being defined but being used, so that might be specific to autotools version, compiler version, etc. Thus my PR

@bobby285271
Copy link
Author

Triggered a build on our CI: NixOS/nixpkgs@375421f, here is the build log: https://logs.ofborg.org/?attempt_id=c4d11f4c-ed6d-43e7-9656-eb0a36cf0ffb&key=nixos%2Fnixpkgs.289062

And by patching the undefined version requirements: NixOS/nixpkgs@1b9d35e, the build went fine: https://logs.ofborg.org/?key=nixos/nixpkgs.289062&attempt_id=34a829c3-b186-405d-b459-f650ec352df8

The build log can be fetched as below, click "Details" next to the mate.mate-utils on x86_64-linux item:

Then click "View more details on OfBorg" (below "Partial log")

@bobby285271
Copy link
Author

I searched where the Comparison operator but no version after package message comes from and actually it comes from pkg-config. So this should explain why this cannot be reproduced on Fedora/Debian - https://fedoraproject.org/wiki/Changes/pkgconf_as_system_pkg-config_implementation is not implemented on NixOS.

@lukefromdc
Copy link
Member

#362 is still waiting for a review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants