From f516638b7fe9592837389826a6152a7e1b251c54 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 30 May 2020 11:44:06 +0100 Subject: gentoo resync : 30.05.2020 --- dev-util/meson/Manifest | 13 +- dev-util/meson/files/0.54.2-multilib-clang.patch | 181 +++++++++++++++++++++++ dev-util/meson/meson-0.52.1.ebuild | 2 +- dev-util/meson/meson-0.53.1.ebuild | 2 +- dev-util/meson/meson-0.54.0.ebuild | 2 +- dev-util/meson/meson-0.54.1.ebuild | 2 +- dev-util/meson/meson-0.54.2.ebuild | 96 ++++++++++++ dev-util/meson/meson-9999.ebuild | 27 +++- 8 files changed, 315 insertions(+), 10 deletions(-) create mode 100644 dev-util/meson/files/0.54.2-multilib-clang.patch create mode 100644 dev-util/meson/meson-0.54.2.ebuild (limited to 'dev-util/meson') diff --git a/dev-util/meson/Manifest b/dev-util/meson/Manifest index 2c88ef0ceace..54006aef1da1 100644 --- a/dev-util/meson/Manifest +++ b/dev-util/meson/Manifest @@ -1,13 +1,16 @@ AUX 0.52.1-test_pkgconfig_gen_deps.patch 1688 BLAKE2B f228e1d721449611799606cfb3aabcd3f347b0776a0f25dcf3b1abcfa6b5eb0506cb9e5b4069dfd9008a0c11569db9a50885c9edf59e1f4a129e6f571921bbed SHA512 4720834226b88661d7b631f1739c6ae48ebabd1604081380e143ab420e78236db7bc3141f5adc68aa03c6c074d1ed415ac515b351bd34c1d4dbbdbf1492cd5ef AUX 0.53.1-remove-asan-ld_preload.patch 946 BLAKE2B 2f43446f853b5233c7c959e0216eadae9d190efd4743a138afae73d42f082499793b4688e2419cb3ef38fe7c5e7f29b472e8a27e9ce8701c28f83f390f55dddd SHA512 50b7b4c269d186e3c2274297f04dae46484af4f2f090bef3fc42dfbecab94d8a91b31c27369cf40a52c7ce71cf96d9bc22601739b6e886c6c710f0665c2ef311 AUX 0.53.1-remove-asan.patch 842 BLAKE2B 02864bbd41dd16d3e9e8e7ce9e9ef604f2fc6babd26958a4364147d392d56d8a87baec41fb009389a5fc989067019c6de89d1e2c82043ba7df463e32c99f885c SHA512 4abf8088832a1a9336fdffe04bc91a1fbab7363b72c5a1d14b22f408ea25f180d6526f8d6b3a2866a819f1895c93035869fff799da36b5040b8fb89a65ab0e23 +AUX 0.54.2-multilib-clang.patch 8033 BLAKE2B 724d87eef8d560eb733b9873d28afaa6dd49c23867440d182d427a9a569bcd6852c5007675fde77724f6e05d1a4beb371fb0b474e8aeec2dbae0a7e8ca3a78b8 SHA512 1251222bc107abc1b5b0acfa6c52b4bfcdd47baf2651b291f162b39d384b61383627a7ab4d925ad2df1f36307e79e4806c6e05eb889e98a58688657e40ada29a DIST meson-0.52.1.tar.gz 1507764 BLAKE2B 8daf43d84186905d5c32629ab6a250955bdffda502d2d79f991111d0ae7e3a21b3f9bc09ef5258f709eee4e17b09c6f09e7685a72153efcf8daaaec2645eef8a SHA512 fea3e85191782999de3a9431ec1d2cfacea32cf9598205443855042dca50ddac92eb3e74be4dd6a62bd80a606b73e76a04877b2c8efb275d9de5f87e3f9f8f41 DIST meson-0.53.1.tar.gz 1552121 BLAKE2B 3f0bbbeba6307397dfe5e49c1f978d6246d8e18317d0361b6f013f5c2ba55ad7cba53c985418686c20db159b7790b45a0c2e05d86f861cd0280fb07afdbeb847 SHA512 0c96c354bcd7e6945473c7df0ddff929ef2bae9c2dfc7b48c6c6174c7f2be4f798398929f9c4d5986aa5fc882305ff76371ad0d65a499f058b33b05ff7025859 DIST meson-0.54.0.tar.gz 1683491 BLAKE2B 3016beb44c4401672947afa898253b69769f998e18e00baedc3bcb525a9923b9154d7db79cfa4c38fcf66eeaee8137f47917689fdde33674b1f0483b21923393 SHA512 e3c97ffd9409a543e45c8be7b12d4e8437de8dbd0cd236fbe092952d7d0833728d46ff6b679c8a73dae4c4016fdf38b43b56f3959a95968a29db109ebfe254e7 DIST meson-0.54.1.tar.gz 1687532 BLAKE2B 5bd355b35a4aa037e490615629480a194c04821fb18b137f090af89f6c33c700d0756bb2d7e9e608ecf4873886be10493bfeddce55fef3d905793ad3ccccfa68 SHA512 dbc3fed326ba208f5a6eee7e3106d07450e7a3569d425013fba8c51e7cfd6485f9b083836dc74be49bc9839bd640ce54741d9335097cbd28f6a320d5fec7ecfe -EBUILD meson-0.52.1.ebuild 2100 BLAKE2B da9c9eefec2f28acc8df8fc2e0484c781eef4bd1485826ca58717563a4d0f1e187653ae291ebb1f8c8a7da32c206d8dc54858fdedca54e5427d576eb1f9ab8ff SHA512 7794fdb872d5399e7315f781836de48e263c79ee7069d5c13005e7a028999d4aef282a67d56d4e95dcb4a784cb2e60968301f8792aec276d78c08062a1e63267 -EBUILD meson-0.53.1.ebuild 1980 BLAKE2B 97d27410b495edd1c85818593d2422031825e2933793e9c3b838b4fad7c339a7a7b4543f371449c9e8cc150e82d8033f4c371a299c3ba4a54774f55318bfb9fe SHA512 3316d47f924e64c576e9acc74ab2912c503a4698c5facc7c366e4a249dd0ba188ab975ba2a29d5afcf703d34ba8431b311e07b7c59127f1bad7b25c2d0a3bb6b -EBUILD meson-0.54.0.ebuild 1543 BLAKE2B d888fe595fc099515fd1ea247f82617560a99f75d6c9eedf4966c60a6429d16db3a7ed894d9ebcf7693e3b391c48cc59d2729b3a5625aad923d1f39057996bf3 SHA512 d99ef333252c2d5222156f777a2ac6c31360f3ff12f5f1790bb084dc47b59c8ae3a087a19a963b95e022f133d24b20488436e0ffc63dad0b1e0e0b7cae8e4b3f -EBUILD meson-0.54.1.ebuild 2035 BLAKE2B 02cb66ba7aef209bcbcb471bdfb0d0a88f8b330ae7a37ffc37d09ef377ce4bb2b573bf7c8644ca50b33c0d852204d3779a0492e9368d1a4a902ecc218ec5dd72 SHA512 ecb237f5eab42d92da101e6faaea803eb3c5c33556aeac9cdeb6a232a38dbc05c2849840cbc98f89c615a88f723a520c278df23019b830d02f6fc3c42f85f63d -EBUILD meson-9999.ebuild 1543 BLAKE2B d888fe595fc099515fd1ea247f82617560a99f75d6c9eedf4966c60a6429d16db3a7ed894d9ebcf7693e3b391c48cc59d2729b3a5625aad923d1f39057996bf3 SHA512 d99ef333252c2d5222156f777a2ac6c31360f3ff12f5f1790bb084dc47b59c8ae3a087a19a963b95e022f133d24b20488436e0ffc63dad0b1e0e0b7cae8e4b3f +DIST meson-0.54.2.tar.gz 1691270 BLAKE2B c1ba552b5d56e0b6b73de46ec6bc90fb520665688d2f5c809baf84749d3bb1dec1fe0131136e1539369fa666ae2427c8fccd5928cbda0b8e3e1edb4a5dc8abbc SHA512 ad5ec826879d3d85088ca40d768599a4c8e66983f2a6a7ebe8ab12051cad18b4ade9a2afd30fe543b0a75900822992c8ef7161d369489e2211dd7a1a8ccc32ed +EBUILD meson-0.52.1.ebuild 2101 BLAKE2B 5e6eaaf5c081f0749530b4a69971993e7f926ab69e8fc9f239fddb01c12f42fdc5c788736a3707746b286fdedfcd9dd3b59617bc0a794718c16f6cfbe7fc5ce3 SHA512 88a1a8256211fac613752fdfe62fc9d8f666ef7f7dac7a536ac2312357c7bea6a55316dd7e9f81e810c5d10654afc61a3b62ecd59eeeb01a786b335d1b92fc57 +EBUILD meson-0.53.1.ebuild 1981 BLAKE2B ae5dbc32f30a50456ad7bb5780b248e494c22838ba34846141551e206b20ceffcfb3c40908dd17814cdeacac2713b1f4dce69392257b9c12dd3bcc8eab18d697 SHA512 dab0953fc1fd408130d00b2c36fad8a292c0c3e8a1e3b3b97aa675522fd6aa56e9f884f39165ebcc8547d30253250a9e63a7cf922653c1bef569717d51f3f0e2 +EBUILD meson-0.54.0.ebuild 1544 BLAKE2B b326f8d159b8e75dd38300046fb7ce718335dc1717735ea0a41754f5331a0d9613260b736603f8d0194e88878cf3c34dfa18f076ed031c5f51bbbc9897465c63 SHA512 8fd2b4c23c6ace8021c0c267472b5bafc4a64092ea5fab222f1d637927769626e3d5f72f40446dba8603abda0e49a5ae88aac912df49a0d70cc8e5fae097f025 +EBUILD meson-0.54.1.ebuild 2036 BLAKE2B 23f30ffed174af8155f3a1e6cb761d085f1a8688df6137368752bac79fc57fbb6475310d6f2893beefe3754849bd579bdf50d17e4c2052ff3c9c7507f85f0cc8 SHA512 80949c24c9395631fb8c6b60a75df0360707deb3a2052449f47f9908f793b22d632b6881349278f72f9d820c52985f569719d2bbcfdf135d0ec0fbaaef65bba0 +EBUILD meson-0.54.2.ebuild 2273 BLAKE2B 061e0b4cdaeb3220b63f5e874175b3949419fba1712d365fa0ede75a6e8dfb27bd9b632748c103775bcc62170e7b0cc9ad18bbbe7c984b8a78c093ab09a2cdbf SHA512 97b83377523af3c02f3748d8090ee1d054e96513be0e1203b5eca176315c7d785a91cba7edd56d2215cbdbde9f1876a8870ff40c30d87b66d13662faa68a2801 +EBUILD meson-9999.ebuild 2217 BLAKE2B 8e5cc488d3864a835fb5989f27d3a2a73668bc0f06dc3157f5cf6ff1b9361f170d8e13ab0dc46c6b7731aa2a92c34bfe1b2c8255fcb595eceedbbeefbf208586 SHA512 7e7bca6060adfa4d4c8cb5835ed5dab9dbc2ca15c9da486e8fb7d44c969c21564ebaed6f4cc184a9c047a179a0f88c8ea0a6086988cd0e2634186fa6c51d33dd MISC metadata.xml 423 BLAKE2B 3dc99d370f7c1f4e9d9e47b3e472c1cb26ffedf4dacf20d84a27c4bddb9a47aa09849cdb4d1307f6980cf63511584f71dc3c1c9f20debb32134e004bd57130fe SHA512 417736194719d102e906ae6efcfa37930d4706a8a1e94b09a266e044ee806ef25ded2f935fed76a2d29f6443c0387b2ebd37f9d084887bce30a7079e2ff76467 diff --git a/dev-util/meson/files/0.54.2-multilib-clang.patch b/dev-util/meson/files/0.54.2-multilib-clang.patch new file mode 100644 index 000000000000..b3aa3693e697 --- /dev/null +++ b/dev-util/meson/files/0.54.2-multilib-clang.patch @@ -0,0 +1,181 @@ +From 9dc3ca2c1c9fbb47e731551c6432df144f725261 Mon Sep 17 00:00:00 2001 +From: Yevhenii Kolesnikov +Date: Thu, 21 May 2020 18:58:47 +0300 +Subject: [PATCH] compilers: add fetching of define list for clang + +Simmilar to gcc, the list of pre-processor defines can be fetched with +`-dM -E` option. The way cpu_family is determined on linux relies on +this list. + +Fixes incorrect value of cpu_family on linux, when crosscompiling: + +``` +CC="clang -m32" meson ./build +``` + +Signed-off-by: Yevhenii Kolesnikov +Co-authored-by: Dylan Baker +--- + mesonbuild/compilers/c.py | 5 +++-- + mesonbuild/compilers/cpp.py | 5 +++-- + mesonbuild/compilers/fortran.py | 2 +- + mesonbuild/compilers/mixins/clang.py | 9 ++++++++- + mesonbuild/compilers/objc.py | 2 +- + mesonbuild/compilers/objcpp.py | 2 +- + mesonbuild/environment.py | 26 +++++++++++++++++++++++++- + 7 files changed, 42 insertions(+), 9 deletions(-) + +diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py +index 1bc9e84998..aac99b4269 100644 +--- a/mesonbuild/compilers/c.py ++++ b/mesonbuild/compilers/c.py +@@ -86,9 +86,10 @@ class ClangCCompiler(ClangCompiler, CCompiler): + _C18_VERSION = '>=8.0.0' + + def __init__(self, exelist, version, for_machine: MachineChoice, +- is_cross, info: 'MachineInfo', exe_wrapper=None, **kwargs): ++ is_cross, info: 'MachineInfo', exe_wrapper=None, ++ defines: T.Optional[T.List[str]] = None, **kwargs): + CCompiler.__init__(self, exelist, version, for_machine, is_cross, info, exe_wrapper, **kwargs) +- ClangCompiler.__init__(self) ++ ClangCompiler.__init__(self, defines) + default_warn_args = ['-Wall', '-Winvalid-pch'] + self.warn_args = {'0': [], + '1': default_warn_args, +diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py +index f4bcfa9f89..478a68c13c 100644 +--- a/mesonbuild/compilers/cpp.py ++++ b/mesonbuild/compilers/cpp.py +@@ -155,10 +155,11 @@ def _find_best_cpp_std(self, cpp_std): + + class ClangCPPCompiler(ClangCompiler, CPPCompiler): + def __init__(self, exelist, version, for_machine: MachineChoice, +- is_cross, info: 'MachineInfo', exe_wrapper=None, **kwargs): ++ is_cross, info: 'MachineInfo', exe_wrapper=None, ++ defines : T.Optional[T.List[str]] = None, **kwargs): + CPPCompiler.__init__(self, exelist, version, for_machine, is_cross, + info, exe_wrapper, **kwargs) +- ClangCompiler.__init__(self) ++ ClangCompiler.__init__(self, defines) + default_warn_args = ['-Wall', '-Winvalid-pch', '-Wnon-virtual-dtor'] + self.warn_args = {'0': [], + '1': default_warn_args, +diff --git a/mesonbuild/compilers/fortran.py b/mesonbuild/compilers/fortran.py +index c155b5b4f3..af83c0e564 100644 +--- a/mesonbuild/compilers/fortran.py ++++ b/mesonbuild/compilers/fortran.py +@@ -424,7 +424,7 @@ def __init__(self, exelist, version, for_machine: MachineChoice, + **kwargs): + FortranCompiler.__init__(self, exelist, version, for_machine, + is_cross, info, exe_wrapper, **kwargs) +- ClangCompiler.__init__(self) ++ ClangCompiler.__init__(self, []) + self.id = 'flang' + default_warn_args = ['-Minform=inform'] + self.warn_args = {'0': [], +diff --git a/mesonbuild/compilers/mixins/clang.py b/mesonbuild/compilers/mixins/clang.py +index 1c0ee452f4..0ee10ad5d5 100644 +--- a/mesonbuild/compilers/mixins/clang.py ++++ b/mesonbuild/compilers/mixins/clang.py +@@ -42,9 +42,10 @@ + } # type: T.Dict[str, T.List[str]] + + class ClangCompiler(GnuLikeCompiler): +- def __init__(self): ++ def __init__(self, defines: T.Optional[T.Dict[str, str]]): + super().__init__() + self.id = 'clang' ++ self.defines = defines or {} + self.base_options.append('b_colorout') + # TODO: this really should be part of the linker base_options, but + # linkers don't have base_options. +@@ -56,6 +57,12 @@ def __init__(self): + def get_colorout_args(self, colortype: str) -> T.List[str]: + return clang_color_args[colortype][:] + ++ def has_builtin_define(self, define: str) -> bool: ++ return define in self.defines ++ ++ def get_builtin_define(self, define: str) -> T.Optional[str]: ++ return self.defines.get(define) ++ + def get_optimization_args(self, optimization_level: str) -> T.List[str]: + return clang_optimization_args[optimization_level] + +diff --git a/mesonbuild/compilers/objc.py b/mesonbuild/compilers/objc.py +index 52d258dcdb..d351c8826a 100644 +--- a/mesonbuild/compilers/objc.py ++++ b/mesonbuild/compilers/objc.py +@@ -86,7 +86,7 @@ def __init__(self, exelist, version, for_machine: MachineChoice, + **kwargs): + ObjCCompiler.__init__(self, exelist, version, for_machine, is_cross, + info, exe_wrapper, **kwargs) +- ClangCompiler.__init__(self) ++ ClangCompiler.__init__(self, []) + default_warn_args = ['-Wall', '-Winvalid-pch'] + self.warn_args = {'0': [], + '1': default_warn_args, +diff --git a/mesonbuild/compilers/objcpp.py b/mesonbuild/compilers/objcpp.py +index c8b422b35d..10555b4551 100644 +--- a/mesonbuild/compilers/objcpp.py ++++ b/mesonbuild/compilers/objcpp.py +@@ -84,7 +84,7 @@ def __init__(self, exelist, version, for_machine: MachineChoice, + is_cross, info: 'MachineInfo', exe_wrapper=None, + **kwargs): + ObjCPPCompiler.__init__(self, exelist, version, for_machine, is_cross, info, exe_wrapper, **kwargs) +- ClangCompiler.__init__(self) ++ ClangCompiler.__init__(self, []) + default_warn_args = ['-Wall', '-Winvalid-pch', '-Wnon-virtual-dtor'] + self.warn_args = {'0': [], + '1': default_warn_args, +diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py +index 8fad6288b1..cb6ae7d514 100644 +--- a/mesonbuild/environment.py ++++ b/mesonbuild/environment.py +@@ -726,6 +726,28 @@ def get_lcc_version_from_defines(defines): + minor = defines.get('__LCC_MINOR__', '0') + return dot.join((generation, major, minor)) + ++ @staticmethod ++ def get_clang_compiler_defines(compiler): ++ """ ++ Get the list of Clang pre-processor defines ++ """ ++ args = compiler + ['-E', '-dM', '-'] ++ p, output, error = Popen_safe(args, write='', stdin=subprocess.PIPE) ++ if p.returncode != 0: ++ raise EnvironmentException('Unable to get clang pre-processor defines:\n' + output + error) ++ defines = {} ++ for line in output.split('\n'): ++ if not line: ++ continue ++ d, *rest = line.split(' ', 2) ++ if d != '#define': ++ continue ++ if len(rest) == 1: ++ defines[rest] = True ++ if len(rest) == 2: ++ defines[rest[0]] = rest[1] ++ return defines ++ + def _get_compilers(self, lang, for_machine): + ''' + The list of compilers is detected in the exact same way for +@@ -1043,6 +1065,8 @@ def sanitize(p): + if 'clang' in out: + linker = None + ++ defines = self.get_clang_compiler_defines(compiler) ++ + # Even if the for_machine is darwin, we could be using vanilla + # clang. + if 'Apple' in out: +@@ -1063,7 +1087,7 @@ def sanitize(p): + + return cls( + ccache + compiler, version, for_machine, is_cross, info, +- exe_wrap, full_version=full_version, linker=linker) ++ exe_wrap, defines, full_version=full_version, linker=linker) + + if 'Intel(R) C++ Intel(R)' in err: + version = search_version(err) diff --git a/dev-util/meson/meson-0.52.1.ebuild b/dev-util/meson/meson-0.52.1.ebuild index 2408f6bf1444..077d7508af29 100644 --- a/dev-util/meson/meson-0.52.1.ebuild +++ b/dev-util/meson/meson-0.52.1.ebuild @@ -16,7 +16,7 @@ fi inherit distutils-r1 toolchain-funcs DESCRIPTION="Open source build system" -HOMEPAGE="http://mesonbuild.com/" +HOMEPAGE="https://mesonbuild.com/" LICENSE="Apache-2.0" SLOT="0" diff --git a/dev-util/meson/meson-0.53.1.ebuild b/dev-util/meson/meson-0.53.1.ebuild index e101c51b6bef..a0802ef4fcb5 100644 --- a/dev-util/meson/meson-0.53.1.ebuild +++ b/dev-util/meson/meson-0.53.1.ebuild @@ -16,7 +16,7 @@ fi inherit distutils-r1 toolchain-funcs DESCRIPTION="Open source build system" -HOMEPAGE="http://mesonbuild.com/" +HOMEPAGE="https://mesonbuild.com/" LICENSE="Apache-2.0" SLOT="0" diff --git a/dev-util/meson/meson-0.54.0.ebuild b/dev-util/meson/meson-0.54.0.ebuild index 6154c7a5df15..77f6244e6e29 100644 --- a/dev-util/meson/meson-0.54.0.ebuild +++ b/dev-util/meson/meson-0.54.0.ebuild @@ -16,7 +16,7 @@ fi inherit distutils-r1 toolchain-funcs DESCRIPTION="Open source build system" -HOMEPAGE="http://mesonbuild.com/" +HOMEPAGE="https://mesonbuild.com/" LICENSE="Apache-2.0" SLOT="0" diff --git a/dev-util/meson/meson-0.54.1.ebuild b/dev-util/meson/meson-0.54.1.ebuild index e10747faf81e..053a12bbeb2f 100644 --- a/dev-util/meson/meson-0.54.1.ebuild +++ b/dev-util/meson/meson-0.54.1.ebuild @@ -16,7 +16,7 @@ fi inherit distutils-r1 toolchain-funcs DESCRIPTION="Open source build system" -HOMEPAGE="http://mesonbuild.com/" +HOMEPAGE="https://mesonbuild.com/" LICENSE="Apache-2.0" SLOT="0" diff --git a/dev-util/meson/meson-0.54.2.ebuild b/dev-util/meson/meson-0.54.2.ebuild new file mode 100644 index 000000000000..4945b8d2278e --- /dev/null +++ b/dev-util/meson/meson-0.54.2.ebuild @@ -0,0 +1,96 @@ +# Copyright 2016-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{6,7,8} ) +DISTUTILS_USE_SETUPTOOLS="rdepend" + +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 ~x64-macos ~x64-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 + ) +" + +PATCHES=( + "${FILESDIR}"/0.54.2-multilib-clang.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[@]}" 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 + + ${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 6154c7a5df15..5cd9c5f13bb2 100644 --- a/dev-util/meson/meson-9999.ebuild +++ b/dev-util/meson/meson-9999.ebuild @@ -16,7 +16,7 @@ fi inherit distutils-r1 toolchain-funcs DESCRIPTION="Open source build system" -HOMEPAGE="http://mesonbuild.com/" +HOMEPAGE="https://mesonbuild.com/" LICENSE="Apache-2.0" SLOT="0" @@ -34,6 +34,31 @@ DEPEND=" ) " +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 -- cgit v1.2.3