aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Kortkamp <tobik@FreeBSD.org>2021-04-08 09:33:03 +0000
committerTobias Kortkamp <tobik@FreeBSD.org>2021-04-20 06:57:35 +0000
commitff2796d5bc837b0c6cb26791439c64f96fe1c090 (patch)
treef89bd3158d5c3c1fe64b605a6b717c4b60144823
parenta91d65363fe8aa72bdf427bb639b0fe258ee7c01 (diff)
downloadports-ff2796d5bc83.tar.gz
ports-ff2796d5bc83.zip
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
-rw-r--r--Mk/Uses/meson.mk5
-rw-r--r--devel/meson/Makefile1
-rw-r--r--devel/meson/files/patch-mesonbuild_compilers_mixins_clang.py24
3 files changed, 30 insertions, 0 deletions
diff --git a/Mk/Uses/meson.mk b/Mk/Uses/meson.mk
index 0322cb1ed47d..c089b76a0640 100644
--- a/Mk/Uses/meson.mk
+++ b/Mk/Uses/meson.mk
@@ -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
diff --git a/devel/meson/Makefile b/devel/meson/Makefile
index 8a25e36d64ba..34f0488e3416 100644
--- a/devel/meson/Makefile
+++ b/devel/meson/Makefile
@@ -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}/
diff --git a/devel/meson/files/patch-mesonbuild_compilers_mixins_clang.py b/devel/meson/files/patch-mesonbuild_compilers_mixins_clang.py
new file mode 100644
index 000000000000..d745bd8739b5
--- /dev/null
+++ b/devel/meson/files/patch-mesonbuild_compilers_mixins_clang.py
@@ -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 = {