diff --git a/src/build/Common.gmake b/src/build/Common.gmake
index 251998e62cf4ee74511a7071b10c1219bf5aa6a9..95fe24a09f17f7724781ab6612bec271e229c4d6 100644
--- a/src/build/Common.gmake
+++ b/src/build/Common.gmake
@@ -179,7 +179,7 @@ endif
 # Compiler-specific options
 CFLAGS	+=	-MMD -MP
 CC		?=	gcc
-CCPRE	?= ${shell if [ `echo __clang__ | $(CC) -E - | grep -v '^#'` != __clang__ ] ; then echo clang ; elif [ `echo __INTEL_COMPILER | $(CC) -E - | grep -v '^#'` != __INTEL_COMPILER ] ; then echo icc ; else echo gcc ; fi}
+CCPRE	?= ${shell if [ `echo __clang__ | $(CC) -E - | tail -n 1` != __clang__ ] ; then echo clang ; elif [ `echo __INTEL_COMPILER | $(CC) -E - | tail -n 1` != __INTEL_COMPILER ] ; then echo icc ; else echo gcc ; fi}
 ifeq ($(CCPRE),clang)
  ifeq ($(CC),cc)
   CXX	:= c++