From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id F1D2A158089 for ; Sun, 24 Sep 2023 04:13:49 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 3E1872BC014; Sun, 24 Sep 2023 04:13:49 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 1FB722BC014 for ; Sun, 24 Sep 2023 04:13:49 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id ADCF4340732 for ; Sun, 24 Sep 2023 04:13:47 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 108E1F25 for ; Sun, 24 Sep 2023 04:13:46 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1695528815.41f439c2e9964de598ac976e41dc68924b338bc5.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/meson/files/, dev-util/meson/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-util/meson/files/meson-1.2.1-llvm-17.patch dev-util/meson/meson-1.2.1-r2.ebuild X-VCS-Directories: dev-util/meson/ dev-util/meson/files/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 41f439c2e9964de598ac976e41dc68924b338bc5 X-VCS-Branch: master Date: Sun, 24 Sep 2023 04:13:46 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: b14ff212-2279-4ac1-b015-012fef00fe7b X-Archives-Hash: fbc348aeb3fc01c9cd34db5b6ca54f6e commit: 41f439c2e9964de598ac976e41dc68924b338bc5 Author: Sam James gentoo org> AuthorDate: Sun Sep 24 04:12:53 2023 +0000 Commit: Sam James gentoo org> CommitDate: Sun Sep 24 04:13:35 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41f439c2 dev-util/meson: backport LLVM 17 fixes 1.2.2 is hopefully coming Real Soon Now but Eli already pointed out precisely which PR it is and meson "rebuilds" are extremely cheap so there's no real reason to not throw it in now. Closes: https://bugs.gentoo.org/914576 Signed-off-by: Sam James gentoo.org> dev-util/meson/files/meson-1.2.1-llvm-17.patch | 41 +++++++++ dev-util/meson/meson-1.2.1-r2.ebuild | 122 +++++++++++++++++++++++++ 2 files changed, 163 insertions(+) diff --git a/dev-util/meson/files/meson-1.2.1-llvm-17.patch b/dev-util/meson/files/meson-1.2.1-llvm-17.patch new file mode 100644 index 000000000000..ceee1dcd292b --- /dev/null +++ b/dev-util/meson/files/meson-1.2.1-llvm-17.patch @@ -0,0 +1,41 @@ +https://bugs.gentoo.org/914576 +https://github.com/mesonbuild/meson/commit/d0b09898c703f6c10ec5a6b2aeace0df2e3570aa +https://github.com/mesonbuild/meson/commit/9c74c73bc7107c794e7f9896cc4220e50ad32bba + +From d0b09898c703f6c10ec5a6b2aeace0df2e3570aa Mon Sep 17 00:00:00 2001 +From: Christoph Reiter +Date: Sat, 23 Sep 2023 17:21:43 +0200 +Subject: [PATCH] get_llvm_tool_names: add llvm 17 + +this fixes the "frameworks: 15 llvm" tests with llvm 17 +--- a/mesonbuild/environment.py ++++ b/mesonbuild/environment.py +@@ -157,6 +157,7 @@ def get_llvm_tool_names(tool: str) -> T.List[str]: + # unless it becomes a stable release. + suffixes = [ + '', # base (no suffix) ++ '-17', '17', + '-16', '16', + '-15', '15', + '-14', '14', + +From 9c74c73bc7107c794e7f9896cc4220e50ad32bba Mon Sep 17 00:00:00 2001 +From: Christoph Reiter +Date: Sat, 23 Sep 2023 14:10:29 +0200 +Subject: [PATCH] openmp: add 5.1/5.2, fixes openmp with llvm v17 + +llvm v17 defaults to 5.1 and without this meson fails to find +openmp: 'ERROR: Dependency "openmp" not found, tried system' + +Add 5.2 as well while at it. +--- a/mesonbuild/dependencies/misc.py ++++ b/mesonbuild/dependencies/misc.py +@@ -85,6 +85,8 @@ def __init__(self, name: str, env: 'Environment', kwargs: T.Dict[str, T.Any]): + class OpenMPDependency(SystemDependency): + # Map date of specification release (which is the macro value) to a version. + VERSIONS = { ++ '202111': '5.2', ++ '202011': '5.1', + '201811': '5.0', + '201611': '5.0-revision1', # This is supported by ICC 19.x + '201511': '4.5', diff --git a/dev-util/meson/meson-1.2.1-r2.ebuild b/dev-util/meson/meson-1.2.1-r2.ebuild new file mode 100644 index 000000000000..48e351394586 --- /dev/null +++ b/dev-util/meson/meson-1.2.1-r2.ebuild @@ -0,0 +1,122 @@ +# Copyright 2016-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} pypy3 ) +DISTUTILS_USE_PEP517=setuptools + +if [[ ${PV} = *9999* ]]; then + EGIT_REPO_URI="https://github.com/mesonbuild/meson" + inherit git-r3 +else + inherit pypi + + MY_P=${P/_/} + S=${WORKDIR}/${MY_P} + + if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + fi +fi + +inherit bash-completion-r1 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 + ) +" +RDEPEND=" + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${P}-python-path.patch + "${FILESDIR}"/${P}-llvm-17.patch +) + +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[@]}" 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 + distutils-r1_src_test + fi +} + +python_test() { + ( + # test_meson_installed + unset PYTHONDONTWRITEBYTECODE + + # https://bugs.gentoo.org/687792 + unset PKG_CONFIG + + # 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 + # autodetection. 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) + + # Call python3 instead of EPYTHON to satisfy test_meson_uninstalled. + python3 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 + + dobashcomp data/shell-completions/bash/meson +}