Mk/Uses/meson.mk: Do not force color output (D29353)

By default Meson forces color output.  Ninja strips the escape
sequences before they go into the log.  Samurai does not do that,
so we end up with some garbage in the logs.  Pass -Db_colorout=never
to Meson to disable colors in general.  Also see
https://mesonbuild.com/Builtin-options.html

This requires a small backport in devel/meson since the b_colorout
option is broken with Clang at the moment.

PR:		254678
Exp-run by:	antoine
This commit is contained in:
Tobias Kortkamp 2021-04-08 11:33:03 +02:00
parent a91d65363f
commit ff2796d5bc
No known key found for this signature in database
GPG key ID: A4F09FB73CC51F61
3 changed files with 30 additions and 0 deletions

View file

@ -36,6 +36,11 @@ CONFIGURE_ARGS+= --prefix ${PREFIX} \
--mandir man \
--infodir ${INFO_PATH}
# Disable color output. Meson forces it on by default, Ninja
# strips it before it goes to the log, but Samurai does not, so we
# might end up with ANSI escape sequences in the logs.
CONFIGURE_ARGS+= -Db_colorout=never
# meson has it own strip mechanic
INSTALL_TARGET= install

View file

@ -2,6 +2,7 @@
PORTNAME= meson
PORTVERSION= 0.57.1
PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= https://github.com/mesonbuild/${PORTNAME}/releases/download/${PORTVERSION}/

View file

@ -0,0 +1,24 @@
From c24a0f852489124fa002bdc90b5753547899b1cb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Krzysztof=20Ma=C5=82ysa?= <varqox@gmail.com>
Date: Tue, 16 Feb 2021 18:46:06 +0100
Subject: [PATCH] compilers: clang: Drop -Xclang before -fcolor-diagnostics
flag
Using -Xclang -fcolor-diagnostics provides no advantage to using just -fcolor-diagnostics option and sometimes causes problems:
* uncolored diagnostics on Arch Linux: https://bugs.archlinux.org/task/69662
* simple problem with removing flag -fcolor-diagnostics: https://github.com/clangd/clangd/issues/279
--- mesonbuild/compilers/mixins/clang.py.orig 2021-02-20 13:17:16 UTC
+++ mesonbuild/compilers/mixins/clang.py
@@ -29,9 +29,9 @@ if T.TYPE_CHECKING:
from ...dependencies import Dependency # noqa: F401
clang_color_args = {
- 'auto': ['-Xclang', '-fcolor-diagnostics'],
- 'always': ['-Xclang', '-fcolor-diagnostics'],
- 'never': ['-Xclang', '-fno-color-diagnostics'],
+ 'auto': ['-fcolor-diagnostics'],
+ 'always': ['-fcolor-diagnostics'],
+ 'never': ['-fno-color-diagnostics'],
} # type: T.Dict[str, T.List[str]]
clang_optimization_args = {