From: Karel Zak Date: Wed, 25 Feb 2015 09:06:40 +0000 (+0100) Subject: build-sys: add --disable-colors-default X-Git-Tag: v2.27-rc1~427 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=81f55ab9043cfa26851a9dbeb356e5dc7f791a45;p=thirdparty%2Futil-linux.git build-sys: add --disable-colors-default The current util-linux is to have enabled colorized outputs by default, this default behavior is possible to change by new configure option --disable-colors-default. Signed-off-by: Karel Zak --- diff --git a/configure.ac b/configure.ac index 4ae450663c..122b5d532c 100644 --- a/configure.ac +++ b/configure.ac @@ -1849,6 +1849,7 @@ AC_ARG_ENABLE([makeinstall-chown], ) AM_CONDITIONAL([MAKEINSTALL_DO_CHOWN], [test "x$enable_makeinstall_chown" = xyes]) + AC_ARG_ENABLE([makeinstall-setuid], AS_HELP_STRING([--disable-makeinstall-setuid], [do not do setuid chmod operations during "make install"]), [], [enable_makeinstall_setuid=yes] @@ -1856,6 +1857,15 @@ AC_ARG_ENABLE([makeinstall-setuid], AM_CONDITIONAL([MAKEINSTALL_DO_SETUID], [test "x$enable_makeinstall_setuid" = xyes]) +AC_ARG_ENABLE([colors-default], + AS_HELP_STRING([--disable-colors-default], [do not colorize output from utils by default]), + [], [enable_colors_default=yes] +) +AS_IF([test "x$enable_colors_default" = xyes], [ + AC_DEFINE([USE_COLORS_BY_DEFAULT], [1], [Enables colorized output from utils by default]) +]) + + AC_ARG_VAR([SUID_CFLAGS], [CFLAGS used for binaries which are usually with the suid bit]) AC_ARG_VAR([SUID_LDFLAGS], diff --git a/lib/colors.c b/lib/colors.c index 6f79ac4a8a..2e5af48d9b 100644 --- a/lib/colors.c +++ b/lib/colors.c @@ -18,6 +18,15 @@ #include "debug.h" +/* + * Default behavior, maybe be override by terminal-colors.d/{enable,disable}. + */ +#ifdef USE_COLORS_BY_DEFAULT +# define UL_COLORMODE_DEFAULT UL_COLORMODE_AUTO /* check isatty() */ +#else +# define UL_COLORMODE_DEFAULT UL_COLORMODE_NEVER /* no colors by default */ +#endif + /* * terminal-colors.d debug stuff */ @@ -678,7 +687,7 @@ int colors_init(int mode, const char *name) if (mode == UL_COLORMODE_UNDEF && (atty = isatty(STDOUT_FILENO))) { int rc = colors_read_configuration(cc); if (rc) - cc->mode = UL_COLORMODE_AUTO; + cc->mode = UL_COLORMODE_DEFAULT; else { /* evaluate scores */ @@ -686,7 +695,7 @@ int colors_init(int mode, const char *name) cc->scores[UL_COLORFILE_ENABLE]) cc->mode = UL_COLORMODE_NEVER; else - cc->mode = UL_COLORMODE_AUTO; + cc->mode = UL_COLORMODE_DEFAULT; atexit(colors_deinit); }