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

meson 0.60 #34059

Merged
merged 41 commits into from Dec 16, 2021
Merged

meson 0.60 #34059

merged 41 commits into from Dec 16, 2021

Conversation

paper42
Copy link
Member

@paper42 paper42 commented Nov 13, 2021

Testing the changes

  • I tested the changes in this PR: briefly|NO

I ran the configure phase on all packages with meson build_style, currently broken builds:

regressions from 0.59.4

  • igt-gpu-tools
Running compile:
Working directory:  /builddir/igt-gpu-tools-1.25/build/meson-private/tmpv83fdo1n
Command line:  cc /builddir/igt-gpu-tools-1.25/build/meson-private/tmpv83fdo1n/testfile.c -o /builddir/igt-gpu-tools-1.25/build/meson-private/tmpv83fdo1n/output.exe -fstack-clash-protection -D_FORTIFY_SOURCE=2 -mtune=generic -O2 -pipe -D_FILE_OFFSET_BITS=64 -O0 -std=gnu11 -D_GNU_SOURCE -Wl,-z,relro -Wl,-z,now -Wl,--as-needed 

Code:
 #include <sys/mman.h>
#include <limits.h>

        #if defined __stub_memfd_create || defined __stub___memfd_create
        fail fail fail this function is not going to work
        #endif
        
int main(void) {
            void *a = (void*) &memfd_create;
            long long b = (long long) a;
            return (int) b;
        }
Compiler stdout:
 
Compiler stderr:
 In file included from /usr/include/sys/mman.h:22,
                 from /builddir/igt-gpu-tools-1.25/build/meson-private/tmpv83fdo1n/testfile.c:1:
/usr/include/features.h:397:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  397 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~

Checking for function "memfd_create" : YES 
Configuring config.h using configuration
Program /usr/bin/meson found: YES (/usr/bin/meson)

lib/meson.build:131:4: ERROR: Function does not take positional arguments.
  • NetworkManager
=> NetworkManager-1.32.12_1: running pre-pkg hook: 04-generate-runtime-deps ...
   SONAME: libgio-2.0.so.0 <-> glib>=2.70.0_1
   SONAME: libgobject-2.0.so.0 <-> glib>=2.70.0_1
   SONAME: libglib-2.0.so.0 <-> glib>=2.70.0_1
   SONAME: libgmodule-2.0.so.0 <-> glib>=2.70.0_1
   SONAME: libdl.so.2 <-> glibc>=2.32_1
   SONAME: libndp.so.0 <-> libndp>=1.3_1
   SONAME: libudev.so.1 <-> eudev-libudev>=1.6_1
   SONAME: libelogind.so.0 <-> libelogind>=238.1_2
   SONAME: libcurl.so.4 <-> libcurl>=7.75.0_2
   SONAME: libpsl.so.5 <-> libpsl>=0.20.2_1
   SONAME: libsmime3.so <-> nss>=3.12.4_1
   SONAME: libnss3.so <-> nss>=3.12.4_1
   SONAME: libnspr4.so <-> nspr>=4.8_1
   SONAME: libpthread.so.0 <-> glibc>=2.32_1
   SONAME: libc.so.6 <-> glibc>=2.32_1
   SONAME: ld-linux-x86-64.so.2 <-> glibc>=2.32_1
   SONAME: libnm.so.0 <-> libnm-1.32.12_1
   SONAME: libnewt.so.0.52 <-> newt>=0.52.18_1
   SONAME: libreadline.so.8 <-> libreadline8>=8.0_1
find: warning: ‘-name’ matches against basenames only, but the given pattern contains a directory separator (‘/’), thus the expression will evaluate to false all the time.  Did you mean ‘-wholename’?
   SONAME: src/core/devices/wwan/libnm-wwan.so <-> UNKNOWN PKG PLEASE FIX!
   SONAME: libmm-glib.so.0 <-> libmm-glib>=1.0.0_1
=> ERROR: NetworkManager-1.32.12_1: cannot guess required shlibs, aborting!
  • vala-panel{,-appmenu}
The Meson build system
Version: 0.60.1
Source dir: /builddir/vala-panel-0.5.0
Build dir: /builddir/vala-panel-0.5.0/build
Build type: native build
Project name: vala-panel
Project version: 0.5.0
C compiler for the host machine: cc (gcc 10.2.1 "cc (GCC) 10.2.1 20201203")
C linker for the host machine: cc ld.bfd 2.35.1
Vala compiler for the host machine: valac (valac 0.52.4)
Host machine cpu family: x86_64
Host machine cpu: x86_64
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency glib-2.0 found: YES 2.70.0
Run-time dependency gio-2.0 found: YES 2.70.0
Run-time dependency gio-unix-2.0 found: YES 2.70.0
Run-time dependency gmodule-2.0 found: YES 2.70.0
Run-time dependency gtk+-3.0 found: YES 3.24.30
Run-time dependency gdk-x11-3.0 found: YES 3.24.30
Run-time dependency gdk-wayland-3.0 found: YES 3.24.30
Run-time dependency gtk-layer-shell-0 found: YES 0.6.0
Library m found: YES
Configuring config.h using configuration
Program /usr/bin/meson found: YES (/usr/bin/meson)

po/meson.build:1:5: ERROR: Tried to create target "vala-panel-nb.mo", but a target of that name already exists.
  • gnome-settings-daemon

imported an upstream patch

