.config is of the form: CONFIG_CC_VERSION_TEXT="gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-9)" while CC_VERSION_TEXT is of the form: gcc (GCC) 11.2.1 20220127 (Red Hat 11.2.1-7) thus when comparing these, CONFIG_CC_VERSION_TEXT should not be put in "", otherwise we get () outside "" which shell then tries to evaluate. Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx> --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index daeb5c88b50b..d5c03c827825 100644 --- a/Makefile +++ b/Makefile @@ -1714,9 +1714,9 @@ PHONY += prepare # now expand this into a simple variable to reduce the cost of shell evaluations prepare: CC_VERSION_TEXT := $(CC_VERSION_TEXT) prepare: - @if [ "$(CC_VERSION_TEXT)" != "$(CONFIG_CC_VERSION_TEXT)" ]; then \ + @if [ "$(CC_VERSION_TEXT)" != $(CONFIG_CC_VERSION_TEXT) ]; then \ echo >&2 "warning: the compiler differs from the one used to build the kernel"; \ - echo >&2 " The kernel was built by: $(CONFIG_CC_VERSION_TEXT)"; \ + echo >&2 " The kernel was built by: "$(CONFIG_CC_VERSION_TEXT)";" \ echo >&2 " You are using: $(CC_VERSION_TEXT)"; \ fi -- MST