diff options
author | William A. Kennington III <wak@google.com> | 2021-06-02 22:28:27 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2021-06-07 18:15:22 +0300 |
commit | ac69b488c6ecf0e6df8321218006f23211c45e46 (patch) | |
tree | 899942e99c3be5138dd4784f939f0e8b717f90b9 /poky/meta/recipes-devtools/meson | |
parent | ee32beb0333105ea120420a3556a752079ef5437 (diff) | |
download | openbmc-ac69b488c6ecf0e6df8321218006f23211c45e46.tar.xz |
poky: subtree update:2dcd1f2a21..9d1b332292
Alejandro Hernandez Samaniego (2):
baremetal-helloworld: Enable RISC-V 64 port
baremetal-image: Fix post process command rootfs_update_timestamp
Alexander Kanavin (94):
python3: add markdown/smartypants/typogrify modules
gi-docgen: add a recipe and class
gdk-pixbuf/pango: replace gtk-doc with gi-docgen
vala: upgrade 0.50.4 -> 0.52.2
xkbcomp: upgrade 1.4.4 -> 1.4.5
stress-ng: upgrade 0.12.05 -> 0.12.06
xserver-xorg: upgrade 1.20.10 -> 1.20.11
xorgproto: upgrade 2020.1 -> 2021.3
dpkg: update 1.20.7.1 -> 1.20.9
puzzles: update to latest revision
cmake: update 3.19.5 -> 3.20.1
meson: update 0.57.1 -> 0.57.2
systemd: backport a patch to avoid unnecessary rsync dependency with latest meson
pulseaudio: unbreak build with latest meson
libdnf: upgrade 0.58.0 -> 0.62.0
bluez5: upgrade 5.56 -> 5.58
libxkbcommon: update 1.0.3 -> 1.2.1
libgudev: update 234 -> 236
vulkan-samples: update to latest revision
gnupg: upgrade 2.2.27 -> 2.3.1
virglrenderer: update 0.8.2 -> 0.9.1
webkitgtk: update 2.30.6 -> 2.32.0
acl: upgrade 2.2.53 -> 2.3.1
bind: upgrade 9.16.12 -> 9.16.13
bison: upgrade 3.7.5 -> 3.7.6
createrepo-c: upgrade 0.17.0 -> 0.17.2
cronie: upgrade 1.5.5 -> 1.5.7
dnf: upgrade 4.6.0 -> 4.7.0
e2fsprogs: upgrade 1.46.1 -> 1.46.2
gnu-efi: upgrade 3.0.12 -> 3.0.13
systemd-boot: backport a fix to address failures with new gnu-efi
gobject-introspection: upgrade 1.66.1 -> 1.68.0
gtk+3: upgrade 3.24.25 -> 3.24.28
harfbuzz: upgrade 2.7.4 -> 2.8.0
less: upgrade 563 -> 581
libfm: upgrade 1.3.1 -> 1.3.2
libinput: upgrade 1.16.4 -> 1.17.1
libwpe: upgrade 1.8.0 -> 1.10.0
libxres: upgrade 1.2.0 -> 1.2.1
linux-firmware: upgrade 20210208 -> 20210315
pango: upgrade 1.48.2 -> 1.48.4
piglit: upgrade to latest revision
pkgconf: upgrade 1.7.3 -> 1.7.4
python3-hypothesis: upgrade 6.2.0 -> 6.9.1
python3-importlib-metadata: upgrade 3.4.0 -> 3.10.1
python3-pytest: upgrade 6.2.2 -> 6.2.3
python3-setuptools-scm: upgrade 5.0.1 -> 6.0.1
x264: upgrade to latest revision
ptest: add a test for orphaned ptests, and restore ones found by it
swig: fix upstream version check
liberation-fonts: fix upstream version check
Revert "go: Use dl.google.com for SRC_URI"
powertop: update 2.13 -> 2.14
mesa: add lmsensors PACKAGECONFIG
ffmpeg: update 4.3.2 -> 4.4
qemu: use 4 cores in qemu guests
avahi: disable gtk bits
gdk-pixbuf: rewrite the cross-build support for tests
gnome: drop upstream even condition from a few recipes
expat: upgrade 2.2.10 -> 2.3.0
meson.bbclass: split python routines into a separate class
gstreamer1.0-plugins-base: backport a patch to fix meson 0.58 builds
meson: update 0.57.2 -> 0.58.0
qemu: backport a patch to fix meson 0.58 builds
nativesdk-meson: correctly set cpu_family
bitbake: fetch2/wget: when checking latest versions, consider all numerical directories
mklibs: remove recipes and class
local.conf: Drop support for mklibs
u-boot: upgrade 2021.01 -> 2021.04
gdk-pixbuf: update a patch status
systemd: update 247.6 -> 248.3
systemd-conf: do not version in lockstep with systemd
gnu-config: update to latest revision
mmc-utils: update to latest revision
python3-smartypants: fix upstream version check
at: upgrade 3.2.1 -> 3.2.2
gnomebase: trim the SRC_URI directory from the back
gsettings-desktop-schemas: upgrade 3.38.0 -> 40.0
igt-gpu-tools: upgrade 1.25 -> 1.26
mesa: update 21.0.3 -> 21.1.1
vulkan-samples: update to latest revision
libgpg-error: update 1.41 -> 1.42
webkitgtk: update 2.32.0 -> 2.32.1
glib-2.0: update 2.68.1 -> 2.68.2
apt: upgrade 2.2.2 -> 2.2.3
cmake: update 3.20.1 -> 3.20.2
libdnf: update 0.62.0 -> 0.63.0
harfbuzz: update 2.8.0 -> 2.8.1
curl: update 7.76.0 -> 7.76.1
systemtap: update 4.4 -> 4.5
wayland: package target binaries into -tools, not into -dev
ptest: add newly discovered missing runtime dependencies across recipes
images: remove sato/weston ptest images
images: add ptest images based on core-image-minimal
Andreas Müller (1):
gstreamer1.0-plugins-good: fix build with gcc11
Andrej Valek (1):
expat: upgrade 2.3.0 -> 2.4.1
Anuj Mittal (1):
lsb-release: fix reproducibility failure
Armin Kuster (5):
bitbake: hashserv/server.py: drop unused imports
bitbake: hashserver/client.py: drop unused imports
poky.yaml: fedora33: add missing pkgs
systemctl: Stop tracebacks use formated error messages
package_manager/rpm: decode systemctl failures
Bastian Krause (1):
ccache: version bump 4.2.1 -> 4.3
Bruce Ashfield (18):
linux-yocto/5.4: qemuppc32: reduce serial shutdown issues
kern-tools: Kconfiglib: add support for bare 'modules' keyword
lttng-modules: update devupstream to v2.13-rc
lttng-modules: update to v2.12.6
kernel-yocto: provide debug / summary information for metadata
linux-yocto/5.10: update to v5.10.35
linux-yocto/5.4: update to v5.4.117
linux-yocto/5.10: ktypes/standard: disable obsolete crypto options by default
linux-yocto/5.10: update to v5.10.36
linux-yocto/5.4: update to v5.4.118
linux-yocto/5.10: update to v5.10.37
linux-yocto/5.4: update to v5.4.119
kernel-devsrc: adjust NM and OBJTOOL variables for target
linux-yocto/5.10: update to v5.10.38
linux-yocto-dev: bump to v5.13+
linux-yocto/5.4: update to v5.4.120
linux-yocto/5.10: update to v5.10.41
linux-yocto/5.4: update to v5.4.123
Carlos Rafael Giani (1):
ffmpeg: Add libopus packageconfig
Changqing Li (2):
unfs3: correct configure option
pkgconfig: update SRC_URI
Chen Qi (3):
db: update CVE_PRODUCT
rt-tests: update SRCREV
xxhash: backport patch to fix special char problem
Daniel McGregor (3):
lib/oe/gpg_sign.py: Fix gpg verification
sstate: Ignore sstate signing key
bison: Make libtextstyle and libreadline optional
Daniel Wagenknecht (1):
kernel-dev: document KCONFIG_MODE
Douglas Royds (3):
Revert "icecc: Don't use icecc when INHIBIT_DEFAULT_DEPS is set"
icecc: Demote "could not get ICECC_CC" warning to note
icecc-create-env: Silence warning: invalid ICECC_ENV_EXEC
Drew Moseley (1):
manuals: fix a few incorrect option specifications.
Guillaume Champagne (1):
image-live.bbclass: order do_bootimg after do_rootfs
Joshua Watt (1):
zstd: Add patch to fix MinGW builds
Kai Kang (1):
grub2.inc: remove '-O2' from CFLAGS
Khem Raj (17):
swig: Upgrade to 4.0.2
python3-markdown: Upgrade to 3.3.4
ffmpeg: Fix build on mips
npth: Check for pthread_create for including lpthread
gcc: Add target gcc include search for musl config too
gcc: Extend .gccrelocprefix section support to musl configs
gcc: Refresh patch to fix patch fuzz
musl: Fix __NR_fstatat syscall name for riscv
libxfixes: Update to 6.0.0 release
xorgproto: Upgrade to 2021.4 release
glibc: Update to latest 2.33 branch
systemd: Fix 248.3 on musl
glibc: Enable memory tagging for aarch64
gcc: Update to latest on release/gcc-11 branch
apt: Add missing <array> header
ovmf: Fix VLA warnings with GCC 11
libucontext: Switch to meson build system
Martin Jansa (4):
gcc-sanitizers: Package up static hwasan files as well
webkitgtk: fix build without opengl in DISTRO_FEATURES
binutils: backport DWARF-5 support for gold
sstatesig.py: make it fatal error when sstate manifest isn't found
Michael Halstead (3):
releases: update to include 3.2.4
uninative: Upgrade to 3.2 (gcc11 support)
releases: update to include 3.3.1
Michael Opdenacker (8):
manuals: reduce verbosity with "worry about" expression
manuals: reduce verbosity related to "the following" expression
ref-manual: simplify style
kernel-dev manual: simplify style
dev-manual: simplify style
sdk-manual: simplify style and fix formating
overview-manual: simplify style and add missings references
manuals: simplify style
Mike Crowe (2):
npm.bbclass: Allow nodedir to be overridden by NPM_NODEDIR
libnotify: Make gtk+3 dependency optional
Ming Liu (4):
kernel-fitimage.bbclass: fix a wrong conditional check
initramfs-framework:rootfs: fix wrong indentions
kernel-fitimage.bbclass: drop unit addresses from bootscr sections
uboot-sign/kernel-fitimage: split generate_rsa_keys task
Nikolay Papenkov (1):
flex: correct license information
Nisha Parrakat (1):
squashfs-tools: package squashfs-fs.h
Peter Kjellerstedt (3):
libcap: Configure Make variables correctly without a horrible hack
util-linux.inc: Do not modify BPN
native.bbclass: Do not remove "-native" in the middle of recipe names
Petr Vorel (1):
ltp: Update to 20210524
Richard Purdie (92):
oeqa/qemurunner: Fix binary vs str issue
oeqa/qemurunner: Improve handling of run_serial for shutdown commands
ptest-packagelists: Add expat-ptest to fast ptests
puzzles: Upstream changed to main branch for development
grub2: Add CVE whitelist entries for issues fixed in 2.06
glibc: Document and whitelist CVE-2019-1010022-25
qemu: Exclude CVE-2017-5957 from cve-check
qemu: Exclude CVE-2007-0998 from cve-check
qemu: Exclude CVE-2018-18438 from cve-check
jquery: Exclude CVE-2007-2379 from cve-check
logrotate: Exclude CVE-2011-1548,1549,1550 from cve-check
openssh: Exclude CVE-2007-2768 from cve-check
ovmf: Improve reproducibility by enabling prefix mapping
bind: Exclude CVE-2019-6470 from cve-check
openssh: Exclude CVE-2008-3844 from cve-check
unzip: Exclude CVE-2008-0888 from cve-check
cpio: Exclude CVE-2010-4226 from cve-check
xinetd: Exclude CVE-2013-4342 from cve-check
ghostscript: Exclude CVE-2013-6629 from cve-check
bluez: Exclude CVE-2020-12352 CVE-2020-24490 from cve-check
tiff: Exclude CVE-2015-7313 from cve-check
ovmf: Disable lto to aid reproducibility
ovmf: Fix other reproducibility issues
rpm: Exclude CVE-2021-20271 from cve-check
coreutils: Exclude CVE-2016-2781 from cve-check
librsvg: Exclude CVE-2018-1000041 from cve-check
avahi: Exclude CVE-2021-26720 from cve-check
qemu: Set SMP to 4 cpus for arm/x86 only
qemuboot-x86: Switch to IvyBridge and q35 instead of pc
qemu-x86: Add commandline options to improve boot
sstate: Handle manifest 'corruption' issue
lttng-ust: Upgrade 2.12.1 -> 2.12.2
qemu: Upgrade 5.2.0 -> 6.0.0
python3-markupsafe: Upgrade 1.1.1 -> 2.0.0
python3-jinja2: Upgrade 2.11.3 -> 3.0.0
ofono: upgrade 1.31 -> 1.32
libnss-mdns: upgrade 0.14.1 -> 0.15
python3-git: upgrade 3.1.14 -> 3.1.17
bind: upgrade 9.16.13 -> 9.16.15
vala: upgrade 0.52.2 -> 0.52.3
libjpeg-turbo: upgrade 2.0.6 -> 2.1.0
btrfs-tools: upgrade 5.12 -> 5.12.1
python3-hypothesis: upgrade 6.9.1 -> 6.12.0
python3-numpy: upgrade 1.20.2 -> 1.20.3
gtk+3: upgrade 3.24.28 -> 3.24.29
sudo: upgrade 1.9.6p1 -> 1.9.7
stress-ng: upgrade 0.12.06 -> 0.12.08
less: upgrade 581 -> 586
libtirpc: upgrade 1.3.1 -> 1.3.2
libinput: upgrade 1.17.1 -> 1.17.2
zstd: upgrade 1.4.9 -> 1.5.0
hdparm: upgrade 9.61 -> 9.62
libxkbcommon: upgrade 1.2.1 -> 1.3.0
spirv-tools: upgrade 2020.7 -> 2021.1
diffoscope: upgrade 172 -> 175
mpg123: upgrade 1.26.5 -> 1.27.2
sqlite3: upgrade 3.35.3 -> 3.35.5
wayland-protocols: upgrade 1.20 -> 1.21
shaderc: upgrade 2020.5 -> 2021.0
wpebackend-fdo: upgrade 1.8.3 -> 1.8.4
libxcrypt-compat: upgrade 4.4.19 -> 4.4.20
Revert "cml1.bbclass: Return sorted list of cfg files"
bitbake: server/process: Handle error in heartbeat funciton in OOM case
glibc: Add 8GB VM usage cap for usermode test suite
cve-extra-exclusions.inc: add exclusion list for intractable CVE's
rpm: Drop CVE exclusion as database fixed to handle
cve-extra-exclusions: Fix typos
grub: Exclude CVE-2019-14865 from cve-check
cve-extra-exclusions.inc: Clean up merged CPE updates
ltp: Disable problematic tests causing autobuilder hangs
python3-setuptools: upgrade 56.0.0 -> 56.2.0
distro/maintainers: Fix up the ptest image entries
oeqa/runtime/rpm: Drop log message counting test component
linux-firmware: upgrade 20210315 -> 20210511
libxcrypt: Upgrade 4.4.20 -> 4.4.22
iproute2: upgrade 5.11.0 -> 5.12.0
libx11: upgrade 1.7.0 -> 1.7.1
python3-hypothesis: upgrade 6.12.0 -> 6.13.7
pango: upgrade 1.48.4 -> 1.48.5
python3-importlib-metadata: upgrade 4.0.1 -> 4.3.0
libmodulemd: upgrade 2.12.0 -> 2.12.1
vte: upgrade 0.64.0 -> 0.64.1
libinput: upgrade 1.17.2 -> 1.17.3
gi-docgen: upgrade 2021.5 -> 2021.6
kmod: upgrade 28 -> 29
xorgproto: upgrade 2021.4 -> 2021.4.99.1
libpcre2: upgrade 10.36 -> 10.37
libepoxy: upgrade 1.5.5 -> 1.5.8
python3-jinja2: upgrade 3.0.0 -> 3.0.1
curl: upgrade 7.76.1 -> 7.77.0
python3-setuptools: upgrade 56.2.0 -> 57.0.0
oeqa/qemurunner: Improve timeout handling
Richard Weinberger (1):
Add support for erofs filesystems
Robert Joslyn (3):
liberation-fonts: Update to 2.1.4
epiphany: Update to 40.1
btrfs-tools: Update to 5.12
Robert P. J. Day (8):
sdk-manual: couple minor fixes in using.rst
sdk-manual: various cleanups to intro.rst
ref-manual: delete references to dead LSB compliance
ref-manual: delete extraneous back quote
image.bbclass: fix comment "pacackages" -> "packages"
meta/lib/oe/rootfs.py: Fix typo "Restoreing" -> "Restoring"
bitbake.conf: alphabetize contents of ASSUME_PROVIDED
ref-manual: add links to some variables in glossary
Romain Naour (1):
dejagnu: needs expect at runtime
Ross Burton (12):
cairo: backport patch for CVE-2020-35492
libnotify: whitelist CVE-2013-7381 (specific to the NodeJS bindings)
builder: whitelist CVE-2008-4178 (a different builder)
libarchive: disable redundant libxml2 PACKAGECONFIG
meson: update patch status
cups: whitelist CVE-2021-25317
libsolv: add missing db dependency
rpm: turn Berkeley DB hard dependency into PACKAGECONFIG
python3: update status on upstreamed patch
ref-manual: Ubuntu 20.04 is also LTS
package_rpm: pass XZ_THREADS to rpm
gcc: revert libstc++-gdb.py installation changes
Samuli Piippo (3):
gcc-cross-canadian: add symlinks for ld.bfd and ld.gold
libarchive: enable zstd support
cmake-native: enabled zstd support
Stefan Ghinea (1):
boost: fix do_fetch failure
Steve Sakoman (1):
expat: set CVE_PRODUCT
Tony Tascioglu (3):
libxml2: Reformat runtest.patch
libxml2: Add bash dependency for ptests.
libxml2: Update to 2.9.12
Trevor Gamblin (2):
python3: upgrade 3.9.4 -> 3.9.5
bind: upgrade 9.16.15 -> 9.16.16
Ulrich Ölmann (1):
local.conf.sample: fix typo
Vinícius Ossanes Aquino (1):
lttng-modules: backport patches to fix build against 5.12+ kernel
Yann Dirson (1):
linux-firmware: include all relevant files in -bcm4356
hongxu (1):
gdk-pixbuf: fix nativesdk do_configure failed
wangmy (21):
python3-pygments: upgrade 2.8.1 -> 2.9.0
at-spi2-core: upgrade 2.40.0 -> 2.40.1
ell: upgrade 0.39 -> 0.40
kexec-tools: upgrade 2.0.21 -> 2.0.22
go: upgrade 1.16.3 -> 1.16.4
python3-attrs: upgrade 20.3.0 -> 21.2.0
python3-six: upgrade 1.15.0 -> 1.16.0
vulkan-samples: update to latest revision
vulkan-headers: upgrade 1.2.170.0 -> 1.2.176.0
vulkan-tools: upgrade 1.2.170.0 -> 1.2.176.0
vulkan-loader: upgrade 1.2.170.0 -> 1.2.176.0
distcc: upgrade 3.3.5 -> 3.4
libdrm: upgrade 2.4.105 -> 2.4.106
libidn2: upgrade 2.3.0 -> 2.3.1
libtasn1: upgrade 4.16.0 -> 4.17.0
python3-libarchive-c: upgrade 2.9 -> 3.0
python3-markupsafe: upgrade 2.0.0 -> 2.0.1
python3-more-itertools: upgrade 8.7.0 -> 8.8.0
python3-pytest: upgrade 6.2.3 -> 6.2.4
logrotate: upgrade 3.18.0 -> 3.18.1
stress-ng: upgrade 0.12.08 -> 0.12.09
zhengruoqin (10):
busybox: upgrade 1.33.0 -> 1.33.1
rng-tools: upgrade 6.11 -> 6.12
rpcbind: upgrade 1.2.5 -> 1.2.6
sysklogd: upgrade 2.2.2 -> 2.2.3
python3-importlib-metadata: upgrade 3.10.1 -> 4.0.1
python3-sortedcontainers: upgrade 2.3.0 -> 2.4.0
rxvt-unicode: upgrade 9.22 -> 9.26
libedit: upgrade 20210419-3.1 -> 20210522-3.1
libtest-needs-perl: upgrade 0.002006 -> 0.002009
libucontext: upgrade 0.10 -> 1.1
Change-Id: I5e5148036ac2a7918974733e5751c3392139b17e
Signed-off-by: William A. Kennington III <wak@google.com>
Diffstat (limited to 'poky/meta/recipes-devtools/meson')
12 files changed, 466 insertions, 151 deletions
diff --git a/poky/meta/recipes-devtools/meson/meson.inc b/poky/meta/recipes-devtools/meson/meson.inc index e186dede92..f60381453b 100644 --- a/poky/meta/recipes-devtools/meson/meson.inc +++ b/poky/meta/recipes-devtools/meson/meson.inc @@ -12,21 +12,13 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P file://0003-native_bindir.patch \ file://0001-python-module-do-not-manipulate-the-environment-when.patch \ file://disable-rpath-handling.patch \ - file://cross-prop-default.patch \ file://0001-modules-python.py-do-not-substitute-python-s-install.patch \ - file://0001-minstall-Correctly-set-uid-gid-of-installed-files.patch \ file://gi-target-dep.patch \ + file://0001-Make-CPU-family-warnings-fatal.patch \ + file://0002-Support-building-allarch-recipes-again.patch \ + file://4e312c19e693a69b0650ce6c8a8903163c959996.patch \ " -SRC_URI[sha256sum] = "72e1c782ba9bda204f4a1ed57f98d027d7b6eb9414c723eebbd6ec7f1955c8a6" - -SRC_URI_append_class-native = " \ - file://0001-Make-CPU-family-warnings-fatal.patch \ - file://0002-Support-building-allarch-recipes-again.patch \ -" - -# remove at next version upgrade or when output changes -PR = "r1" -HASHEQUIV_HASH_VERSION .= ".1" +SRC_URI[sha256sum] = "f4820df0bc969c99019fd4af8ca5f136ee94c63d8a5ad67e7eb73bdbc9182fdd" UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases" UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar" diff --git a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch index 48941c97f3..bcccfabd17 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-Make-CPU-family-warnings-fatal.patch @@ -1,41 +1,43 @@ -From 76934bcbf2cfa7304e8864e28c51f58adda0392f Mon Sep 17 00:00:00 2001 +From b64032a2eb1fb760f4ffd5b4b666e2433cf80d39 Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Tue, 3 Jul 2018 13:59:09 +0100 -Subject: [PATCH] Make CPU family warnings fatal +Subject: [PATCH 1/2] Make CPU family warnings fatal Upstream-Status: Inappropriate [OE specific] Signed-off-by: Ross Burton <ross.burton@intel.com> - --- mesonbuild/envconfig.py | 2 +- mesonbuild/environment.py | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py -index ba35d16..2d3c34c 100644 +index c6a4df3..4d58c91 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py -@@ -254,7 +254,7 @@ class MachineInfo: - +@@ -266,7 +266,7 @@ class MachineInfo: + cpu_family = literal['cpu_family'] if cpu_family not in known_cpu_families: -- mlog.warning('Unknown CPU family {}, please report this at https://github.com/mesonbuild/meson/issues/new'.format(cpu_family)) +- mlog.warning(f'Unknown CPU family {cpu_family}, please report this at https://github.com/mesonbuild/meson/issues/new') + raise EnvironmentException('Unknown CPU family {}, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.'.format(cpu_family)) - + endian = literal['endian'] if endian not in ('little', 'big'): diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index 756dd81..4d2c2b6 100644 +index fc9b703..eea8345 100644 --- a/mesonbuild/environment.py +++ b/mesonbuild/environment.py -@@ -434,9 +434,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: +@@ -436,9 +436,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str: trial = 'ppc64' - + if trial not in known_cpu_families: - mlog.warning('Unknown CPU family {!r}, please report this at ' - 'https://github.com/mesonbuild/meson/issues/new with the ' - 'output of `uname -a` and `cat /proc/cpuinfo`'.format(trial)) + raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % trial) - + return trial + +-- +2.24.0 diff --git a/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch b/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch index 471f1500da..ce90e515da 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch @@ -1,4 +1,4 @@ -From d3ef01a4208a801acad380a4aaceb6a21f8fa603 Mon Sep 17 00:00:00 2001 +From 2f9c59e0489e569c5382404667c10f5c200a72ad Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Fri, 4 Aug 2017 16:16:41 +0300 Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling @@ -20,11 +20,11 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 1 file changed, 4 insertions(+) diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py -index bcf77b9..6a4b472 100644 +index dc2979e..c9ff9bd 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py -@@ -974,6 +974,10 @@ This will become a hard error in the future.''') - args.append('--{}={}'.format(program_name, path)) +@@ -1053,6 +1053,10 @@ class GnomeModule(ExtensionModule): + args.append(f'--{program_name}={path}') if namespace: args.append('--namespace=' + namespace) + gtkdoc_exe_wrapper = state.environment.properties.host.get('gtkdoc_exe_wrapper', None) diff --git a/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch b/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch deleted file mode 100644 index d55b7cc7c7..0000000000 --- a/poky/meta/recipes-devtools/meson/meson/0001-minstall-Correctly-set-uid-gid-of-installed-files.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 3f6f4964dc79ae986f44afe1687922381f237edd Mon Sep 17 00:00:00 2001 -From: Peter Kjellerstedt <pkj@axis.com> -Date: Wed, 3 Mar 2021 12:47:28 +0100 -Subject: [PATCH] minstall: Correctly set uid/gid of installed files - -In commit caab4d3d, the uid and gid arguments passed to os.chown() by -set_chown() were accidentally swapped, causing files to end up with -incorrect owner/group if the owner and group are not the same. - -Upstream-Status: Backport [https://github.com/mesonbuild/meson/commit/6226ac26ef63335bfb817db02b3f295c78214a82] -Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> ---- - mesonbuild/minstall.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py -index 785ff5869..07da408aa 100644 ---- a/mesonbuild/minstall.py -+++ b/mesonbuild/minstall.py -@@ -148,7 +148,7 @@ def set_chown(path: str, user: T.Optional[str] = None, group: T.Optional[str] = - Use a real function rather than a lambda to help mypy out. Also real - functions are faster. - """ -- real_os_chown(path, gid, uid, dir_fd=dir_fd, follow_symlinks=follow_symlinks) -+ real_os_chown(path, uid, gid, dir_fd=dir_fd, follow_symlinks=follow_symlinks) - - try: - os.chown = chown diff --git a/poky/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch b/poky/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch index eb0e90dbdd..fdadc6869b 100644 --- a/poky/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch +++ b/poky/meta/recipes-devtools/meson/meson/0001-python-module-do-not-manipulate-the-environment-when.patch @@ -1,4 +1,4 @@ -From 689e28c49b85311f93f39df70cbee702fc44afb6 Mon Sep 17 00:00:00 2001 +From 2264e67d7c2c22ca634fd26ea8ada6f0344ab280 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <alex.kanavin@gmail.com> Date: Mon, 19 Nov 2018 14:24:26 +0100 Subject: [PATCH] python module: do not manipulate the environment when calling @@ -12,10 +12,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> 1 file changed, 12 deletions(-) diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py -index 07be318..b770603 100644 +index 422155b..aaf5844 100644 --- a/mesonbuild/modules/python.py +++ b/mesonbuild/modules/python.py -@@ -71,11 +71,6 @@ class PythonDependency(ExternalDependency): +@@ -70,11 +70,6 @@ class PythonDependency(ExternalDependency): old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR') old_pkg_path = os.environ.get('PKG_CONFIG_PATH') @@ -26,9 +26,9 @@ index 07be318..b770603 100644 - try: self.pkgdep = PkgConfigDependency(pkg_name, environment, kwargs) - mlog.debug('Found "{}" via pkgconfig lookup in LIBPC ({})'.format(pkg_name, pkg_libdir)) -@@ -84,13 +79,6 @@ class PythonDependency(ExternalDependency): - mlog.debug('"{}" could not be found in LIBPC ({})'.format(pkg_name, pkg_libdir)) + mlog.debug(f'Found "{pkg_name}" via pkgconfig lookup in LIBPC ({pkg_libdir})') +@@ -83,13 +78,6 @@ class PythonDependency(ExternalDependency): + mlog.debug(f'"{pkg_name}" could not be found in LIBPC ({pkg_libdir})') mlog.debug(e) - if old_pkg_path is not None: @@ -39,5 +39,5 @@ index 07be318..b770603 100644 - else: - os.environ.pop('PKG_CONFIG_LIBDIR', None) else: - mlog.debug('"{}" could not be found in LIBPC ({}), this is likely due to a relocated python installation'.format(pkg_name, pkg_libdir)) + mlog.debug(f'"{pkg_name}" could not be found in LIBPC ({pkg_libdir}), this is likely due to a relocated python installation') diff --git a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch index d0fe1126f5..dcc1ce9c27 100644 --- a/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch +++ b/poky/meta/recipes-devtools/meson/meson/0002-Support-building-allarch-recipes-again.patch @@ -1,26 +1,28 @@ -From 6efb6114836fd4a1e012aa03b37f3beeeb22b466 Mon Sep 17 00:00:00 2001 +From 656bf55fed01df2d2e2ad6d9d9887173cb16b85c Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt <pkj@axis.com> Date: Thu, 26 Jul 2018 16:32:49 +0200 -Subject: [PATCH] Support building allarch recipes again +Subject: [PATCH 2/2] Support building allarch recipes again This registers "allarch" as a known CPU family. Upstream-Status: Inappropriate [OE specific] Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> - --- mesonbuild/envconfig.py | 1 + 1 file changed, 1 insertion(+) diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py -index 2d3c34c..b9e7908 100644 +index 4d58c91..ff01ad1 100644 --- a/mesonbuild/envconfig.py +++ b/mesonbuild/envconfig.py -@@ -38,6 +38,7 @@ _T = T.TypeVar('_T') - - +@@ -36,6 +36,7 @@ from pathlib import Path + + known_cpu_families = ( + 'allarch', 'aarch64', 'alpha', 'arc', +-- +2.24.0 + diff --git a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch index ed85116c4f..89257b9e05 100644 --- a/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch +++ b/poky/meta/recipes-devtools/meson/meson/0003-native_bindir.patch @@ -1,4 +1,4 @@ -From 1546e1f95a119175b7a4e4272a26dd85505e5ede Mon Sep 17 00:00:00 2001 +From 30e97d4090a3d3f5b7ddcaf27cfa17f3c8c1d462 Mon Sep 17 00:00:00 2001 From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Date: Wed, 15 Nov 2017 15:05:01 +0100 Subject: [PATCH] native_bindir @@ -18,23 +18,22 @@ Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> --- mesonbuild/dependencies/base.py | 19 +++++++++++-------- - mesonbuild/dependencies/ui.py | 6 +++--- - 2 files changed, 14 insertions(+), 11 deletions(-) + 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py -index cd77b4b..7e3f338 100644 +index 14380d4..d0c443f 100644 --- a/mesonbuild/dependencies/base.py +++ b/mesonbuild/dependencies/base.py -@@ -192,7 +192,7 @@ class Dependency: +@@ -179,7 +179,7 @@ class Dependency: def get_exe_args(self, compiler): return [] - def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any]) -> str: + def get_pkgconfig_variable(self, variable_name: str, kwargs: T.Dict[str, T.Any], use_native=False) -> str: - raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name)) + raise DependencyException(f'{self.name!r} is not a pkgconfig dependency') def get_configtool_variable(self, variable_name): -@@ -280,7 +280,7 @@ class InternalDependency(Dependency): +@@ -267,7 +267,7 @@ class InternalDependency(Dependency): return True return any(d.is_built() for d in self.ext_deps) @@ -43,7 +42,7 @@ index cd77b4b..7e3f338 100644 raise DependencyException('Method "get_pkgconfig_variable()" is ' 'invalid for an internal dependency') -@@ -658,8 +658,11 @@ class PkgConfigDependency(ExternalDependency): +@@ -645,8 +645,11 @@ class PkgConfigDependency(ExternalDependency): return s.format(self.__class__.__name__, self.name, self.is_found, self.version_reqs) @@ -57,16 +56,16 @@ index cd77b4b..7e3f338 100644 p, out, err = Popen_safe(cmd, env=env) rc, out, err = p.returncode, out.strip(), err.strip() call = ' '.join(cmd) -@@ -685,7 +688,7 @@ class PkgConfigDependency(ExternalDependency): - env['PKG_CONFIG_LIBDIR'] = new_pkg_config_libdir - mlog.debug('PKG_CONFIG_LIBDIR: ' + new_pkg_config_libdir) +@@ -674,7 +677,7 @@ class PkgConfigDependency(ExternalDependency): + if key.startswith('PKG_'): + mlog.debug(f'env[{key}]: {value}') - def _call_pkgbin(self, args, env=None): + def _call_pkgbin(self, args, env=None, use_native=False): # Always copy the environment since we're going to modify it # with pkg-config variables if env is None: -@@ -699,7 +702,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -688,7 +691,7 @@ class PkgConfigDependency(ExternalDependency): targs = tuple(args) cache = PkgConfigDependency.pkgbin_cache if (self.pkgbin, targs, fenv) not in cache: @@ -75,7 +74,7 @@ index cd77b4b..7e3f338 100644 return cache[(self.pkgbin, targs, fenv)] def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]: -@@ -905,7 +908,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -894,7 +897,7 @@ class PkgConfigDependency(ExternalDependency): (self.name, out_raw)) self.link_args, self.raw_link_args = self._search_libs(out, out_raw) @@ -84,7 +83,7 @@ index cd77b4b..7e3f338 100644 options = ['--variable=' + variable_name, self.name] if 'define_variable' in kwargs: -@@ -918,7 +921,7 @@ class PkgConfigDependency(ExternalDependency): +@@ -907,7 +910,7 @@ class PkgConfigDependency(ExternalDependency): options = ['--define-variable=' + '='.join(definition)] + options @@ -93,34 +92,3 @@ index cd77b4b..7e3f338 100644 variable = '' if ret != 0: if self.required: -diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py -index d897d76..a598d2e 100644 ---- a/mesonbuild/dependencies/ui.py -+++ b/mesonbuild/dependencies/ui.py -@@ -325,7 +325,7 @@ class QtBaseDependency(ExternalDependency): - self.bindir = self.get_pkgconfig_host_bins(core) - if not self.bindir: - # If exec_prefix is not defined, the pkg-config file is broken -- prefix = core.get_pkgconfig_variable('exec_prefix', {}) -+ prefix = core.get_pkgconfig_variable('exec_prefix', {}, use_native=True) - if prefix: - self.bindir = os.path.join(prefix, 'bin') - -@@ -528,7 +528,7 @@ class Qt4Dependency(QtBaseDependency): - applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease'] - for application in applications: - try: -- return os.path.dirname(core.get_pkgconfig_variable('%s_location' % application, {})) -+ return os.path.dirname(core.get_pkgconfig_variable('%s_location' % application, {}, use_native=True)) - except MesonException: - pass - -@@ -538,7 +538,7 @@ class Qt5Dependency(QtBaseDependency): - QtBaseDependency.__init__(self, 'qt5', env, kwargs) - - def get_pkgconfig_host_bins(self, core): -- return core.get_pkgconfig_variable('host_bins', {}) -+ return core.get_pkgconfig_variable('host_bins', {}, use_native=True) - - def get_private_includes(self, mod_inc_dir, module): - return _qt_get_private_includes(mod_inc_dir, module, self.version) diff --git a/poky/meta/recipes-devtools/meson/meson/4e312c19e693a69b0650ce6c8a8903163c959996.patch b/poky/meta/recipes-devtools/meson/meson/4e312c19e693a69b0650ce6c8a8903163c959996.patch new file mode 100644 index 0000000000..76daf019b0 --- /dev/null +++ b/poky/meta/recipes-devtools/meson/meson/4e312c19e693a69b0650ce6c8a8903163c959996.patch @@ -0,0 +1,412 @@ +From 4e312c19e693a69b0650ce6c8a8903163c959996 Mon Sep 17 00:00:00 2001 +From: Xavier Claessens <xavier.claessens@collabora.com> +Date: Tue, 11 May 2021 09:18:47 -0400 +Subject: [PATCH] gnome: Fix gtkdoc generation + +install_scripts used to replace @BUILD_ROOT@ and @SOURCE_ROOT@ but it +was not documented and got removed in Meson 0.58.0. gnome.gtkdoc() was +relying on that behaviour, but it has always been broken in the case the +source or build directory contains spaces. + +Fix this by changing get_include_args() to substitue paths directly +which will then get escaped correctly. + +Add a unit test that builds GObject documentation which is where this +issue has been spotted. + +Fixes: #8744 +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> +--- + mesonbuild/modules/__init__.py | 54 +++++++++---------- + mesonbuild/modules/gnome.py | 15 +++--- + mesonbuild/modules/hotdoc.py | 3 +- + mesonbuild/modules/qt.py | 4 +- + mesonbuild/modules/windows.py | 5 +- + .../10 gtk-doc/doc/foobar1/foobar-docs.sgml | 2 +- + .../doc/foobar1/foobar-sections.txt | 16 ++++++ + .../10 gtk-doc/doc/foobar1/foobar.types | 4 ++ + .../10 gtk-doc/doc/foobar1/meson.build | 6 ++- + test cases/frameworks/10 gtk-doc/foo.c | 30 +++++++++++ + .../frameworks/10 gtk-doc/include/foo.h | 18 +++++++ + test cases/frameworks/10 gtk-doc/meson.build | 12 +++++ + test cases/frameworks/10 gtk-doc/test.json | 4 +- + 13 files changed, 127 insertions(+), 46 deletions(-) + create mode 100644 test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-sections.txt + create mode 100644 test cases/frameworks/10 gtk-doc/doc/foobar1/foobar.types + create mode 100644 test cases/frameworks/10 gtk-doc/foo.c + +diff --git a/mesonbuild/modules/__init__.py b/mesonbuild/modules/__init__.py +index ddb5e3e6cf3..c0970294c34 100644 +--- a/mesonbuild/modules/__init__.py ++++ b/mesonbuild/modules/__init__.py +@@ -56,6 +56,33 @@ def __init__(self, interpreter: 'Interpreter') -> None: + self.target_machine = interpreter.builtin['target_machine'].held_object + self.current_node = interpreter.current_node + ++ def get_include_args(self, include_dirs, prefix='-I'): ++ if not include_dirs: ++ return [] ++ ++ srcdir = self.environment.get_source_dir() ++ builddir = self.environment.get_build_dir() ++ ++ dirs_str = [] ++ for dirs in unholder(include_dirs): ++ if isinstance(dirs, str): ++ dirs_str += [f'{prefix}{dirs}'] ++ continue ++ ++ # Should be build.IncludeDirs object. ++ basedir = dirs.get_curdir() ++ for d in dirs.get_incdirs(): ++ expdir = os.path.join(basedir, d) ++ srctreedir = os.path.join(srcdir, expdir) ++ buildtreedir = os.path.join(builddir, expdir) ++ dirs_str += [f'{prefix}{buildtreedir}', ++ f'{prefix}{srctreedir}'] ++ for d in dirs.get_extra_build_dirs(): ++ dirs_str += [f'{prefix}{d}'] ++ ++ return dirs_str ++ ++ + class ModuleObject: + """Base class for all objects returned by modules + """ +@@ -71,33 +98,6 @@ def __init__(self, interpreter: T.Optional['Interpreter'] = None) -> None: + class ExtensionModule(ModuleObject): + pass + +-def get_include_args(include_dirs, prefix='-I'): +- ''' +- Expand include arguments to refer to the source and build dirs +- by using @SOURCE_ROOT@ and @BUILD_ROOT@ for later substitution +- ''' +- if not include_dirs: +- return [] +- +- dirs_str = [] +- for dirs in unholder(include_dirs): +- if isinstance(dirs, str): +- dirs_str += [f'{prefix}{dirs}'] +- continue +- +- # Should be build.IncludeDirs object. +- basedir = dirs.get_curdir() +- for d in dirs.get_incdirs(): +- expdir = os.path.join(basedir, d) +- srctreedir = os.path.join('@SOURCE_ROOT@', expdir) +- buildtreedir = os.path.join('@BUILD_ROOT@', expdir) +- dirs_str += [f'{prefix}{buildtreedir}', +- f'{prefix}{srctreedir}'] +- for d in dirs.get_extra_build_dirs(): +- dirs_str += [f'{prefix}{d}'] +- +- return dirs_str +- + def is_module_library(fname): + ''' + Check if the file is a library-like file generated by a module-specific +diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py +index d0b053d4f76..c91cda66f8b 100644 +--- a/mesonbuild/modules/gnome.py ++++ b/mesonbuild/modules/gnome.py +@@ -26,7 +26,6 @@ + from .. import mesonlib + from .. import interpreter + from . import GResourceTarget, GResourceHeaderTarget, GirTarget, TypelibTarget, VapiTarget +-from . import get_include_args + from . import ExtensionModule + from . import ModuleReturnValue + from ..mesonlib import ( +@@ -394,7 +393,7 @@ def _get_dependencies_flags(self, deps, state, depends, include_rpath=False, + gi_includes.update([girdir]) + if isinstance(dep, InternalDependency): + cflags.update(dep.get_compile_args()) +- cflags.update(get_include_args(dep.include_directories)) ++ cflags.update(state.get_include_args(dep.include_directories)) + for lib in unholder(dep.libraries): + if isinstance(lib, build.SharedLibrary): + internal_ldflags.update(self._get_link_args(state, lib, depends, include_rpath)) +@@ -443,7 +442,7 @@ def _get_dependencies_flags(self, deps, state, depends, include_rpath=False, + else: + external_ldflags.update([lib]) + elif isinstance(dep, (build.StaticLibrary, build.SharedLibrary)): +- cflags.update(get_include_args(dep.get_include_dirs())) ++ cflags.update(state.get_include_args(dep.get_include_dirs())) + depends.append(dep) + else: + mlog.log(f'dependency {dep!r} not handled to build gir files') +@@ -853,7 +852,7 @@ def generate_gir(self, state, args, kwargs): + scan_command += self._scan_header(kwargs) + scan_command += self._scan_extra_args(kwargs) + scan_command += ['-I' + srcdir, '-I' + builddir] +- scan_command += get_include_args(girtargets_inc_dirs) ++ scan_command += state.get_include_args(girtargets_inc_dirs) + scan_command += ['--filelist=' + self._make_gir_filelist(state, srcdir, ns, nsversion, girtargets, libsources)] + scan_command += self._scan_link_withs(state, depends, kwargs) + scan_command += self._scan_include(state, depends, gir_inc_dirs, kwargs) +@@ -863,8 +862,8 @@ def generate_gir(self, state, args, kwargs): + scan_command += ['--cflags-begin'] + scan_command += cflags + scan_command += ['--cflags-end'] +- scan_command += get_include_args(inc_dirs) +- scan_command += get_include_args(list(gi_includes) + gir_inc_dirs + inc_dirs, prefix='--add-include-path=') ++ scan_command += state.get_include_args(inc_dirs) ++ scan_command += state.get_include_args(list(gi_includes) + gir_inc_dirs + inc_dirs, prefix='--add-include-path=') + scan_command += list(internal_ldflags) + scan_command += self._scan_gir_targets(state, girtargets) + scan_command += self._scan_langs(state, [lc[0] for lc in langs_compilers]) +@@ -886,7 +885,7 @@ def generate_gir(self, state, args, kwargs): + + typelib_output = f'{ns}-{nsversion}.typelib' + typelib_cmd = [gicompiler, scan_target, '--output', '@OUTPUT@'] +- typelib_cmd += get_include_args(gir_inc_dirs, prefix='--includedir=') ++ typelib_cmd += state.get_include_args(gir_inc_dirs, prefix='--includedir=') + + for incdir in typelib_includes: + typelib_cmd += ["--includedir=" + incdir] +@@ -1127,7 +1126,7 @@ def _get_build_args(self, kwargs, state, depends): + 'Gir include dirs should be include_directories().') + + cflags.extend(deps_cflags) +- cflags.extend(get_include_args(inc_dirs)) ++ cflags.extend(state.get_include_args(inc_dirs)) + ldflags = [] + ldflags.extend(internal_ldflags) + ldflags.extend(external_ldflags) +diff --git a/mesonbuild/modules/hotdoc.py b/mesonbuild/modules/hotdoc.py +index bf8cd229c0d..89a5d938ea7 100644 +--- a/mesonbuild/modules/hotdoc.py ++++ b/mesonbuild/modules/hotdoc.py +@@ -22,7 +22,6 @@ + from mesonbuild.coredata import MesonException + from . import ModuleReturnValue + from . import ExtensionModule +-from . import get_include_args + from ..dependencies import Dependency, InternalDependency + from ..interpreterbase import FeatureNew, InvalidArguments, noPosargs, noKwargs + from ..interpreter import CustomTargetHolder +@@ -191,7 +190,7 @@ def process_dependencies(self, deps): + for dep in mesonlib.listify(ensure_list(deps)): + dep = getattr(dep, "held_object", dep) + if isinstance(dep, InternalDependency): +- inc_args = get_include_args(dep.include_directories) ++ inc_args = self.state.get_include_args(dep.include_directories) + cflags.update([self.replace_dirs_in_string(x) + for x in inc_args]) + cflags.update(self.process_dependencies(dep.libraries)) +diff --git a/mesonbuild/modules/qt.py b/mesonbuild/modules/qt.py +index b7389bd59af..1bf0099d1df 100644 +--- a/mesonbuild/modules/qt.py ++++ b/mesonbuild/modules/qt.py +@@ -23,7 +23,7 @@ + from ..mesonlib import MesonException, extract_as_list, File, unholder, version_compare + from ..dependencies import Dependency + import xml.etree.ElementTree as ET +-from . import ModuleReturnValue, get_include_args, ExtensionModule ++from . import ModuleReturnValue, ExtensionModule + from ..interpreterbase import noPosargs, permittedKwargs, FeatureNew, FeatureNewKwargs + from ..interpreter import extract_required_kwarg + from ..programs import NonExistingExternalProgram +@@ -239,7 +239,7 @@ def preprocess(self, state, args, kwargs): + ui_gen = build.Generator([self.uic], ui_kwargs) + ui_output = ui_gen.process_files(f'Qt{self.qt_version} ui', ui_files, state) + sources.append(ui_output) +- inc = get_include_args(include_dirs=include_directories) ++ inc = state.get_include_args(include_dirs=include_directories) + compile_args = [] + for dep in unholder(dependencies): + if isinstance(dep, Dependency): +diff --git a/mesonbuild/modules/windows.py b/mesonbuild/modules/windows.py +index d7a86380885..c4fdc196681 100644 +--- a/mesonbuild/modules/windows.py ++++ b/mesonbuild/modules/windows.py +@@ -19,7 +19,6 @@ + from .. import mlog + from .. import mesonlib, build + from ..mesonlib import MachineChoice, MesonException, extract_as_list, unholder +-from . import get_include_args + from . import ModuleReturnValue + from . import ExtensionModule + from ..interpreter import CustomTargetHolder +@@ -83,12 +82,12 @@ def compile_resources(self, state, args, kwargs): + wrc_depends = extract_as_list(kwargs, 'depends', pop = True) + for d in wrc_depends: + if isinstance(d, CustomTargetHolder): +- extra_args += get_include_args([d.outdir_include()]) ++ extra_args += state.get_include_args([d.outdir_include()]) + inc_dirs = extract_as_list(kwargs, 'include_directories', pop = True) + for incd in inc_dirs: + if not isinstance(incd.held_object, (str, build.IncludeDirs)): + raise MesonException('Resource include dirs should be include_directories().') +- extra_args += get_include_args(inc_dirs) ++ extra_args += state.get_include_args(inc_dirs) + + rescomp, rescomp_type = self._find_resource_compiler(state) + if rescomp_type == ResourceCompilerType.rc: +diff --git a/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-docs.sgml b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-docs.sgml +index 95f73efdf45..6ccd087dc18 100644 +--- a/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-docs.sgml ++++ b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-docs.sgml +@@ -35,7 +35,7 @@ + </partintro> + <xi:include href="xml/foo.xml"/> + <xi:include href="../../include/bar.xml"/> +- <xi:include href="xml/foo-version.xml"/> ++ <xi:include href="xml/version.xml"/> + </reference> + + </book> +diff --git a/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-sections.txt b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-sections.txt +new file mode 100644 +index 00000000000..d14c8dab010 +--- /dev/null ++++ b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar-sections.txt +@@ -0,0 +1,16 @@ ++<SECTION> ++<FILE>foo</FILE> ++<TITLE>FooObj</TITLE> ++FooObj ++FooObjClass ++foo_do_something ++</SECTION> ++ ++<SECTION> ++<FILE>version</FILE> ++<TITLE>version</TITLE> ++FOO_MAJOR_VERSION ++FOO_MINOR_VERSION ++FOO_MICRO_VERSION ++</SECTION> ++ +diff --git a/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar.types b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar.types +new file mode 100644 +index 00000000000..0a9c046f3ed +--- /dev/null ++++ b/test cases/frameworks/10 gtk-doc/doc/foobar1/foobar.types +@@ -0,0 +1,4 @@ ++% This include is useless it's a regression test for https://github.com/mesonbuild/meson/issues/8744 ++#include <foo.h> ++ ++foo_obj_get_type +diff --git a/test cases/frameworks/10 gtk-doc/doc/foobar1/meson.build b/test cases/frameworks/10 gtk-doc/doc/foobar1/meson.build +index 149c6e956aa..f4b3724dbae 100644 +--- a/test cases/frameworks/10 gtk-doc/doc/foobar1/meson.build ++++ b/test cases/frameworks/10 gtk-doc/doc/foobar1/meson.build +@@ -1,5 +1,9 @@ + gnome.gtkdoc('foobar', +- src_dir : inc, ++ src_dir : [inc, '.'], + main_sgml : 'foobar-docs.sgml', + content_files : [docbook, version_xml], ++ dependencies: foo_dep, ++ # Manually written types file for regression test: ++ # https://github.com/mesonbuild/meson/issues/8744 ++ gobject_typesfile: 'foobar.types', + install : true) +diff --git a/test cases/frameworks/10 gtk-doc/foo.c b/test cases/frameworks/10 gtk-doc/foo.c +new file mode 100644 +index 00000000000..36c0639ec08 +--- /dev/null ++++ b/test cases/frameworks/10 gtk-doc/foo.c +@@ -0,0 +1,30 @@ ++#include <foo.h> ++ ++ ++struct _FooObj { ++ GObject parent; ++ int dummy; ++}; ++ ++G_DEFINE_TYPE(FooObj, foo_obj, G_TYPE_OBJECT) ++ ++static void foo_obj_init (FooObj *self) ++{ ++} ++ ++static void foo_obj_class_init (FooObjClass *klass) ++{ ++} ++ ++/** ++ * foo_do_something: ++ * @self: self ++ * ++ * Useless function. ++ * ++ * Returns: 0. ++ */ ++int foo_do_something(FooObj *self) ++{ ++ return 0; ++} +diff --git a/test cases/frameworks/10 gtk-doc/include/foo.h b/test cases/frameworks/10 gtk-doc/include/foo.h +index 7b8946b6a86..510f3d1ecb5 100644 +--- a/test cases/frameworks/10 gtk-doc/include/foo.h ++++ b/test cases/frameworks/10 gtk-doc/include/foo.h +@@ -1,5 +1,7 @@ + #pragma once + ++#include <glib-object.h> ++ + /** + * FooIndecision: + * @FOO_MAYBE: Something maybe +@@ -13,3 +15,19 @@ typedef enum { + FOO_POSSIBLY, + } FooIndecision; + ++/** ++ * FooObjClass: ++ * ++ * The class ++ */ ++ ++/** ++ * FooObj: ++ * ++ * The instance ++ */ ++ ++#define FOO_TYPE_OBJ foo_obj_get_type() ++G_DECLARE_FINAL_TYPE(FooObj, foo_obj, FOO, OBJ, GObject) ++ ++int foo_do_something(FooObj *self); +diff --git a/test cases/frameworks/10 gtk-doc/meson.build b/test cases/frameworks/10 gtk-doc/meson.build +index 5c22ad0afa4..292980fafa7 100644 +--- a/test cases/frameworks/10 gtk-doc/meson.build ++++ b/test cases/frameworks/10 gtk-doc/meson.build +@@ -24,4 +24,16 @@ if gtkdoc_ver.version_compare('<1.26') + error('MESON_SKIP_TEST gtk-doc test requires gtkdoc >= 1.26.') + endif + ++gobject = dependency('gobject-2.0') ++ ++libfoo = library('foo', 'foo.c', ++ include_directories: inc, ++ dependencies: gobject, ++) ++ ++foo_dep = declare_dependency( ++ link_with: libfoo, ++ include_directories: inc, ++) ++ + subdir('doc') +diff --git a/test cases/frameworks/10 gtk-doc/test.json b/test cases/frameworks/10 gtk-doc/test.json +index c44126cc741..03ad0595817 100644 +--- a/test cases/frameworks/10 gtk-doc/test.json ++++ b/test cases/frameworks/10 gtk-doc/test.json +@@ -4,8 +4,8 @@ + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/BAR.html"}, + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/foobar.devhelp2"}, + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/foobar.html"}, +- {"type": "file", "file": "usr/share/gtk-doc/html/foobar/foobar-foo.html"}, +- {"type": "file", "file": "usr/share/gtk-doc/html/foobar/foobar-foo-version.html"}, ++ {"type": "file", "file": "usr/share/gtk-doc/html/foobar/FooObj.html"}, ++ {"type": "file", "file": "usr/share/gtk-doc/html/foobar/foo-version.html"}, + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/home.png"}, + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/index.html"}, + {"type": "file", "file": "usr/share/gtk-doc/html/foobar/left.png"}, diff --git a/poky/meta/recipes-devtools/meson/meson/cross-prop-default.patch b/poky/meta/recipes-devtools/meson/meson/cross-prop-default.patch deleted file mode 100644 index 772395e879..0000000000 --- a/poky/meta/recipes-devtools/meson/meson/cross-prop-default.patch +++ /dev/null @@ -1,23 +0,0 @@ -meson.build files that use cc.run() in native builds can silently fallback to -meson.get_cross_property() in cross builds without an exe-wrapper, but there's -no way to know that this is happening. - -As the defaults may be pessimistic (for example, disabling the support for a -feature that should be enabled) emit a warning when the default is used, so that -the recipe can explicitly set the cross property as relevant. - -Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/5071] -Signed-off-by: Ross Burton <ross.burton@intel.com> - -diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py -index 3c3cfae0..10e741ae 100644 ---- a/mesonbuild/interpreter.py -+++ b/mesonbuild/interpreter.py -@@ -1890,6 +1890,7 @@ class MesonMain(InterpreterObject): - return props[propname] - except Exception: - if len(args) == 2: -+ mlog.warning('Cross property %s is using default value %s' % (propname, args[1])) - return args[1] - raise InterpreterException('Unknown cross property: %s.' % propname) - diff --git a/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch b/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch index 25b30ca27a..29e164ccc7 100644 --- a/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch +++ b/poky/meta/recipes-devtools/meson/meson/gi-target-dep.patch @@ -3,7 +3,7 @@ to be executed) but *host* gobject-introspection libraries, as otherwise the native pkg-config can be used and the build will try to link native and host binaries together. -Upstream-Status: Pending +Upstream-Status: Backport [589236226856f591c9e8daf0cb7aa1aef8862388] Signed-off-by: Ross Burton <ross.burton@arm.com> diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py diff --git a/poky/meta/recipes-devtools/meson/meson_0.57.1.bb b/poky/meta/recipes-devtools/meson/meson_0.58.0.bb index de9b905c12..de9b905c12 100644 --- a/poky/meta/recipes-devtools/meson/meson_0.57.1.bb +++ b/poky/meta/recipes-devtools/meson/meson_0.58.0.bb diff --git a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.57.1.bb b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.0.bb index 8778cab124..74e1a7104a 100644 --- a/poky/meta/recipes-devtools/meson/nativesdk-meson_0.57.1.bb +++ b/poky/meta/recipes-devtools/meson/nativesdk-meson_0.58.0.bb @@ -1,21 +1,11 @@ include meson.inc -inherit siteinfo +inherit meson-routines inherit nativesdk SRC_URI += "file://meson-setup.py \ file://meson-wrapper" -def meson_endian(prefix, d): - arch, os = d.getVar(prefix + "_ARCH"), d.getVar(prefix + "_OS") - sitedata = siteinfo_data_for_machine(arch, os, d) - if "endian-little" in sitedata: - return "little" - elif "endian-big" in sitedata: - return "big" - else: - bb.fatal("Cannot determine endianism for %s-%s" % (arch, os)) - # The cross file logic is similar but not identical to that in meson.bbclass, # since it's generating for an SDK rather than a cross-compile. Important # differences are: @@ -44,7 +34,7 @@ sys_root = @OECORE_TARGET_SYSROOT [host_machine] system = '${SDK_OS}' -cpu_family = '${SDK_ARCH}' +cpu_family = '${@meson_cpu_family("SDK_ARCH", d)}' cpu = '${SDK_ARCH}' endian = '${@meson_endian("SDK", d)}' EOF |