Shell conditional in makefile
makefile, sh
Solution
The right syntax for a numeric comparison in shell scripting is:
if [ $$? -ne 0 ]; then
Be sure you have spaces BEFORE and AFTER the square brackets. They cannot be in the same word as the arguments.
Also you're missing a semicolon after the `fi`:
fi; \
done; \
Problem
Cant get this to work , tried everything for the conditional [] bash brackets quotes etc The if $$? != "0" never matches but the $$? is non zero at times. Any ideas ? ``` test: testdrivers -@rc=0; \ for file in $(TSTFILES); do \ ./$$file; \ if $$? != "0" ; then \ echo test fail;\ rc=`expr $$rc + 1` ;\ fi \ done; \ echo; echo "Tests failed: $$rc" ```