Imported from libpng-1.0.5s.tar
diff --git a/scripts/makefile.beos b/scripts/makefile.beos
index b863706..27dbf83 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -31,7 +31,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # where make install puts libpng.a, libpng.so*, and png.h
diff --git a/scripts/makefile.dec b/scripts/makefile.dec
index 7a00e47..4183ab8 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -14,7 +14,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 CC=cc
diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx
index 4f17231..45e37de 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -24,8 +24,8 @@
 
 # for pgcc version 2.95.1, -O3 is buggy; don't use it.
 
-CFLAGS=-DPNG_USE_PNGGCCRD -I$(ZLIBINC) -Wall -O3 $(ALIGN) \
-	-funroll-loops -fomit-frame-pointer	# $(WARNMORE) -g -DPNG_DEBUG=5
+CFLAGS=-DPNG_USE_PNGGCCRD -I$(ZLIBINC) -Wall -O3 $(ALIGN) -funroll-loops \
+        -fomit-frame-pointer  # $(WARNMORE) -g -DPNG_DEBUG=5
 LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng -lz -lm
 
 RANLIB=ranlib
@@ -34,7 +34,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 INCPATH=$(prefix)/include
@@ -74,7 +74,8 @@
 	./pngtest
 
 install: libpng.a libpng.so.$(PNGVER)
-	-@mkdir $(INCPATH) $(LIBPATH)
+ 	-@if [ ! -d $(INCPATH)  ]; then mkdir $(INCPATH); fi
+ 	-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
 	cp png.h pngconf.h $(INCPATH)
 	chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
 	cp libpng.a libpng.so.$(PNGVER) $(LIBPATH)
diff --git a/scripts/makefile.linux b/scripts/makefile.linux
index 8796904..008d1eb 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -34,7 +34,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 INCPATH=$(prefix)/include
@@ -74,7 +74,8 @@
 	./pngtest
 
 install: libpng.a libpng.so.$(PNGVER)
-	-@mkdir $(INCPATH) $(LIBPATH)
+ 	-@if [ ! -d $(INCPATH)  ]; then mkdir $(INCPATH); fi
+ 	-@if [ ! -d $(LIBPATH) ]; then mkdir $(LIBPATH); fi
 	cp png.h pngconf.h $(INCPATH)
 	chmod 644 $(INCPATH)/png.h $(INCPATH)/pngconf.h
 	cp libpng.a libpng.so.$(PNGVER) $(LIBPATH)
diff --git a/scripts/makefile.sco b/scripts/makefile.sco
index 4e94029..41aadec 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -25,7 +25,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 INCPATH=$(prefix)/include
diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris
index 922b6af..3245029 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -31,7 +31,7 @@
 # read libpng.txt or png.h to see why PNGMAJ is 2.  You should not
 # have to change it.
 PNGMAJ = 2
-PNGMIN = 1.0.5q
+PNGMIN = 1.0.5s
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 INCPATH=$(prefix)/include
diff --git a/scripts/pngdef.pas b/scripts/pngdef.pas
index 832b7f3..ff3ac48 100644
--- a/scripts/pngdef.pas
+++ b/scripts/pngdef.pas
@@ -363,6 +363,9 @@
 function png_get_rowbytes(png_ptr: png_structp; info_ptr: png_infop):
              png_uint_32;
              stdcall;
+function png_get_rows(png_ptr: png_structp; info_ptr: png_infop):
+             png_bytepp;
+             stdcall;
 function png_get_sBIT(png_ptr: png_structp; info_ptr: png_infop;
              var sig_bits: png_color_8p): png_uint_32;
              stdcall;
@@ -539,6 +542,9 @@
              stdcall;
 procedure png_set_rgb_to_gray(png_ptr: png_structp; int: error_action);
              stdcall;
+procedure png_set_rows(png_ptr: png_structp; info_ptr: png_infop;
+             row_pointers: png_bytepp);
+             stdcall;
 procedure png_set_sBIT(png_ptr: png_structp; info_ptr: png_infop;
              sig_bits: png_color_8p);
              stdcall;
@@ -617,32 +623,18 @@
              name: png_charpp; compression_type: int *; profile: png_charpp;
              proflen: png_int_32): png_bytep;
              stdcall;
