diff options
author | Mike Gilbert <floppym@gentoo.org> | 2021-06-12 14:14:55 -0400 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2021-06-12 14:21:20 -0400 |
commit | 50100e3801575c1fce367d1d426e9ea013e922e9 (patch) | |
tree | ff31b007c2effda502d60030cccf9a45ea7276b3 /dev-util | |
parent | dev-util/meson: drop DISTUTILS_USE_SETUPTOOLS (diff) | |
download | gentoo-50100e3801575c1fce367d1d426e9ea013e922e9.tar.gz gentoo-50100e3801575c1fce367d1d426e9ea013e922e9.tar.bz2 gentoo-50100e3801575c1fce367d1d426e9ea013e922e9.zip |
dev-util/meson: bump to 0.58.1
Closes: https://bugs.gentoo.org/791346
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/meson/Manifest | 1 | ||||
-rw-r--r-- | dev-util/meson/meson-0.58.1.ebuild | 101 | ||||
-rw-r--r-- | dev-util/meson/meson-9999.ebuild | 9 |
3 files changed, 110 insertions, 1 deletions
diff --git a/dev-util/meson/Manifest b/dev-util/meson/Manifest index 765d085eb49a..cbe47bf22dc9 100644 --- a/dev-util/meson/Manifest +++ b/dev-util/meson/Manifest @@ -1 +1,2 @@ DIST meson-0.57.2.tar.gz 1853721 BLAKE2B 9c167a21745719589a165e7ffc31007bd6307b347027f390fd660b2f44b5a2e6d8f36e999e15fa4b28ae269ddb0bb3897e0297288c59b62cc493aad058126293 SHA512 a3b0bf3d5e1d1b7ac7c97313f43046c94aa2a6b21964958569c89764dfda08db166adb89d48cbfad735bd472114587a71089d5e8b4f0fce04c3289da21b3f40e +DIST meson-0.58.1.tar.gz 1896205 BLAKE2B d42e04b262c6715ba2776f64d2e616016381303b07e609c804becf72db2ebd8ef08030c969f43813b2072552cb76974b2ed84f2da6d6c809ad612169d580395c SHA512 64ac1a9bcc642fb6d37c4b677d8b7db16d821f852f927a980d3fb1c149d680b7ff2c8d03676c6772666d46a33b6ce8674220433d302fcd92d13d9818558d6453 diff --git a/dev-util/meson/meson-0.58.1.ebuild b/dev-util/meson/meson-0.58.1.ebuild new file mode 100644 index 000000000000..e2a175666ca3 --- /dev/null +++ b/dev-util/meson/meson-0.58.1.ebuild @@ -0,0 +1,101 @@ +# Copyright 2016-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{7,8,9,10} ) + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit git-r3 +else + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +inherit distutils-r1 toolchain-funcs + +DESCRIPTION="Open source build system" +HOMEPAGE="https://mesonbuild.com/" + +LICENSE="Apache-2.0" +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +DEPEND=" + test? ( + dev-libs/glib:2 + dev-libs/gobject-introspection + dev-util/ninja + dev-vcs/git + sys-libs/zlib[static-libs(+)] + virtual/pkgconfig + ) +" + +python_prepare_all() { + local disable_unittests=( + # ASAN and sandbox both want control over LD_PRELOAD + # https://bugs.gentoo.org/673016 + -e 's/test_generate_gir_with_address_sanitizer/_&/' + + # ASAN is unsupported on some targets + # https://bugs.gentoo.org/692822 + -e 's/test_pch_with_address_sanitizer/_&/' + + # https://github.com/mesonbuild/meson/issues/7203 + -e 's/test_templates/_&/' + + # Broken due to python2 wrapper + -e 's/test_python_module/_&/' + ) + + sed -i "${disable_unittests[@]}" run_unittests.py || die + + # Broken due to python2 script created by python_wrapper_setup + rm -r "test cases/frameworks/1 boost" || die + + distutils-r1_python_prepare_all +} + +src_test() { + tc-export PKG_CONFIG + if ${PKG_CONFIG} --exists Qt5Core && ! ${PKG_CONFIG} --exists Qt5Gui; then + ewarn "Found Qt5Core but not Qt5Gui; skipping tests" + else + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + distutils-r1_src_test + fi +} + +python_test() { + ( + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # test_cross_file_system_paths + unset XDG_DATA_HOME + + # 'test cases/unit/73 summary' expects 80 columns + export COLUMNS=80 + + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + + ${EPYTHON} -u run_tests.py + ) || die "Testing failed with ${EPYTHON}" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr/share/vim/vimfiles + doins -r data/syntax-highlighting/vim/{ftdetect,indent,syntax} + insinto /usr/share/zsh/site-functions + doins data/shell-completions/zsh/_meson +} diff --git a/dev-util/meson/meson-9999.ebuild b/dev-util/meson/meson-9999.ebuild index 3b18cdf978c3..e2a175666ca3 100644 --- a/dev-util/meson/meson-9999.ebuild +++ b/dev-util/meson/meson-9999.ebuild @@ -2,7 +2,7 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{7,8,9,10} ) if [[ ${PV} = *9999* ]]; then EGIT_REPO_URI="https://github.com/mesonbuild/meson" @@ -80,6 +80,13 @@ python_test() { # 'test cases/unit/73 summary' expects 80 columns export COLUMNS=80 + # If JAVA_HOME is not set, meson looks for javac in PATH. + # If javac is in /usr/bin, meson assumes /usr/include is a valid + # JDK include path. Setting JAVA_HOME works around this broken + # autodection. If no JDK is installed, we should end up with an empty + # value in JAVA_HOME, and the tests should get skipped. + export JAVA_HOME=$(java-config -O 2>/dev/null) + ${EPYTHON} -u run_tests.py ) || die "Testing failed with ${EPYTHON}" } |