summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* meson.eclass: add EMESON_BUILDTYPE variableMike Gilbert2021-10-241-1/+9
| | | | | | | | | | | | | This allows the buildtype option to be overridden or omitted. This may be necessary if an ebuild makes use of the 'debug' built-in option control project-specific debug functionality. meson emits a warning if both buildtype and debug are specified, since the former overrides the latter. See discussion in https://github.com/gentoo/gentoo/pull/22574. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: depend in >=dev-util/meson-0.58.2-r1Mike Gilbert2021-09-211-1/+1
| | | | | Bug: https://bugs.gentoo.org/810655 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: depend on >=dev-util/meson-0.57.0Mike Gilbert2021-08-291-1/+1
| | | | | | | Earlier versions did not support the meson install --destdir option. Closes: https://bugs.gentoo.org/811066 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: introduce meson_install helper functionMike Gilbert2021-08-291-5/+12
| | | | | | This will be called from meson.eclass and meson-multilib.eclass. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: several cleanupsWilliam Hubbs2021-08-261-17/+24
| | | | | | | | | | | | | | | | | | - Drop the unused emesontestargs variable. - Use the compile and install subcommands of meson instead of calling ninja. This allows for the possibility of a different back end. - Stop using the NINJAOPTS variable. - Add --num-processes to "meson test" call regardless of whether MAKEOPTS is set since the default is 1 process. - Pass --jobs 0 instead of 999 to represent infinity. - Echo commands before running them. Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: prefix MESON_DEPEND with an underscoreMike Gilbert2021-06-281-3/+3
| | | | | | Avoids a pkgcheck warning about undocumented variables. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: EAPI 8 supportDavid Michael2021-06-281-16/+9
| | | | | Signed-off-by: David Michael <fedora.dm0@gmail.com> Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: Run einstalldocs from ${S}Matt Turner2021-06-031-0/+3
| | | | | | | | This is how cmake.eclass works, and it will allow easy use by meson-multilib.eclass. Closes: https://github.com/gentoo/gentoo/pull/20986 Signed-off-by: Matt Turner <mattst88@gentoo.org>
* meson.eclass: move compiler flags to [built-in options]Mike Gilbert2021-05-221-3/+7
| | | | | | | Resolves deprecation notices since meson 0.56.0. Closes: https://bugs.gentoo.org/738710 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: include riscv bitness in cpu_familyDavid Michael2021-05-051-1/+6
| | | | | | | | | | | | This makes cpu_family identify RISC-V systems as either "riscv64" or "riscv32" to match the given tuple, or it will leave it as "riscv" when the tuple has an unknown cpu field. This fixes the expected values of cpu_family in meson projects: https://mesonbuild.com/Reference-tables.html#cpu-families Signed-off-by: David Michael <fedora.dm0@gmail.com> Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: define objcopyDavid Michael2021-02-151-0/+2
| | | | | | Closes: https://bugs.gentoo.org/770844 Signed-off-by: David Michael <fedora.dm0@gmail.com> Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* Revert "meson.eclass: fix machine files"Mike Gilbert2021-01-121-16/+6
| | | | | | | needs_exe_wrapper and pkg_config_libdir are not built-in options. Reverts: e3cc29cc79d4e94d0144c3ebc4d8cf00d4ee2e70 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: change '--host-route' to '--host-root'Mike Gilbert2021-01-111-1/+1
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: fix machine filesWilliam Hubbs2021-01-111-6/+16
| | | | | | | | | Several options we were setting in the [properties] section of the machine files have been moved to the [built-in options] section in meson 0.56. Closes: https://bugs.gentoo.org/738710 Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: use meson-format-arrayMike Gilbert2020-12-281-15/+4
| | | | | Closes: https://bugs.gentoo.org/759433 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: depend on >=dev-util/meson-0.54.0Mike Gilbert2020-07-041-15/+2
| | | | | | | Also remove compatibility code for earlier versions. Closes: https://bugs.gentoo.org/730650 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: override 'nm' tool with tuple-prefixed oneSergei Trofimovich2020-06-131-0/+2
| | | | | | | | | | | | | | x11-libs/libdrm and media-libs/libglvnd fail to find 'nm' tool on sys-devel/binutils-config[-native-symlinks] system as: `meson.build:40:0: ERROR: Program(s) ['nm'] not found or not executable` It's caused by the code that locates the tool as: `prog_nm = find_program('nm')`. The change adds 'nm' tool along with other binutils tools. Closes: https://bugs.gentoo.org/720886 Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
* Revert "meson.eclass: define host_machine in the native machine file"Mike Gilbert2020-05-231-6/+0
| | | | | | | This change did not have the desired effect. Reverts: c21b75bd0b6bf77e2b51c51222b4281729bb1c01. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: define host_machine in the native machine fileMike Gilbert2020-05-231-0/+6
| | | | | | | Should resolve a problem with inline assembly in media-libs/mesa for multilib builds. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: add workaround for broken boost detectionMike Gilbert2020-05-101-0/+4
| | | | | Bug: https://bugs.gentoo.org/721786 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: append /usr/share/pkgconfig to PKG_CONFIG_PATHMike Gilbert2020-05-051-2/+2
| | | | | Bug: https://bugs.gentoo.org/720866 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: use a subshell to unexport variables temporarilyMike Gilbert2020-05-031-16/+18
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: export FLAGS for older versions on mesonMike Gilbert2020-05-031-0/+15
| | | | | Closes: https://bugs.gentoo.org/720860 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: ignore PKG_CONFIG_PATH due to Portage bugMike Gilbert2020-05-031-2/+2
| | | | | Bug: https://bugs.gentoo.org/720866 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: respect PKG_CONFIG_PATH and PKG_CONFIG_LIBDIRMike Gilbert2020-05-031-5/+9
| | | | | | | | | Respect PKG_CONFIG_PATH and PKG_CONFIG_LIBDIR if set before meson_src_configure. Add BUILD variants for use in cross-compiles. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: avoid leaking BUILD vars outside meson_src_configureMike Gilbert2020-05-031-1/+14
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: use export -n instead of unsetMike Gilbert2020-05-031-1/+1
| | | | | | | | This ensures the variables are still availble if the configure function is called more than once, as would happen for a multilib build. Bug: https://bugs.gentoo.org/720818 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: unset FLAGS before calling meson setupMike Gilbert2020-05-031-0/+3
| | | | | Bug: https://bugs.gentoo.org/720818 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: only default BUILD_FLAGS to FLAGS if not cross-compilingMike Gilbert2020-05-031-3/+9
| | | | | Bug: https://bugs.gentoo.org/720818 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: include ABI in machine file namesMike Gilbert2020-05-021-2/+2
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: fix tc-endian call for native fileMike Gilbert2020-05-021-1/+1
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: implement support for native machine filesMike Gilbert2020-05-021-20/+87
| | | | | | | | | | | Using a native file avoids putting meson into cross-compiler mode for multilib builds. Reference: https://mesonbuild.com/Machine-files.html Reference: https://mesonbuild.com/Native-environments.html Bug: https://bugs.gentoo.org/719382 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: wire up pkgconfig variablesMike Gilbert2020-04-231-0/+3
| | | | | | | | | | | | meson-0.54.0 introduced a regression in how meson treats the PKG_CONFIG_PATH variable. Work around this by passing the value to meson setup on the command line. Also add sys_root and pkg_config_libdir to cross files per the upstream documentation. Bug: https://bugs.gentoo.org/719018 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: export NM and READELF variablesMike Gilbert2020-04-221-0/+5
| | | | | | | These are used by the symbolextractor.py script in meson. Closes: https://bugs.gentoo.org/717720 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: update the example to use modern helper functionsMarek Szuba2020-04-141-3/+3
| | | | | | | | We have now got meson_use and meson_feature yet the example still used usex. Signed-off-by: Marek Szuba <marecki@gentoo.org> Reviewed-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: add MYMESONARGS variableMike Gilbert2020-04-121-0/+11
| | | | | | This was requested to allow users to pass aribtrary arguments to meson. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: clean up meson_src_configureMike Gilbert2020-04-121-10/+20
| | | | | | | This mainly rearranges some code to make it easier to read. Also changes the bare 'meson' call to 'meson setup'. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: Set needs_exe_wrapper in cross fileMatt Turner2020-03-081-0/+4
| | | | | | | | | | | needs_exe_wrapper tells meson whether the build machine is able to directly execute the binaries it produces or whether it needs an exe wrapper (like QEMU). For non-native ABI builds like building 32-bit libraries on an x86-64 system, we want this set to false to communicate to meson that the build machine can run the binaries directly. Reviewed-by: Mike Gilbert <floppym@gentoo.org> Signed-off-by: Matt Turner <mattst88@gentoo.org>
* */*: Bump copyright on files touched this yearMichał Górny2020-02-111-1/+1
| | | | | | | Update the copyright notice on all files that were touched since January 1st but did not have the notice updated. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* eclass/meson.eclass: update the meson and ninja dependenciesWilliam Hubbs2020-01-101-2/+2
| | | | Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: meson_src_{compile,install}: Pass "$@" to eninja.Arfrever Frehtes Taifersar Arahesis2019-08-191-2/+4
| | | | | | Closes: https://bugs.gentoo.org/670788 Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: don't pass --verbose to meson testMike Gilbert2019-07-241-3/+2
| | | | | | | This ends up sending spamming stdout/stderr with test output. It's better to have that redirected to the test log. Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: fix cross compile file for mingwGerhard Bräunlich2019-06-031-1/+2
| | | | | | | | This is necessary for cross compiling for example x11-libs/gdk-pixbuf Closes: https://github.com/gentoo/gentoo/pull/12168 Signed-off-by: Gerhard Bräunlich <g.braeunlich@disroot.org> Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: fix testsWilliam Hubbs2019-06-021-2/+23
| | | | | | | | | | | - use "meson test" to run tests instead of "eninja test" - calculate --num-processes based on ninjaopts or makeopts in the "meson test" call. - allow meson_src_test to accept arguments with the emesontestargs array or passed in the call like meson_src_configure Closes: https://bugs.gentoo.org/680010 Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: add meson_feature functionMart Raudsepp2019-03-171-0/+13
| | | | | | | | This can be used to simplify controlling meson_options.txt entries of type 'feature'. Signed-off-by: Mart Raudsepp <leio@gentoo.org> Signed-off-by: Matt Turner <mattst88@gentoo.org>
* meson.eclass: raise meson dependency to 0.48.2William Hubbs2019-02-071-1/+1
| | | | Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: remove unnecessary eapi checksWilliam Hubbs2019-02-071-1/+1
| | | | | | | This eclass dies for all eapis other than 6 or 7, so we don't need to test for eapis other than 6 or 7 anywhere else in the eclass. Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: remove meson_auto_dependWilliam Hubbs2019-02-071-23/+4
| | | | Signed-off-by: William Hubbs <williamh@gentoo.org>
* meson.eclass: add USAGE for meson_src_configureMike Gilbert2018-11-251-0/+1
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>
* meson.eclass: add EAPI 7 supportMarty E. Plummer2018-09-231-4/+8
| | | | Signed-off-by: Mike Gilbert <floppym@gentoo.org>