diff options
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/meson/Manifest | 1 | ||||
-rw-r--r-- | dev-util/meson/meson-0.58.2.ebuild | 101 |
2 files changed, 102 insertions, 0 deletions
diff --git a/dev-util/meson/Manifest b/dev-util/meson/Manifest index cbe47bf22dc9..ac126c8350ca 100644 --- a/dev-util/meson/Manifest +++ b/dev-util/meson/Manifest @@ -1,2 +1,3 @@ DIST meson-0.57.2.tar.gz 1853721 BLAKE2B 9c167a21745719589a165e7ffc31007bd6307b347027f390fd660b2f44b5a2e6d8f36e999e15fa4b28ae269ddb0bb3897e0297288c59b62cc493aad058126293 SHA512 a3b0bf3d5e1d1b7ac7c97313f43046c94aa2a6b21964958569c89764dfda08db166adb89d48cbfad735bd472114587a71089d5e8b4f0fce04c3289da21b3f40e DIST meson-0.58.1.tar.gz 1896205 BLAKE2B d42e04b262c6715ba2776f64d2e616016381303b07e609c804becf72db2ebd8ef08030c969f43813b2072552cb76974b2ed84f2da6d6c809ad612169d580395c SHA512 64ac1a9bcc642fb6d37c4b677d8b7db16d821f852f927a980d3fb1c149d680b7ff2c8d03676c6772666d46a33b6ce8674220433d302fcd92d13d9818558d6453 +DIST meson-0.58.2.tar.gz 1899464 BLAKE2B 48c4c0cec2cb1c55e51cd56e08461ad7d95211d83bb60085f32493cb8d53cfeb00234fa1ab62ba8fbf3baf726231c7e9b098a0630281fda63402a860337528e0 SHA512 31496da729ede0813d5b6cfcc891e8376108252ee8a8148d23e8a4c2a4109b9b0dbc7e9e59acd954fb7de38ceb35f05c3a916eb6d4e106656d9ea8e7536ac4b1 diff --git a/dev-util/meson/meson-0.58.2.ebuild b/dev-util/meson/meson-0.58.2.ebuild new file mode 100644 index 000000000000..e2a175666ca3 --- /dev/null +++ b/dev-util/meson/meson-0.58.2.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 +} |