OK, I seem to have partially solved the problem. But there are still some things going wrong.
By changing line 8 to CPP="/usr/bin/cpp" and leaving line 10 as it is, dada now seems to pipe things through pb the way it is supposed to. But various things don't work: in particular, some of the test programs and included scripts aren't working properly. Sometimes they quite because of an unrecognised variable, and sometimes I just get a runtime error before the script is even piped to pb (e.g. pomo.pb).
Any help would be greatly appreciated.