This is a "FYI". When compiling sng on OS X 10.4 / gcc 4.0.1, I get a few warnings and the following errors:
sngd.c:33: error: static declaration of 'png_ptr' follows non-static declaration
sng.h:34 error: previous declaration of 'png_ptr' was here
sngd.c:34: error: static declaration of 'info_ptr' follows non-static declaration
sng.h:35: error: previous...