The method copy_dylib in the class PythonStandalone in build_app.py seems to create a symlink that points to itself.
When I run "python3 setup.py py2app" for a very simplistic PyQt4 sample application py2app tries to copy the file "/usr/local/lib/libpng15.15.dylib" to "dist/test.app/Contents/Frameworks/libpng15.15.dylib". However, the code in the copy_dylib routine ends up creating a symlink from libpng15.15.dylib to libpng15.15.dylib (i.e. itself).
The causes the app packaging process to be aborted with the error message: error: could not create '[...]/dist/test.app/Contents/Frameworks/libpng15.15.dylib': Too many levels of symbolic links
I'm using python3.3 installed using brew.