use of target="...maven.compile.target..." is incorrect, as maven.compile.target can be empty, and is by default in Maven 1.0.2.
Instead, should conditionally use <setproperty />, as is done for maven.compile.source later.
Also, source is now duplicated by the source="..." parameter to javac. It should be removed, and rely on the later property setting.
Let me know if this isn't clear, I'll do a patch.