Skip to content

Makefiles: quote `$(COLOR)` expansions

This handles the case where COLOR is set to some ANSI-like color sequence in the ambient environment. These sequences tend to include ; which terminates the command and tries to use the next component (typically an integer, possibly with a trailing m) with errors like:

/bin/sh: line 1: 2: command not found
/bin/sh: line 1: 255: command not found
/bin/sh: line 1: 221: command not found
/bin/sh: line 1: 255m: command not found

Also add a test that sets COLOR in the environment which affects the generated Makefiles behavior.

See: https://discourse.cmake.org/t/cmake-failing-gcc-compiler-checks/8277


Backport: release

Merge request reports