Your linker command is missing various necessary C runtime objects (e.g. crtbegin_so.o / crtend_so.o), as well as GCC runtime support library (e.g. -lgcc)
This probably comes from the fact that ${LDCMD} maps to the linker program (arm-linux-androideabi-ld) while it should be using the compiler driver instead (arm-linux-androideabi-gcc).
The toolchain was upgraded to binutils-2.20.1 for NDK r7, this probably explains why the linker is acting differently, but I would guess your configure script is buggy (quite common when cross-compiling projects), or not invoked with the right options (e.g. linux-generic32 looks suspicious).