Hi All, Success!
The solution is to move the if-statement inside the bash command string. "$(OBJ)/%.o" :| "$(SRC)/%.c" $(SRCDIRS:+"/%.c") @+bash -c 'if [ `expr "$(NOOPTSRCS)" : '.*\b$(<:f)\b'` == 0 ]; then echo ---- Compiling: $(<:f); $(CC) ... "$<"; fi' @+bash -c 'if [ `expr "$(NOOPTSRCS)" : '.*\b$(<:f)\b'` != 0 ]; then echo ---- Compiling -O0: $(<:f); $(CC) ... "$<"; fi' Cheers, Sarah -- View this message in context: http://old.nabble.com/Calling-Bash-with--S-tp31904926p31911112.html Sent from the Gnu - Bash mailing list archive at Nabble.com.