The Meson build system
Version: 0.60.1
Source dir: /builddir/gnome-settings-daemon-40.0.1
Build dir: /builddir/gnome-settings-daemon-40.0.1/build
Build type: native build
Project name: gnome-settings-daemon
Project version: 40.0.1
C compiler for the host machine: cc (gcc 10.2.1 "cc (GCC) 10.2.1 20201203")
C linker for the host machine: cc ld.bfd 2.35.1
Host machine cpu family: x86_64
Host machine cpu: x86_64

meson.build:87:3: ERROR: The `==` operator of str does not accept objects of type bool (True)
  • libsixel

This will be fixed in meson 0.60.2, I imported a patch for now - mesonbuild/meson#9530

=> xbps-src: updating repositories for host (x86_64)...
The Meson build system
Version: 0.60.1
Source dir: /builddir/libsixel-1.10.3
Build dir: /builddir/libsixel-1.10.3/build
Build type: native build
Project name: libsixel
Project version: 1.10.3
C compiler for the host machine: cc (gcc 10.2.1 "cc (GCC) 10.2.1 20201203")
C linker for the host machine: cc ld.bfd 2.35.1
Host machine cpu family: x86_64
Host machine cpu: x86_64
Checking for function "unreachable" : YES 
Compiler for C supports arguments -Wformat=2: YES 
Compiler for C supports arguments -Wsign-conversion: YES 
Compiler for C supports arguments -Wuninitialized: YES 
Compiler for C supports arguments -Wstrict-overflow: YES 
Compiler for C supports arguments -Wshadow: YES 
Compiler for C supports arguments -Wdouble-promotion: YES 
Compiler for C supports arguments -Wswitch-default: YES 
Compiler for C supports arguments -Wunused-function: YES 
Compiler for C supports arguments -Wunused-but-set-variable: YES 
Compiler for C supports arguments -Bsymbolic: YES 
Library m found: YES
Checking for function "malloc" : YES 
Checking for function "realloc" : YES 
Checking for function "memset" : YES 
Checking for function "getopt_long" : YES 
Has header "assert.h" : YES 
Has header "math.h" : YES 
Has header "ctype.h" : YES 
Has header "memory.h" : YES 
Has header "string.h" : YES 
Has header "unistd.h" : YES 
Has header "stdint.h" : YES 
Has header "getopt.h" : YES 
Has header "sys/types.h" : YES 
Has header "sys/stat.h" : YES 
Has header "fcntl.h" : YES 
Has header "errno.h" : YES 
Has header "limits.h" : YES 
Has header "sys/time.h" : YES 
Has header "time.h" : YES 
Has header "signal.h" : YES 
Has header "sys/select.h" : YES 
Has header "sys/signal.h" : YES 
Has header "termios.h" : YES 
Has header "sys/ioctl.h" : YES 
Has header "inttypes.h" : YES 
Dependency gdk-pixbuf-2.0 skipped: feature gdk-pixbuf2 disabled
Library gd found: NO
Dependency libcurl skipped: feature libcurl disabled
Found pkg-config: /usr/bin/pkg-config (0.29.2)
Run-time dependency libjpeg found: YES 2.1.1
Run-time dependency libpng found: YES 1.6.37
Program python2 found: NO (disabled by: python2 )
Configuring config.h using configuration
Configuring sixel.h using configuration
Program bash found: YES (/usr/bin/bash)
Configuring libsixel-config using configuration
meson.build:161: WARNING: Perl, PHP and Ruby modules are available but not installed by Meson. If you want them, please refer to their individual installation directories for instructions after building libsixel.

meson.build:163:0: ERROR: Format placeholder @9@ out of range.

unrelated build failures

  • gst-plugins-base1
FAILED: gst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p/gstglwindow.c.o 
cc -Igst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p -I. -I.. -Igst-libs -I../gst-libs -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/orc-0.4 -I/usr/include/gudev-1.0 -I/usr/include/libdrm -flto=auto -fdiagnostics-color=always -DNDEBUG -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -fvisibility=hidden -fno-strict-aliasing -DG_DISABLE_CAST_CHECKS -Wmissing-declarations -Wredundant-decls -Wundef -Wwrite-strings -Wformat -Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar -Wvla -Wpointer-arith -Wmissing-prototypes -Wdeclaration-after-statement -fstack-clash-protection -D_FORTIFY_SOURCE=2 -mtune=generic -O2 -pipe -fPIC -pthread -DHAVE_CONFIG_H -DBUILDING_GST_GL -MD -MQ gst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p/gstglwindow.c.o -MF gst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p/gstglwindow.c.o.d -o gst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p/gstglwindow.c.o -c ../gst-libs/gst/gl/gstglwindow.c
In file included from ../gst-libs/gst/gl/gstglwindow.c:54:
../gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h:25:10: fatal error: xdg-shell-client-protocol.h: No such file or directory
   25 | #include "xdg-shell-client-protocol.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
[235/783] Compiling C object gst-libs/gst/gl/libgstgl-1.0.so.0.1804.0.p/egl_gstegl.c.o
ninja: build stopped: subcommand failed.

the meson musl test failure is a bug known upstream - mesonbuild/meson#8283

[skip ci]

@paper42 paper42 force-pushed the meson-0.60 branch 2 times, most recently from c6ebcec to 44bb4fa Compare November 14, 2021 13:06
@eli-schwartz
Copy link

@eli-schwartz
Copy link

gst-plugins-base1

Can be fixed by upgrading from patch release .4 to patch release .5

@paper42 paper42 marked this pull request as ready for review December 16, 2021 23:25
@paper42 paper42 merged commit 350986e into void-linux:master Dec 16, 2021
@paper42 paper42 deleted the meson-0.60 branch December 16, 2021 23:26
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 17, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants