This issue is "resolved". However, I think the build infrastructure for OS X could use to be updated. The issue is that Apple ships OS X with Java 1.6, but includes symbolic links from 1.4 -> 1.6, and 1.5 -> 1.6. The Derby build detects (or think it detects) a real JDK 1.4 and 1.5 present on the machine and sets up the environment accordingly. This results in a fail.
Nothing I did could convince Derby not to detect these versions. Ultimately, I followed the instructions here to install an actual old version of 1.4 and 1.5 on my machine:
and the build seems happy. Given that Apple no longer makes 1.4 or 1.5 available for download, and they must be downloaded from the internets and side-loaded, it seems like the build should be updated to "do the right thing" in the OS X environment. If Derby is capable of building in a pure 1.6 environment (as it seems to be with Windows), I would recommend ripping out all of the OS X Java version detection code save for 1.6. Any developer with a reasonably current MacOS X install (read: the past three years) -- i.e. most developers -- will encounter this failure building Derby on OS X.