Commit Graph

33 Commits

Author SHA1 Message Date
Alexander Kanavin
9ddc7aa063 meson: update to 0.50.1
None of the backported patches actually made it into this release.

(From OE-Core rev: a443a765944797b2a62935fc7ea3a2dd827e3b1a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-05-09 16:31:56 +01:00
Alexander Kanavin
f7392539a6 meson: add missing Upstream-Status and SOB to a patch
(From OE-Core rev: 246622124d97d05d53b015797d620da974e20b79)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-23 23:30:20 +01:00
Alexander Kanavin
1b74389d93 meson: do not try to substitute the prefix in python supplied paths
The prefix should be correct in the first place, and substitution breaks
with our custom patched Python.

(From OE-Core rev: ad1d0187aed457e4b5bd1c0d11b39141786bc9fd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-23 23:30:20 +01:00
Alexander Kanavin
c46c419929 meson: update to 0.50.0
Remove 0001-Linker-rules-move-cross_args-in-front-of-output_args.patch
as the upstream code has been completely reworked; if the issues pops up
again, we need to re-write the fix.

Rebase:
0001-Make-CPU-family-warnings-fatal.patch
0001-environment.py-detect-windows-also-if-the-system-str.patch
0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch
0002-Support-building-allarch-recipes-again.patch

Add 0001-mesonbuild-environment.py-check-environment-for-vari.patch
as particularly we set windows resource compiler through an
environment variable WINDRES. This has replaced the
0001-modules-windows-split-WINDRES-env-variable.patch as the code
has been refactored.

Add 0001-mesonbuild-environment.py-do-not-determine-whether-a.patch
for a more robust detection of cross builds.

Replace many-cross.patch with corresponding backports from upcoming 0.50.1:
0007-mesonbuild-allow-multiple-cross-file-options.patch
load-configs-generalise-search-path.patch

Drop cross-libdir.patch as it has been merged upstream.

(From OE-Core rev: 3f9a0f0c6c99364eb128ffc2db704e957f1c0bce)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-04-16 11:10:02 +01:00
Ross Burton
d956c45baf meson: support multiple cross configuration files
For historical reasons Meson supports only a single cross configuration file but
multiple native configuration files.  Add support for multiple cross files, so
that recipes such as glib can use the toolchain cross file and extend it with a
recipe-specific cross file containing values needed to build.

(From OE-Core rev: 3d97cddeec8635988e414e6854d850cea20bcb36)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-24 17:00:52 +00:00
Ross Burton
06606fd9e0 meson: warn if the default value from meson.get_cross_property() is being used
Projects such as glib have tests that execute code to check their behaviour, and
in cross-compilation environments where they can't execute code fall back on
meson.get_cross_property() with a default value.  These default values may not
be appropriate: for example if glib can't verify that vsprintf() isn't broken it
assumes that it is, and embeds the gnulib copy of vsprintf() instead of using
glibc's implementation.

Add a warning whenever the default value for get_cross_property() is used so
that we can tell this is happening and set the value appropriately.

(From OE-Core rev: 669ddafcc9f363cbb81d4b71649241257785a840)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-03-24 17:00:52 +00:00
Alexander Kanavin
f8b41db690 meson: upgrade 0.49.0 -> 0.49.2
(From OE-Core rev: 0cc5265d108fd632db9dd751454325fe6e86a62f)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-20 11:30:35 +00:00
Alexander Kanavin
3b988a1ed2 meson: add a couple of patches to help with mingw builds
(From OE-Core rev: ee32c312d01f4abfca2d2587d7a3a7e0115f779c)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-02-19 16:14:57 +00:00
Ross Burton
5a0bed5be6 meson: write correct host endian into SDK cross file
Meson doesn't ignore this but will emit a warning, so write the correct value.

(From OE-Core rev: 1239157805a4c363da853de6db05c53083b01189)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-08 11:16:45 +00:00
Ross Burton
c2556c44ec meson: fix nativesdk-meson for multilib SDKs
Multilib SDKs differ only in the environment variables set, so nativesdk-meson's
setup script needs to write a cross file for each environment.

Rename the shipped meson.cross to meson.cross.template, as it cannot be used
directly.  Now that post-relocate scripts are called once for each environment,
the generated meson.cross can be prefixed with TARGET_PREFIX to ensure it is
unique.

Finally rewrite the setup script to use string.Template to perform the expansion
instead of hand-coding the logic.

(From OE-Core rev: 8596f871ef834a38e3375443f7eb08e43816347a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-08 11:16:45 +00:00
Ross Burton
3bda6b8e0a meson: use a sensible default for libdir when cross-compiling
If --libdir isn't passed to Meson a default is used, but as this default value
changes depending on the host (whether it is Debian-like, or has /usr/lib64)
this isn't appropriate for cross builds.

(From OE-Core rev: fdb5a8b3d437537aee53380091dabe6258667a49)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-08 11:16:44 +00:00
Ross Burton
eb4898839f nativesdk-meson: add missing dependency on setuptools
Meson uses pkg_resources, which is part of setuptools.

(From OE-Core rev: 30a9dbc8a13928541ce6ff270801b8fd1c8af37e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-03 21:16:00 +00:00
Alexander Kanavin
980f3d6bdf meson: update to 0.49.0
Drop upstreamed gi-flags.patch and gtkdoc-flags.patch, rebase the rest.

(From OE-Core rev: 6cc5c57c38d2da37b4f15dea6e1fb97e3a0bae73)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-01-03 12:35:53 +00:00
Peter Kjellerstedt
aeb6c44af7 meson: Correct use of the _append operator
The value to SRC_URI_append_class-native was not prefixed with a space.
This was not noticed as the SRC_URI before applying the _append contains
trailing spaces. However, if one, e.g., has a .bbappend and adds to the
SRC_URI using SRC_URI += "file://foo.patch", then there no longer is any
trailing space and the _append concatenates the two URIs together,
leading to a build failue.

(From OE-Core rev: c07ee11e99dfe28405a7225903a541b33aeb1de6)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-12-03 12:20:00 +00:00
Richard Purdie
9f3aa44e1b meson: Disable rpath stripping at install time
As discussed in https://github.com/mesonbuild/meson/issues/2567 there
needs to be a way to allow our rpath options passed to the linker to be
preserved, else we run into weird build failures.

(e.g. libmodulemd-native used by libdnf can't find libyaml)

Disable this for now until upstream come up with a better way of handling
this.

(From OE-Core rev: b4e36281631e0b59d1058f5cf391eb8b15e605cf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-23 23:35:19 +00:00
Alexander Kanavin
ab8ea8ad6f meson: do not manipulate the environment when looking for python via pkg-config
meson does it in a way that breaks oe builds (they export a bunch of PKG_CONFIG_ variables)

(From OE-Core rev: f071c5eb0a46b8ac5424c5baeb471a8080d4a078)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-11-20 10:32:16 +00:00
Ross Burton
802a7c1867 meson: make native-specific patches native-specific
These two patches are only relevant for builds inside OpenEmbedded, so make them
native-specific.

(From OE-Core rev: 63c89efde45b4aef873e2086b201cad538e42044)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-25 23:15:49 +01:00
Ross Burton
bfeeefa597 meson: respect target/native flag distinction in G-I and gtk-doc
Remove the previous attempt at this from
0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch as it wasn't quite
right, and the rest of the patch is adding the currently not upstreamable runner
option.

Add two new patches to fix both gobject-introspection and gtk-doc using native
flags for target compiles.

(From OE-Core rev: bf41247f52ffd40d91d94d1fc983f8a831b80e48)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-25 23:15:49 +01:00
Ross Burton
ff33ab40af meson: squash the architecture warning patches together
Instead of one patch to change a warning into an exception and another to change
the message, squash the patches together as neither of the are acceptable
upstream.

(From OE-Core rev: d9e5308ebfe376814f383d61ed00b50e8bad526b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-25 23:15:49 +01:00
Alexander Kanavin
b0c7ed8269 meson: update to 0.47.2
Drop backported patches, refresh the rest.

(From OE-Core rev: 6c09949663a02015dc8a7b80f581e4867afdd7e3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-09-10 12:13:06 +01:00
Peter Kjellerstedt
7bdfa2cc6e meson: Support building allarch recipes again
This registers "allarch" as a known CPU family.

(From OE-Core rev: f12b64e9332e3988953f87d8cea39ca309be5046)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Peter Kjellerstedt
9f24972d79 meson: Split validate-cpu.patch in three
This makes it more suitable to work with, e.g., devtool. It also
prepares for the update to 0.47.0 when the first patch will no longer be
needed (as it is a backport).

(From OE-Core rev: e1297f9a951b1dbafd0e211be63b348f06b1f3cd)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-15 09:44:33 +01:00
Khem Raj
471c3387d4 meson: Add risc-v to known architectures
(From OE-Core rev: 65e0b318b8521c3213249693cc898374effcf531)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-08-07 12:13:03 +01:00
Ross Burton
23899a254e meson: send user to our wiki instead of Meson bug system
If a CPU family isn't recognised the first step should be to verify the mapping.
Send the user to a wiki page explaining what to do, instead of directly to the
Meson bug tracker.

(From OE-Core rev: 6c1e880a2bf4799cf451ff20c7ab93c55a755751)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-06 22:55:02 +01:00
Ross Burton
e03660f46e meson: validate cpu_family
Meson has a defined list of known CPU families but these are not currently
validated, so mistakes in cross files or new architectures are not noticed.

Backport a patch from upstream which warns on unknown architectures, but tweak
it to fatally error instead.  When we upgrade to Meson 0.47 the first half of
this patch can be dropped.

(From OE-Core rev: be194a459944dfcc41bae7315643a5d284683efc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-05 00:22:08 +01:00
Martin Kelly
e14171cc59 meson: enable nativesdk
Currently, we can't build meson into SDKs because we don't autogenerate
the required meson.cross file.

Enable this by using the post-relocate hooks and generating a
meson.cross file based on the SDK environment passed into the
post-relocate hook.

(From OE-Core rev: aabb846b165fec218024a7a57f3c9fdaa2514179)

Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-07 08:52:55 +01:00
Martin Kelly
2a73be1b0e meson: handle exe wrappers
Add patches to enable meson to handle being wrapped with a shell script.  This
will enable us to do so for supporting the SDK, which requires us to setup env
vars and point to a meson.cross file inside the SDK.

These patches are all merged upstream, so we can drop them soon.

(From OE-Core rev: f80567874c8c30e43d39599dd73dd4a67eff8103)

Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-07 08:52:55 +01:00
Alexander Kanavin
3a22e2c447 meson: update to 0.46.1
(From OE-Core rev: ecd9bae1ace2f2a457890b8a6ae8e2376a736747)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29 21:07:13 +01:00
Alexander Kanavin
a6b62ef9ae meson: update to 0.46.0
Rebase a couple of patches

(From OE-Core rev: dbac12d5eacc945881d472dca492180b62e6f345)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-08 16:14:14 +01:00
Alexander Kanavin
cb448f161a meson: update to 0.45.1
(From OE-Core rev: 8b7e013da561838629a9f93d53dbf4d4415ee856)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-04 13:28:02 +01:00
Alexander Kanavin
9b8767a667 meson: upgrade 0.44.0 -> 0.44.1
(From OE-Core rev: b91fd0aec7c92c07625c797f973b35b3985568b6)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-03-04 11:35:41 +00:00
Ricardo Ribalda Delgado
0dab296d48 meson: Port pkgconfig-native patch to 0.44.0
The update to 0.44.0 did not add this patch required for qt builds.

(From OE-Core rev: 2aa0400c629e5d63ab6e70be32efa23b77a92eae)

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-05 12:02:37 +00:00
Alexander Kanavin
0d2020fcff meson: add a recipe and class from meta-oe
The original recipe has been provided and improved by:

Ross Burton <ross.burton@intel.com>
Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Adam C. Foltzer <acfoltzer@galois.com>
Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Linus Svensson <linussn@axis.com>

I have added  patches to fix up gtk-doc and
gobject-introspection in cross-compilation environments,
and also change the order of linker arguments to replicate
autotools more closely (and fix linking errors in some corner
cases).

(From OE-Core rev: 1f8dea686cdfd6d360ba4a97f62d274c39eaeb8e)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-05 11:55:35 +00:00