-procedure png_get_spalettes(png_ptr: png_structp;
+procedure png_get_sPLT(png_ptr: png_structp;
              info_ptr: png_infop;  entries: png_spalette_pp): png_uint_32;
              stdcall;
-procedure png_free_pCAL(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
-procedure png_free_sCAL(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
 procedure png_set_iCCP(png_ptr: png_structp; info_ptr: png_infop;
              name: png_charp; compression_type: int; profile: png_charp;
              proflen: int);
              stdcall;
-procedure png_free_hIST(png_ptr: png_structp; info_ptr: png_infop);
+procedure png_free_data(png_ptr: png_structp; info_ptr: png_infop; num: int);
              stdcall;
-procedure png_free_iCCP(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
-procedure png_free_PLTE(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
-procedure png_free_text(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
-procedure png_free_tRNS(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
-procedure png_set_spalettes(png_ptr: png_structp; info_ptr: png_infop;
+procedure png_set_sPLT(png_ptr: png_structp; info_ptr: png_infop;
              entries: png_spalette_p; nentries: int);
              stdcall;
-procedure png_free_sPLT(png_ptr: png_structp; info_ptr: png_infop);
-             stdcall;
 
 implementation
 
@@ -684,6 +676,7 @@
 function png_get_pixels_per_meter; external pngDLL;
 function png_get_progressive_ptr; external pngDLL;
 function png_get_rowbytes; external pngDLL;
+function png_get_rows; external pngDLL;
 function png_get_sBIT; external pngDLL;
 function png_get_sRGB; external pngDLL;
 function png_get_signature; external pngDLL;
@@ -741,6 +734,7 @@
 procedure png_set_read_fn; external pngDLL;
 procedure png_set_read_status_fn; external pngDLL;
 procedure png_set_read_user_transform_fn; external pngDLL;
+procedure png_set_rows; external pngDLL;
 procedure png_set_sBIT; external pngDLL;
 procedure png_set_sRGB; external pngDLL;
 procedure png_set_sRGB_gAMA_and_cHRM; external pngDLL;
@@ -771,16 +765,9 @@
 procedure png_write_row; external pngDLL;
 procedure png_write_rows; external pngDLL;
 procedure png_get_iCCP; external pngDLL;
-procedure png_get_spalettes; external pngDLL;
-procedure png_free_pCAL; external pngDLL;
+procedure png_get_sPLT; external pngDLL;
 procedure png_set_iCCP; external pngDLL;
-procedure png_free_hIST; external pngDLL;
-procedure png_free_iCCP; external pngDLL;
-procedure png_free_PLTE; external pngDLL;
-procedure png_free_sCAL; external pngDLL;
-procedure png_free_text; external pngDLL;
-procedure png_free_tRNS; external pngDLL;
-procedure png_set_spalettes; external pngDLL;
-procedure png_free_sPLT; external pngDLL;
+procedure png_set_sPLT; external pngDLL;
+procedure png_free_data; external pngDLL;
 
 end.
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index ce5735f..c3ff7f5 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -31,6 +31,7 @@
   png_set_bgr
   png_set_gray_to_rgb
   png_set_rgb_to_gray
+  png_set_rows
   png_build_grayscale_palette
   png_set_strip_alpha
   png_set_swap_alpha
@@ -120,6 +121,7 @@
   png_get_pixels_per_meter
   png_get_pixel_aspect_ratio
   png_get_rgb_to_gray_status
+  png_get_rows
   png_get_x_offset_pixels
   png_get_y_offset_pixels
   png_get_x_offset_microns
@@ -291,17 +293,10 @@
 ; png_pass_height
   png_get_iCCP 
   png_get_sCAL
-  png_get_spalettes 
+  png_get_sPLT 
   png_set_iCCP 
-  png_set_spalettes 
-  png_free_hIST 
-  png_free_iCCP 
-  png_free_pCAL 
-  png_free_PLTE 
-  png_free_sCAL
-  png_free_sPLT 
-  png_free_text 
-  png_free_tRNS 
+  png_set_sPLT 
+  png_free_data
 
   png_IHDR
   png_IDAT