I just find the right snippet of documentation, so while I don't fully understand, I have a clue. Whether you use the property name or the reference to it depends on whether you want to test the existence of the property (which I don't) or its value; but you can only do the latter in ant 1.8.0 and later, which is why lots of web pages have examples of the former. (My confusion came from getting info from 2 different sources, which seem to have been based on different versions of ant.) I am running a local build right now, but will fix the Makefile soon. Thanks, Peter!
Ah, I see, you’re completely right!
But still, when you put @unless=„DTDcompat“ it checks whether the property is set – which is always the case (being true or false). If you want to check for the value, use ${DTDcompat}. But could it be feasible to remove the <condition> statement completely and have the property just passed in (if necessary)? Than the @unless should stay as it is …