Imported from libpng-1.4.0beta11.tar
diff --git a/scripts/descrip.mms b/scripts/descrip.mms
index 3584b0d..bb38aac 100644
--- a/scripts/descrip.mms
+++ b/scripts/descrip.mms
@@ -15,9 +15,12 @@
 
 CFLAGS= $(C_DEB) $(CC_DEFS) $(PREF)
 
-all : pngtest.exe libpng.olb
+all : pngtest.exe libpng.olb pngdefs.h
 		@ write sys$output " pngtest available"
 
+pngdefs.h:
+	echo "/* pngdefs.h was built by MMS */" > pngdefs.h
+
 libpng.olb : libpng.olb($(OBJS))
 	@ write sys$output " Libpng available"
 
@@ -29,24 +32,23 @@
    run pngtest
 
 clean :
-	delete *.obj;*,*.exe;*
+	delete *.obj;*,*.exe;*,pngdefs.h
 
 
 # Other dependencies.
-png.obj : png.h, pngconf.h
-pngpread.obj : png.h, pngconf.h
-pngset.obj : png.h, pngconf.h
-pngget.obj : png.h, pngconf.h
-pngread.obj : png.h, pngconf.h
-pngrtran.obj : png.h, pngconf.h
-pngrutil.obj : png.h, pngconf.h
-pngerror.obj : png.h, pngconf.h
-pngmem.obj : png.h, pngconf.h
-pngrio.obj : png.h, pngconf.h
-pngwio.obj : png.h, pngconf.h
-pngtest.obj : png.h, pngconf.h
-pngtrans.obj : png.h, pngconf.h
-pngwrite.obj : png.h, pngconf.h
-pngwtran.obj : png.h, pngconf.h
-pngwutil.obj : png.h, pngconf.h
-
+png.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngpread.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngset.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngget.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngread.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngrtran.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngrutil.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngerror.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngmem.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngrio.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngwio.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngtrans.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngwrite.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngwtran.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngwutil.obj : png.h, pngconf.h, pngdefs.h, pngpriv.h
+pngtest.obj : png.h, pngconf.h, pngdefs.h
diff --git a/scripts/libpng-config-head.in b/scripts/libpng-config-head.in
index 23371fe..c47c295 100755
--- a/scripts/libpng-config-head.in
+++ b/scripts/libpng-config-head.in
@@ -8,7 +8,7 @@
 
 # Modeled after libxml-config.
 
-version=1.4.0beta10
+version=1.4.0beta11
 prefix=""
 libdir=""
 libs=""
diff --git a/scripts/libpng.pc.in b/scripts/libpng.pc.in
index 722fafa..c3f5d20 100644
--- a/scripts/libpng.pc.in
+++ b/scripts/libpng.pc.in
@@ -5,6 +5,6 @@
 
 Name: libpng
 Description: Loads and saves PNG files
-Version: 1.4.0beta10
+Version: 1.4.0beta11
 Libs: -L${libdir} -lpng14
 Cflags: -I${includedir}
diff --git a/scripts/makefile.32sunu b/scripts/makefile.32sunu
index 2773d11..94356a1 100644
--- a/scripts/makefile.32sunu
+++ b/scripts/makefile.32sunu
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -79,7 +79,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -KPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.32sunu */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -129,12 +132,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -210,7 +214,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -218,20 +222,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.64sunu b/scripts/makefile.64sunu
index 1ed505f..ab68f2e 100644
--- a/scripts/makefile.64sunu
+++ b/scripts/makefile.64sunu
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -79,7 +79,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -KPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.64sunu */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -129,12 +132,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -210,7 +214,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -218,20 +222,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.acorn b/scripts/makefile.acorn
index ec39ff2..3f050a3 100644
--- a/scripts/makefile.acorn
+++ b/scripts/makefile.acorn
@@ -36,6 +36,11 @@
 @.pngtest:   @.o.pngtest @.libpng-lib C:o.Stubs Zlib:zlib_lib
 	Link $(Linkflags) @.o.pngtest @.libpng-lib C:o.Stubs Zlib:zlib_lib
 
+all: pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.acorn */" > pngdefs.h
+
 .SUFFIXES: .o .mm .c
 
 .c.mm:
@@ -46,5 +51,4 @@
 
 # Static dependencies:
 
-
 # Dynamic dependencies:
diff --git a/scripts/makefile.aix b/scripts/makefile.aix
index 71c975d..33410ed 100644
--- a/scripts/makefile.aix
+++ b/scripts/makefile.aix
@@ -20,7 +20,7 @@
 
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 prefix=/usr/local
@@ -60,7 +60,10 @@
 	pnggccrd$(O)
 
 # Targets
-all: $(LIBNAME)$(A) pngtest$(E)
+all: $(LIBNAME)$(A) pngtest$(E) pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.aix */" > pngdefs.h
 
 $(LIBNAME)$(A): $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -95,21 +98,21 @@
 clean:
 	$(RM_F) *.o $(LIBNAME)$(A) pngtest pngout.png
 
-png$(O): png.h pngconf.h pngintrn.h
-pngerror$(O): png.h pngconf.h pngintrn.h
-pnggccrd$(O): png.h pngconf.h pngintrn.h
-pngget$(O): png.h pngconf.h pngintrn.h
-pngmem$(O): png.h pngconf.h pngintrn.h
-pngpread$(O): png.h pngconf.h pngintrn.h
-pngread$(O): png.h pngconf.h pngintrn.h
-pngrio$(O): png.h pngconf.h pngintrn.h
-pngrtran$(O): png.h pngconf.h pngintrn.h
-pngrutil$(O): png.h pngconf.h pngintrn.h
-pngset$(O): png.h pngconf.h pngintrn.h
-pngtest$(O): png.h pngconf.h pngintrn.h
-pngtrans$(O): png.h pngconf.h pngintrn.h
-pngwio$(O): png.h pngconf.h pngintrn.h
-pngwrite$(O): png.h pngconf.h pngintrn.h
-pngwtran$(O): png.h pngconf.h pngintrn.h
-pngwutil$(O): png.h pngconf.h pngintrn.h
-
+png$(O):      png.h pngconf.h pngpriv.h
+pngerror$(O): png.h pngconf.h pngpriv.h
+pnggccrd$(O): png.h pngconf.h pngpriv.h
+pngget$(O):   png.h pngconf.h pngpriv.h
+pngmem$(O):   png.h pngconf.h pngpriv.h
+pngpread$(O): png.h pngconf.h pngpriv.h
+pngread$(O):  png.h pngconf.h pngpriv.h
+pngrio$(O):   png.h pngconf.h pngpriv.h
+pngrtran$(O): png.h pngconf.h pngpriv.h
+pngrutil$(O): png.h pngconf.h pngpriv.h
+pngset$(O):   png.h pngconf.h pngpriv.h
+pngtest$(O):  png.h pngconf.h pngpriv.h
+pngtrans$(O): png.h pngconf.h pngpriv.h
+pngwio$(O):   png.h pngconf.h pngpriv.h
+pngwrite$(O): png.h pngconf.h pngpriv.h
+pngwtran$(O): png.h pngconf.h pngpriv.h
+pngwutil$(O): png.h pngconf.h pngpriv.h
+pngtest$(O):  png.h pngconf.h
diff --git a/scripts/makefile.amiga b/scripts/makefile.amiga
index 79cb424..a578bca 100644
--- a/scripts/makefile.amiga
+++ b/scripts/makefile.amiga
@@ -32,7 +32,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: libpng.lib pngtest
+all: libpng.lib pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.amiga */" > pngdefs.h
 
 libpng.lib: $(OBJS)
 -$(RM) libpng.lib
diff --git a/scripts/makefile.atari b/scripts/makefile.atari
index 9566d5d..462732a 100644
--- a/scripts/makefile.atari
+++ b/scripts/makefile.atari
@@ -30,7 +30,10 @@
 	$(LBR)(pngrtran.o) $(LBR)(pngwtran.o)\
 	$(LBR)(pngmem.o) $(LBR)(pngrio.o) $(LBR)(pngwio.o) $(LBR)(pngpread.o)
 
-all: $(LBR) pngtest.ttp
+all: $(LBR) pngtest.ttp pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.atari */" > pngdefs.h
 
 $(LBR): $(OBJS)
 
@@ -43,9 +46,12 @@
 	-@mkdir $(DESTDIR)$(LIBPATH)
 	-@rm -f $(DESTDIR)$(INCPATH)/png.h
 	-@rm -f $(DESTDIR)$(INCPATH)/pngconf.h
+	-@rm -f $(DESTDIR)$(INCPATH)/pngdefs.h
 	cp png.h $(DESTDIR)$(INCPATH)/libpng
 	cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
+	cp pngdefs.h $(DESTDIR)$(INCPATH)/libpng
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
+	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngdefs.h
 	(cd $(DESTDIR)$(INCPATH); ln -f -s $(LIBNAME) libpng; \
 	ln -f -s $(LIBNAME)/* .)
diff --git a/scripts/makefile.bc32 b/scripts/makefile.bc32
index 04407dd..65fba61 100644
--- a/scripts/makefile.bc32
+++ b/scripts/makefile.bc32
@@ -100,9 +100,11 @@
 .obj.exe:
 	$(LD) $(LDFLAGS) $*.obj $(LIBNAME) zlib.lib $(NOEHLIB)
 
-
 ## Major targets
-all: libpng pngtest
+all: libpng pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.bc32 */" > pngdefs.h
 
 libpng: $(LIBNAME)
 
@@ -111,24 +113,23 @@
 test: pngtest.exe
 	pngtest
 
-
 ## Minor Targets
 
-png.obj: png.c
-pngerror.obj: pngerror.c
-pngget.obj: pngget.c
-pngmem.obj: pngmem.c
-pngpread.obj: pngpread.c
-pngread.obj: pngread.c
-pngrio.obj: pngrio.c
-pngrtran.obj: pngrtran.c
-pngrutil.obj: pngrutil.c
-pngset.obj: pngset.c
-pngtrans.obj: pngtrans.c
-pngwio.obj: pngwio.c
-pngwrite.obj: pngwrite.c
-pngwtran.obj: pngwtran.c
-pngwutil.obj: pngwutil.c
+png.obj: png.c png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.obj: pngerror.c png.h pngconf.h pngdefs.h pngpriv.h
+pngget.obj: pngget.c png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.obj: pngmem.c png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.obj: pngpread.c png.h pngconf.h pngdefs.h pngpriv.h
+pngread.obj: pngread.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.obj: pngrio.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.obj: pngrtran.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.obj: pngrutil.c png.h pngconf.h pngdefs.h pngpriv.h
+pngset.obj: pngset.c png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.obj: pngtrans.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.obj: pngwio.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.obj: pngwrite.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.obj: pngwtran.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.obj: pngwutil.c png.h pngconf.h pngdefs.h pngpriv.h
 
 
 $(LIBNAME): $(OBJS)
@@ -147,6 +148,7 @@
 	-del *.map
 	-del *.tds
 	-del pngout.png
+	-del pngdefs.h
 
 
 # End of makefile for libpng
diff --git a/scripts/makefile.beos b/scripts/makefile.beos
index a30a5f6..27228f8 100644
--- a/scripts/makefile.beos
+++ b/scripts/makefile.beos
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -75,7 +75,10 @@
 
 .SUFFIXES:      .c .o
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.beos */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -109,12 +112,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -187,23 +191,23 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
 	$(LIBSO) $(LIBSOMAJ)* pngtesti \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.bor b/scripts/makefile.bor
index a5651aa..74f2278 100644
--- a/scripts/makefile.bor
+++ b/scripts/makefile.bor
@@ -107,7 +107,10 @@
 
 
 ## Major targets
-all: libpng pngtest
+all: libpng pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.bor */" > pngdefs.h
 
 libpng: $(LIBNAME)
 
@@ -119,22 +122,21 @@
 
 ## Minor Targets
 
-png.obj: png.c
-pngerror.obj: pngerror.c
-pngget.obj: pngget.c
-pngmem.obj: pngmem.c
-pngpread.obj: pngpread.c
-pngread.obj: pngread.c
-pngrio.obj: pngrio.c
-pngrtran.obj: pngrtran.c
-pngrutil.obj: pngrutil.c
-pngset.obj: pngset.c
-pngtrans.obj: pngtrans.c
-pngwio.obj: pngwio.c
-pngwrite.obj: pngwrite.c
-pngwtran.obj: pngwtran.c
-pngwutil.obj: pngwutil.c
-
+png.obj: png.c png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.obj: pngerror.c png.h pngconf.h pngdefs.h pngpriv.h
+pngget.obj: pngget.c png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.obj: pngmem.c png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.obj: pngpread.c png.h pngconf.h pngdefs.h pngpriv.h
+pngread.obj: pngread.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.obj: pngrio.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.obj: pngrtran.c png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.obj: pngrutil.c png.h pngconf.h pngdefs.h pngpriv.h
+pngset.obj: pngset.c png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.obj: pngtrans.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.obj: pngwio.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.obj: pngwrite.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.obj: pngwtran.c png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.obj: pngwutil.c png.h pngconf.h pngdefs.h pngpriv.h
 
 $(LIBNAME): $(OBJS)
 	-del $(LIBNAME)
@@ -157,6 +159,7 @@
 	-del *.lib
 	-del *.lst
 	-del *.map
+	-del pngdefs.h
 
 
 # End of makefile for libpng
diff --git a/scripts/makefile.cygwin b/scripts/makefile.cygwin
index b384637..f6a91f3 100644
--- a/scripts/makefile.cygwin
+++ b/scripts/makefile.cygwin
@@ -65,7 +65,7 @@
 LIBNAME = libpng14
 PNGMAJ = 1
 CYGDLL = 14
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 SHAREDLIB=cygpng$(CYGDLL).dll
@@ -113,21 +113,10 @@
 	$(CC) -c $(CFLAGS) -o $@ $<
 
 all: all-static all-shared libpng.pc libpng-config libpng.pc libpng-config \
-	pngconf.h
+	pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
-	/* if you don't want to use the intel MMX code, uncomment this */
-	# echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-
-	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
-
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.cygwin */" > pngdefs.h
 
 # Make this to verify that "make [...] install" will do what you want.
 buildsetup-tell:
@@ -159,14 +148,14 @@
 all-static: $(STATLIB) pngtest-stat$(EXE)
 all-shared: $(SHAREDLIB) pngtest$(EXE)
 
-pnggccrd.o: pnggccrd.c png.h pngconf.h
+pnggccrd.o: pnggccrd.c png.h pngconf.h pngdefs.h pngpriv.h
 	@echo ""
 	@echo '    You can ignore the "control reaches end of non-void function"'
 	@echo '    warning and "<variable> defined but not used" warnings:'
 	@echo ""
 	$(CC) -c $(CFLAGS) -o $@ $<
 
-pnggccrd.pic.o:	pnggccrd.c png.h pngconf.h
+pnggccrd.pic.o:	pnggccrd.c png.h pngconf.h pngdefs.h pngpriv.h
 	@echo ""
 	@echo '    You can ignore the "control reaches end of non-void function"'
 	@echo '    warning and "<variable> defined but not used" warnings:'
@@ -177,7 +166,7 @@
 	ar rc $@ $(OBJS)
 	$(RANLIB) $@
 
-$(SHAREDDEF): scripts/pngw32.def
+$(SHAREDDEF): scripts/pngwin.def
 	cat $< | sed -e '1{G;s/^\(.*\)\(\n\)/EXPORTS/;};2,/^EXPORTS/d' | \
 	sed -e 's/\([^;]*\);/;/' > $@
 
@@ -190,10 +179,10 @@
 pngtest-stat$(EXE): pngtest.o $(STATLIB)
 	$(CC) -static $(CFLAGS) $< $(LDFLAGS) -o $@
 
-pngtest.pic.o: pngtest.c
+pngtest.pic.o: pngtest.c pngconf.h pngdefs.h
 	$(CC) $(CFLAGS) -c $< -o $@
 
-pngtest.o: pngtest.c
+pngtest.o: pngtest.c pngconf.h pngdefs.h
 	$(CC) $(CFLAGS) -c $< -o $@
 
 test: test-static test-shared
@@ -228,7 +217,8 @@
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
 	-@rm -f $(DI)/png.h
 	-@rm -f $(DI)/pngconf.h
-	install -m 644 $(S)/png.h $(S)/pngconf.h $(DI)/$(LIBNAME)
+	-@rm -f $(DI)/pngdefs.h
+	install -m 644 $(S)/png.h $(S)/pngconf.h $(S)/pngdefs.h $(DI)/$(LIBNAME)
 	-@rm -f $(DI)/libpng
 	(cd $(DI); ln -sf $(LIBNAME) libpng; ln -sf $(LIBNAME)/* .)
 
@@ -283,7 +273,7 @@
 clean:
 	/bin/rm -f *.pic.o *.o $(STATLIB) $(IMPLIB) $(SHAREDLIB) \
 	pngtest-stat$(EXE) pngtest$(EXE) pngout.png $(SHAREDDEF) \
-	libpng-config libpng.pc pngtesti$(EXE)
+	libpng-config libpng.pc pngtesti$(EXE) pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -293,25 +283,22 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o:		png.h pngconf.h pngintrn.h png.c
-pngerror.o pngerror.pic.o:	png.h pngconf.h pngintrn.h pngerror.c
-pngrio.o pngrio.pic.o:		png.h pngconf.h pngintrn.h pngrio.c
-pngwio.o pngwio.pic.o:		png.h pngconf.h pngintrn.h pngwio.c
-pngmem.o pngmem.pic.o:		png.h pngconf.h pngintrn.h pngmem.c
-pngset.o pngset.pic.o:		png.h pngconf.h pngintrn.h pngset.c
-pnggccrd.o pnggccrd.pic.o:	png.h pngconf.h pngintrn.h pngget.c
-pngget.o pngget.pic.o:		png.h pngconf.h pngintrn.h pngget.c
-pngread.o pngread.pic.o:	png.h pngconf.h pngintrn.h pngread.c
-pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngintrn.h pngrtran.c
-pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngintrn.h pngrutil.c
-pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngintrn.h pngtrans.c
-pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngintrn.h pngwrite.c
-pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngintrn.h pngwtran.c
-pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngintrn.h pngwutil.c
-pngpread.o pngpread.pic.o:	png.h pngconf.h pngintrn.h pngpread.c
+png.o png.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h png.c
+pngerror.o pngerror.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngerror.c
+pngrio.o pngrio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngrio.c
+pngwio.o pngwio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngwio.c
+pngmem.o pngmem.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngmem.c
+pngset.o pngset.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngset.c
+pnggccrd.o pnggccrd.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngget.c
+pngget.o pngget.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngget.c
+pngread.o pngread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngread.c
+pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrtran.c
+pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrutil.c
+pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngtrans.c
+pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwrite.c
+pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwtran.c
+pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwutil.c
+pngpread.o pngpread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngpread.c
 
-pngtest.o:			png.h pngconf.h pngintrn.h pngtest.c
-pngtest-stat.o:			png.h pngconf.h pngintrn.h pngtest.c
-
-
-
+pngtest.o:			png.h pngconf.h pngdefs.h pngtest.c
+pngtest-stat.o:			png.h pngconf.h pngdefs.h pngtest.c
diff --git a/scripts/makefile.darwin b/scripts/makefile.darwin
index ba2bf18..cae0d8a 100644
--- a/scripts/makefile.darwin
+++ b/scripts/makefile.darwin
@@ -19,7 +19,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -70,7 +70,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -fno-common -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.darwin */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -108,12 +111,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -188,7 +192,7 @@
 
 clean:
 	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
-	libpng.pc $(LIBNAME).*dylib pngtesti
+	libpng.pc $(LIBNAME).*dylib pngtesti pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -196,20 +200,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.dec b/scripts/makefile.dec
index 950b6f9..db43350 100644
--- a/scripts/makefile.dec
+++ b/scripts/makefile.dec
@@ -5,7 +5,7 @@
 
 # Library name:
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 LIBNAME = libpng14
 
@@ -59,7 +59,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: $(LIBSO) libpng.a pngtest libpng.pc libpng-config
+all: $(LIBSO) libpng.a pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.dec */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@  $(OBJS)
@@ -94,12 +97,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@/bin/rm -f $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@/bin/rm -f $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@/bin/rm -f $(DI)/libpng
 	(cd $(DI); $(LN_SF)(LIBNAME) libpng; $(LN_SF)(LIBNAME)/* .)
 
@@ -174,24 +178,24 @@
 clean:
 	/bin/rm -f *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.dj2 b/scripts/makefile.dj2
index 6dc9d4a..2240012 100644
--- a/scripts/makefile.dj2
+++ b/scripts/makefile.dj2
@@ -20,7 +20,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o pngwtran.o \
 	pngmem.o pngerror.o pngpread.o
 
-all: libpng.a pngtest
+all: libpng.a pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.dj2 */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	ar rc $@  $(OBJS)
@@ -33,25 +36,25 @@
 test: pngtest
 	./pngtest
 clean:
-	rm -f *.o libpng.a pngtest pngout.png
+	rm -f *.o libpng.a pngtest pngout.png pngdefs.h
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pnggccrd.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.elf b/scripts/makefile.elf
index a60f686..25c40dc 100644
--- a/scripts/makefile.elf
+++ b/scripts/makefile.elf
@@ -12,7 +12,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -90,7 +90,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.elf */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -101,7 +104,7 @@
 
 libpng.syms: png.h pngconf.h
 	$(CC) $(CFLAGS) -E -DPNG_BUILDSYMS -DPNG_INTERNAL png.h |\
-	awk -F '[\t [\\]();]' -v PNGMAJ=$(PNGMAJ) 'BEGIN{printf("PNG14_%s {global:\n",PNGMAJ)}\
+	awk -F '[\t [\\]();]' -v PNGMAJ=$(PNGMAJ) 'BEGIN{printf("PNG14%s {global:\n",PNGMAJ)}\
 	{ for (i=1;i+2<=NF;++i)\
 		if ($$(i)=="PNG_FUNCTION_EXPORT" && $$(i+2)=="END")\
 			print $$(i+1) ";";\
@@ -151,12 +154,13 @@
 	@echo ""
 	./pngtest-static
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -229,7 +233,7 @@
 clean:
 	$(RM_F) *.o libpng.a libpng.syms pngtest pngout.png libpng-config \
 	$(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -237,20 +241,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.freebsd b/scripts/makefile.freebsd
index da5cf6d..5fb77aa 100644
--- a/scripts/makefile.freebsd
+++ b/scripts/makefile.freebsd
@@ -14,31 +14,27 @@
 # where make install puts libpng.a and png.h
 DESTDIR=	${PREFIX}
 LIBDIR=		/lib
-INCS=		png.h pngconf.h
+INCS=		png.h pngconf.h pngdefs.h
 INCSDIR=	/include/libpng
 INCDIR=		${INCSDIR}		# for 4.x bsd.lib.mk
 MAN=		libpng.3 libpngpf.3 png.5
 MANDIR=		/man/man
 SYMLINKS=       libpng/png.h ${INCSDIR}/../png.h \
 		libpng/pngconf.h ${INCSDIR}/../pngconf.h
+		libpng/pngdefs.h ${INCSDIR}/../pngdefs.h
 LDADD+=         -lm -lz
 DPADD+=         ${LIBM} ${LIBZ}
 
-all: pngconf.h
+all: pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h:	pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.freebsd */" > pngdefs.h
 .if (${MACHINE_ARCH} != "i386")
-	/* uncoment this if you don't need thread safety */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
+	/* uncomment this if you don't need thread safety */
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 .else
-	echo "#define PNG_NO_MMX_CODE" >> pngconf.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 .endif
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
 
 SRCS=	png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
 	pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
diff --git a/scripts/makefile.gcc b/scripts/makefile.gcc
index 3f26cc8..c68b6aa 100644
--- a/scripts/makefile.gcc
+++ b/scripts/makefile.gcc
@@ -19,50 +19,67 @@
 LDDEBUG =
 CRELEASE = -O2
 LDRELEASE = -s
-CFLAGS = -I$(ZLIBINC) -Wall $(CRELEASE)
-LDFLAGS = -L. -L$(ZLIBLIB) -lpng -lz -lm $(LDRELEASE)
+#CFLAGS = -Wall $(CDEBUG)
+CFLAGS = -Wall $(CRELEASE)
+#LDFLAGS = $(LDDEBUG)
+LDFLAGS = $(LDRELEASE)
+LIBS = -lz -lm
 
 # File extensions
 O=.o
 A=.a
-E=
+EXE=
 
 # Variables
 OBJS = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) \
 	pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O) \
-	pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
+	pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O) \
+	pnggccrd$(O)
 
 # Targets
-all: libpng$(A) pngtest$(E)
+all: static pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.gcc */" > pngdefs.h
+
+.c$(O):
+	$(CC) -c $(CFLAGS) -I$(ZLIBINC) $<
+
+static: libpng$(A) pngtest$(EXE)
+
+shared:
+	@echo This is a generic makefile that cannot create shared libraries.
+	@echo Please use a configuration that is specific to your platform.
+	@false
 
 libpng$(A): $(OBJS)
 	$(AR_RC) $@ $(OBJS)
 	$(RANLIB) $@
 
-test: pngtest$(E)
-	./pngtest$(E)
+test: pngtest$(EXE)
+	./pngtest$(EXE)
 
-pngtest$(E): pngtest$(O) libpng$(A)
-	$(LD) -o $@ pngtest$(O) $(LDFLAGS)
+pngtest$(EXE): pngtest$(O) libpng$(A)
+	$(LD) $(LDFLAGS) -L$(ZLIBLIB) -o $@ pngtest$(O) libpng$(A) $(LIBS)
 
 clean:
-	$(RM_F) *$(O) libpng$(A) pngtest$(E) pngout.png
+	$(RM_F) *$(O) libpng$(A) pngtest$(EXE) pngout.png pngdefs.h
 
-png$(O): png.h pngconf.h pngintrn.h
-pngerror$(O): png.h pngconf.h pngintrn.h
-pnggccrd$(O): png.h pngconf.h pngintrn.h
-pngget$(O): png.h pngconf.h pngintrn.h
-pngmem$(O): png.h pngconf.h pngintrn.h
-pngpread$(O): png.h pngconf.h pngintrn.h
-pngread$(O): png.h pngconf.h pngintrn.h
-pngrio$(O): png.h pngconf.h pngintrn.h
-pngrtran$(O): png.h pngconf.h pngintrn.h
-pngrutil$(O): png.h pngconf.h pngintrn.h
-pngset$(O): png.h pngconf.h pngintrn.h
-pngtest$(O): png.h pngconf.h pngintrn.h
-pngtrans$(O): png.h pngconf.h pngintrn.h
-pngwio$(O): png.h pngconf.h pngintrn.h
-pngwrite$(O): png.h pngconf.h pngintrn.h
-pngwtran$(O): png.h pngconf.h pngintrn.h
-pngwutil$(O): png.h pngconf.h pngintrn.h
-
+png$(O):      png.h pngconf.h pngdefs.h pngpriv.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngget$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngmem$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngread$(O):  png.h pngconf.h pngdefs.h pngpriv.h
+pngrio$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngset$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngtest$(O):  png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwio$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngtest$(O):  png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.gcmmx b/scripts/makefile.gcmmx
index 88adaf3..e24195b 100644
--- a/scripts/makefile.gcmmx
+++ b/scripts/makefile.gcmmx
@@ -16,7 +16,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -104,18 +104,13 @@
 	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
 
 all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config \
-	pngconf.h
+	pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-# Remove the line with #define PNG_THREAD_UNSAFE_OK if you need thread safety
-### for generic gcc:
-pngconf.h:	pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-	echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
-	echo "#define PNG_USE_PNGGCCRD" >> pngconf.h
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+# Use makefile.gcmmx if you don't want to use the MMX assembler code.
+# If you don't need thread safety you can uncomment the define.
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.gcmmx */" > pngdefs.h
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -168,12 +163,13 @@
 	@echo ""
 	./pngtest-static
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
-	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
+	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h \
+		$(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -244,7 +240,7 @@
 	./pngtesti pngtest.png
 
 clean:
-	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
+	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config pngdefs.h \
 	$(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \
 	libpng.pc
 
@@ -252,20 +248,20 @@
 writelock:
 	chmod a-w *.[ch35] $(DOCS) scripts/*
 
-png.o png.pic.o:		png.h pngconf.h pngintrn.h png.c
-pngerror.o pngerror.pic.o:	png.h pngconf.h pngintrn.h pngerror.c
-pngrio.o pngrio.pic.o:		png.h pngconf.h pngintrn.h pngrio.c
-pngwio.o pngwio.pic.o:		png.h pngconf.h pngintrn.h pngwio.c
-pngmem.o pngmem.pic.o:		png.h pngconf.h pngintrn.h pngmem.c
-pngset.o pngset.pic.o:		png.h pngconf.h pngintrn.h pngset.c
-pngget.o pngget.pic.o:		png.h pngconf.h pngintrn.h pngget.c
-pngread.o pngread.pic.o:	png.h pngconf.h pngintrn.h pngread.c
-pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngintrn.h pngrtran.c
-pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngintrn.h pngrutil.c
-pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngintrn.h pngtrans.c
-pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngintrn.h pngwrite.c
-pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngintrn.h pngwtran.c
-pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngintrn.h pngwutil.c
-pngpread.o pngpread.pic.o:	png.h pngconf.h pngintrn.h pngpread.c
+png.o png.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h png.c
+pngerror.o pngerror.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngerror.c
+pngrio.o pngrio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngrio.c
+pngwio.o pngwio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngwio.c
+pngmem.o pngmem.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngmem.c
+pngset.o pngset.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngset.c
+pngget.o pngget.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngget.c
+pngread.o pngread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngread.c
+pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrtran.c
+pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrutil.c
+pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngtrans.c
+pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwrite.c
+pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwtran.c
+pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwutil.c
+pngpread.o pngpread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngpread.c
 
-pngtest.o:			png.h pngconf.h pngintrn.h pngtest.c
+pngtest.o:			png.h pngconf.h pngdefs.h pngtest.c
diff --git a/scripts/makefile.hp64 b/scripts/makefile.hp64
index 4fca2c1..36a14cd 100644
--- a/scripts/makefile.hp64
+++ b/scripts/makefile.hp64
@@ -18,7 +18,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -77,7 +77,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) +z -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.hp64 */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -112,12 +115,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -192,7 +196,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -200,19 +204,19 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.hpgcc b/scripts/makefile.hpgcc
index bf39cda..9ce5507 100644
--- a/scripts/makefile.hpgcc
+++ b/scripts/makefile.hpgcc
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -87,7 +87,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.hpgcc */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -121,12 +124,13 @@
 	./pngtest
 
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -201,7 +205,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -209,20 +213,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.hpux b/scripts/makefile.hpux
index ba37f39..7e8e2e9 100644
--- a/scripts/makefile.hpux
+++ b/scripts/makefile.hpux
@@ -18,7 +18,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -74,7 +74,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) +z -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.hpux */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -109,12 +112,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -162,7 +166,7 @@
 	chmod 755 $(DB)/$(LIBNAME)-config
 	(cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config)
 
-install: install-static install-shared install-man install-config
+install: install-static install-shared install-man install-config pngdefs.h
 
 # If you installed in $(DESTDIR), test-installed won't work until you
 # move the library to its final location.  Use test-dd to test it
@@ -189,7 +193,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -197,19 +201,19 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.ibmc b/scripts/makefile.ibmc
index 48ebb5f..054bec0 100644
--- a/scripts/makefile.ibmc
+++ b/scripts/makefile.ibmc
@@ -30,12 +30,16 @@
 # Variables
 OBJS = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) \
 	pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O) \
-	pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
+	pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O) \
+	pnggccrd$(O)
 
 LIBS = libpng$(A) $(ZLIBLIB)/zlib$(A)
 
 # Targets
-all: libpng$(A) pngtest$(E)
+all: libpng$(A) pngtest$(E) pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.ibmc */" > pngdefs.h
 
 libpng$(A): $(OBJS)
 	$(AR) -out:$@ $(OBJS)
@@ -53,21 +57,23 @@
 	$(RM) libpng$(A)
 	$(RM) pngtest$(E)
 	$(RM) pngout.png
+	$(RM) pngdefs.h
 
-png$(O): png.h pngconf.h pngintrn.h
-pngerror$(O): png.h pngconf.h pngintrn.h
-pnggccrd$(O): png.h pngconf.h pngintrn.h
-pngget$(O): png.h pngconf.h pngintrn.h
-pngmem$(O): png.h pngconf.h pngintrn.h
-pngpread$(O): png.h pngconf.h pngintrn.h
-pngread$(O): png.h pngconf.h pngintrn.h
-pngrio$(O): png.h pngconf.h pngintrn.h
-pngrtran$(O): png.h pngconf.h pngintrn.h
-pngrutil$(O): png.h pngconf.h pngintrn.h
-pngset$(O): png.h pngconf.h pngintrn.h
-pngtest$(O): png.h pngconf.h pngintrn.h
-pngtrans$(O): png.h pngconf.h pngintrn.h
-pngwio$(O): png.h pngconf.h pngintrn.h
-pngwrite$(O): png.h pngconf.h pngintrn.h
-pngwtran$(O): png.h pngconf.h pngintrn.h
-pngwutil$(O): png.h pngconf.h pngintrn.h
+png$(O):      png.h pngconf.h pngdefs.h pngpriv.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngget$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngmem$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngread$(O):  png.h pngconf.h pngdefs.h pngpriv.h
+pngrio$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngset$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngtest$(O):  png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwio$(O):   png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
+pngtest$(O):  png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.intel b/scripts/makefile.intel
index ae3a0e0..93dff86 100644
--- a/scripts/makefile.intel
+++ b/scripts/makefile.intel
@@ -46,67 +46,61 @@
 pngrtran$(O) pngwtran$(O) pngrio$(O) pngwio$(O) pngvcrd$(O)
 
 
-all: test pngconf.h
+all: test pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.intel */" > pngdefs.h
+	echo "#define PNG_USE_PNGVCRD" >> pngdefs.h
 
-# Remove the line with #define PNG_THREAD_UNSAFE_OK if you need thread safety
-### for generic gcc:
-pngconf.h:	pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-	echo "#define PNG_USE_PNGVCRD" >> pngconf.h
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
-png$(O): png.h pngconf.h pngintrn.h
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngvcrd$(O): png.h pngconf.h pngintrn.h
+pngvcrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
 libpng.lib: $(OBJS)
diff --git a/scripts/makefile.knr b/scripts/makefile.knr
index f7e53cd..b28eaff 100644
--- a/scripts/makefile.knr
+++ b/scripts/makefile.knr
@@ -36,7 +36,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: ansi2knr libpng.a pngtest
+all: ansi2knr libpng.a pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.knr */" > pngdefs.h
 
 # general rule to allow ansi2knr to work
 .c.o:
@@ -58,22 +61,25 @@
 test: pngtest
 	./pngtest
 
-install: libpng.a
+install: libpng.a png.h pngconf.h pngdefs.h
 	-@mkdir $(DESTDIR)$(INCPATH)
 	-@mkdir $(DESTDIR)$(INCPATH)/libpng
 	-@mkdir $(DESTDIR)$(LIBPATH)
 	-@rm -f $(DESTDIR)$(INCPATH)/png.h
 	-@rm -f $(DESTDIR)$(INCPATH)/pngconf.h
+	-@rm -f $(DESTDIR)$(INCPATH)/pngdefs.h
 	cp png.h $(DESTDIR)$(INCPATH)/libpng
 	cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
+	cp pngdefs.h $(DESTDIR)$(INCPATH)/libpng
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
+	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngdefs.h
 	(cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .)
 	cp libpng.a $(DESTDIR)$(LIBPATH)
 	chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
 
 clean:
-	rm -f *.o libpng.a pngtest pngout.png ansi2knr
+	rm -f *.o libpng.a pngtest pngout.png ansi2knr pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -81,20 +87,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pntintrn.h
-pngerror.o: png.h pngconf.h pntintrn.h
-pngrio.o: png.h pngconf.h pntintrn.h
-pngwio.o: png.h pngconf.h pntintrn.h
-pngmem.o: png.h pngconf.h pntintrn.h
-pngset.o: png.h pngconf.h pntintrn.h
-pnggccrd.o: png.h pngconf.h pntintrn.h
-pngget.o: png.h pngconf.h pntintrn.h
-pngread.o: png.h pngconf.h pntintrn.h
-pngpread.o: png.h pngconf.h pntintrn.h
-pngrtran.o: png.h pngconf.h pntintrn.h
-pngrutil.o: png.h pngconf.h pntintrn.h
-pngtest.o: png.h pngconf.h pntintrn.h
-pngtrans.o: png.h pngconf.h pntintrn.h
-pngwrite.o: png.h pngconf.h pntintrn.h
-pngwtran.o: png.h pngconf.h pntintrn.h
-pngwutil.o: png.h pngconf.h pntintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.linux b/scripts/makefile.linux
index e87329d..f459ef1 100644
--- a/scripts/makefile.linux
+++ b/scripts/makefile.linux
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -82,7 +82,14 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config pngdefs.h
+
+# Use makefile.gcmmx if you want to use the MMX assembler code.
+# If you don't need thread safety you can uncomment the define.
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.linux */" > pngdefs.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -126,12 +133,13 @@
 	@echo ""
 	./pngtest-static
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
-	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
+	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h \
+	          $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -202,7 +210,7 @@
 	./pngtesti pngtest.png
 
 clean:
-	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
+	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config pngdefs.h \
 	$(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \
 	libpng.pc
 
@@ -212,20 +220,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.mingw b/scripts/makefile.mingw
index 1edc2c2..a8dade3 100644
--- a/scripts/makefile.mingw
+++ b/scripts/makefile.mingw
@@ -66,7 +66,7 @@
 LIBNAME = libpng14
 PNGMAJ = 1
 MINGDLL = 14
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 SHAREDLIB=libpng$(MINGDLL).dll
@@ -114,21 +114,14 @@
 	$(CC) -c $(CFLAGS) -o $@ $<
 
 all: all-static all-shared libpng.pc libpng-config libpng.pc libpng-config \
-	pngconf.h
+	pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h:	pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.mingw */" > pngdefs.h
 	/* if you don't want to use the intel MMX code, uncomment this */
-	# echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-
+	# echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
-
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 
 # Make this to verify that "make [...] install" will do what you want.
 buildsetup-tell:
@@ -160,14 +153,14 @@
 all-static: $(STATLIB) pngtest-stat$(EXE)
 all-shared: $(SHAREDLIB) pngtest$(EXE)
 
-pnggccrd.o: pnggccrd.c png.h pngconf.h pngintrn.h
+pnggccrd.o: pnggccrd.c png.h pngconf.h pngdefs.h pngpriv.h
 	@echo ""
 	@echo '    You can ignore the "control reaches end of non-void function"'
 	@echo '    warning and "<variable> defined but not used" warnings:'
 	@echo ""
 	$(CC) -c $(CFLAGS) -o $@ $<
 
-pnggccrd.pic.o:	pnggccrd.c png.h pngconf.h pngintrn.h
+pnggccrd.pic.o:	pnggccrd.c png.h pngconf.h pngdefs.h pngpriv.h
 	@echo ""
 	@echo '    You can ignore the "control reaches end of non-void function"'
 	@echo '    warning and "<variable> defined but not used" warnings:'
@@ -178,7 +171,7 @@
 	ar rc $@ $(OBJS)
 	$(RANLIB) $@
 
-$(SHAREDDEF): scripts/pngw32.def
+$(SHAREDDEF): scripts/pngwin.def
 	cat $< | sed -e '1{G;s/^\(.*\)\(\n\)/EXPORTS/;};2,/^EXPORTS/d' | \
 	sed -e 's/\([^;]*\);/;/' > $@
 
@@ -229,7 +222,8 @@
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
 	-@rm -f $(DI)/png.h
 	-@rm -f $(DI)/pngconf.h
-	install -m 644 $(S)/png.h $(S)/pngconf.h $(DI)/$(LIBNAME)
+	-@rm -f $(DI)/pngdefs.h
+	install -m 644 $(S)/png.h $(S)/pngconf.h $(S)/pngdefs.h $(DI)/$(LIBNAME)
 	-@rm -f $(DI)/libpng
 	(cd $(DI); ln -sf $(LIBNAME) libpng; ln -sf $(LIBNAME)/* .)
 
@@ -284,7 +278,7 @@
 clean:
 	/bin/rm -f *.pic.o *.o $(STATLIB) $(IMPLIB) $(SHAREDLIB) \
 	pngtest-stat$(EXE) pngtest$(EXE) pngout.png $(SHAREDDEF) \
-	libpng-config libpng.pc pngtesti$(EXE)
+	libpng-config libpng.pc pngtesti$(EXE) pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -294,25 +288,23 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o:		png.h pngconf.h pngintrn.h png.c
-pngerror.o pngerror.pic.o:	png.h pngconf.h pngintrn.h pngerror.c
-pngrio.o pngrio.pic.o:		png.h pngconf.h pngintrn.h pngrio.c
-pngwio.o pngwio.pic.o:		png.h pngconf.h pngintrn.h pngwio.c
-pngmem.o pngmem.pic.o:		png.h pngconf.h pngintrn.h pngmem.c
-pngset.o pngset.pic.o:		png.h pngconf.h pngintrn.h pngset.c
-pnggcrd.o pnggcrd.pic.o:	png.h pngconf.h pngintrn.h pngget.c
-pngget.o pngget.pic.o:		png.h pngconf.h pngintrn.h pngget.c
-pngread.o pngread.pic.o:	png.h pngconf.h pngintrn.h pngread.c
-pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngintrn.h pngrtran.c
-pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngintrn.h pngrutil.c
-pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngintrn.h pngtrans.c
-pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngintrn.h pngwrite.c
-pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngintrn.h pngwtran.c
-pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngintrn.h pngwutil.c
-pngpread.o pngpread.pic.o:	png.h pngconf.h pngintrn.h pngpread.c
+png.o png.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h png.c
+pngerror.o pngerror.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngerror.c
+pngrio.o pngrio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngrio.c
+pngwio.o pngwio.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngwio.c
+pngmem.o pngmem.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngmem.c
+pngset.o pngset.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngset.c
+pnggcrd.o pnggcrd.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngget.c
+pngget.o pngget.pic.o:		png.h pngconf.h pngdefs.h pngpriv.h pngget.c
+pngread.o pngread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngread.c
+pngrtran.o pngrtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrtran.c
+pngrutil.o pngrutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngrutil.c
+pngtrans.o pngtrans.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngtrans.c
+pngwrite.o pngwrite.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwrite.c
+pngwtran.o pngwtran.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwtran.c
+pngwutil.o pngwutil.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngwutil.c
+pngpread.o pngpread.pic.o:	png.h pngconf.h pngdefs.h pngpriv.h pngpread.c
 
-pngtest.o:			png.h pngconf.h pngintrn.h pngtest.c
-pngtest-stat.o:			png.h pngconf.h pngintrn.h pngtest.c
-
-
+pngtest.o:			png.h pngconf.h pngdefs.h pngtest.c
+pngtest-stat.o:			png.h pngconf.h pngdefs.h pngtest.c
 
diff --git a/scripts/makefile.mips b/scripts/makefile.mips
index 61fd339..06308fd 100644
--- a/scripts/makefile.mips
+++ b/scripts/makefile.mips
@@ -30,7 +30,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: libpng.a pngtest
+all: libpng.a pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.mips */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	ar rc $@  $(OBJS)
@@ -48,16 +51,19 @@
 	-@mkdir $(DESTDIR)$(LIBPATH)
 	-@rm -f $(DESTDIR)$(INCPATH)/png.h
 	-@rm -f $(DESTDIR)$(INCPATH)/pngconf.h
+	-@rm -f $(DESTDIR)$(INCPATH)/pngdefs.h
 	cp png.h $(DESTDIR)$(INCPATH)/libpng
 	cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
+	cp pngdefs.h $(DESTDIR)$(INCPATH)/libpng
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
+	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngdefs.h
 	(cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .)
 	cp libpng.a $(DESTDIR)$(LIBPATH)
 	chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
 
 clean:
-	rm -f *.o libpng.a pngtest pngout.png
+	rm -f *.o libpng.a pngtest pngout.png pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -65,19 +71,19 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.msc b/scripts/makefile.msc
index e739ba0..8d013c1 100644
--- a/scripts/makefile.msc
+++ b/scripts/makefile.msc
@@ -21,57 +21,60 @@
 OBJS2 = pngmem$(O) pngpread$(O) pngread$(O) pngerror$(O) pngwrite$(O)
 OBJS3 = pngrtran$(O) pngwtran$(O) pngrio$(O) pngwio$(O)
 
-all: libpng.lib
+all: libpng.lib pngdefs.h
 
-png$(O): png.h pngconf.h pngintrn.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.msc */" > pngdefs.h
+
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pnggccrd$(O): png.h pngconf.h pngintrn.h
+pnggccrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
 libpng.lib: $(OBJS1) $(OBJS2) $(OBJS3)
diff --git a/scripts/makefile.ne12bsd b/scripts/makefile.ne12bsd
index 0bd0c88..e7e9e17 100644
--- a/scripts/makefile.ne12bsd
+++ b/scripts/makefile.ne12bsd
@@ -12,45 +12,37 @@
 MANDIR= ${LOCALBASE}/man
 INCSDIR=${LOCALBASE}/include/libpng14
 
-LIB=	png12
+LIB=	png14
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.0beta10
+SHLIB_MINOR=	1.4.0beta11
 SRCS=	pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
 		pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
 		pngwtran.c pngmem.c pngerror.c pngpread.c
-INCS=	png.h pngconf.h
+INCS=	png.h pngconf.h pngpriv.h
 MAN=	libpng.3 libpngpf.3 png.5
 
 CPPFLAGS+=-I${.CURDIR}
 
 CLEANFILES+=pngtest.o pngtest
 
-all: pngconf.h
+all: pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h:	pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.netbsd */" > pngdefs.h
 	/* if you don't want to use the intel MMX code, uncomment this */
-	# echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-
+	# echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 
 # We should be able to do something like this instead of the manual
 # uncommenting, but it core dumps for me at the moment:
 # .if ${MACHINE_ARCH} == "i386"
-#   echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
+#   echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 #   MKLINT= no
 # .else
-#   echo "#define PNG_NO_MMX_CODE" >> pngconf.h
+#   echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 # .endif
 
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
-
 pngtest.o:	pngtest.c
 	${CC} -c ${CPPFLAGS} ${CFLAGS} ${.ALLSRC} -o ${.TARGET}
 
diff --git a/scripts/makefile.netbsd b/scripts/makefile.netbsd
index 3242717..9cec5b7 100644
--- a/scripts/makefile.netbsd
+++ b/scripts/makefile.netbsd
@@ -13,42 +13,35 @@
 
 LIB=	png
 SHLIB_MAJOR=	3
-SHLIB_MINOR=	1.4.0beta10
+SHLIB_MINOR=	1.4.0beta11
 SRCS=	pnggccrd.c png.c pngset.c pngget.c pngrutil.c pngtrans.c pngwutil.c \
 		pngread.c pngrio.c pngwio.c pngwrite.c pngrtran.c \
 		pngwtran.c pngmem.c pngerror.c pngpread.c
-INCS=	png.h pngconf.h
+INCS=	png.h pngconf.h pngpriv.h
 MAN=	libpng.3 libpngpf.3 png.5
 
 CPPFLAGS+=-I${.CURDIR}
 
 CLEANFILES+=pngtest.o pngtest
 
-all: pngconf.h
+all: pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.netbsd */" > pngdefs.h
 	/* if you don't want to use the intel MMX code, uncomment this */
-	# echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-
+	# echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
+	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 
 # We should be able to do something like this instead of the manual
 # uncommenting, but it core dumps for me at the moment:
 # .if ${MACHINE_ARCH} == "i386"
-#   echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
+#   echo "#define PNG_THREAD_UNSAFE_OK" >> pngdefs.h
 #   MKLINT= no
 # .else
-#   echo "#define PNG_NO_MMX_CODE" >> pngconf.h
+#   echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 # .endif
 
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
 pngtest.o:	pngtest.c
 	${CC} -c ${CPPFLAGS} ${CFLAGS} ${.ALLSRC} -o ${.TARGET}
 
diff --git a/scripts/makefile.openbsd b/scripts/makefile.openbsd
index e22e72b..05b0e4a 100644
--- a/scripts/makefile.openbsd
+++ b/scripts/makefile.openbsd
@@ -8,35 +8,23 @@
 MANDIR= ${PREFIX}/man/cat
 
 SHLIB_MAJOR=	0
-SHLIB_MINOR=	1.4.0beta10
+SHLIB_MINOR=	1.4.0beta11
 
 LIB=	png
 SRCS=	png.c pngerror.c pnggccrd.c pngget.c pngmem.c pngpread.c \
 	pngread.c pngrio.c pngrtran.c pngrutil.c pngset.c pngtrans.c \
 	pngwio.c pngwrite.c pngwtran.c pngwutil.c
 
-HDRS=	png.h pngconf.h
+HDRS=	png.h pngconf.h pngpriv.h pngdefs.h
 
 CFLAGS+= -Wall
 CPPFLAGS+= -I${.CURDIR}
 
-all: pngconf.h
+all: pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
-	/* if you want to use the intel assembler code, remove this */
-	echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-	/* if you want to use the intel MMX code, also remove this */
-	echo "#define PNG_NO_ASSEMBLER_CODE" >> pngconf.h
-
-	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
-
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.openbsd */" > pngdefs.h
+	echo "#define PNG_NO_ASSEMBLER_CODE" >> pngdefs.h
 
 NOPROFILE= Yes
 
@@ -80,6 +68,7 @@
 	@rm -f ${DESTDIR}${LIBDIR}/debug/libpng.a
 	@rm -f ${DESTDIR}${PREFIX}/include/png.h
 	@rm -f ${DESTDIR}${PREFIX}/include/pngconf.h
+	@rm -f ${DESTDIR}${PREFIX}/include/pngdefs.h
 	@rmdir ${DESTDIR}${LIBDIR}/debug 2>/dev/null || true
 	${INSTALL} ${INSTALL_COPY} -o ${SHAREOWN} -g ${SHAREGRP} \
 		-m ${NONBINMODE} ${HDRS} ${DESTDIR}${PREFIX}/include/libpng
diff --git a/scripts/makefile.os2 b/scripts/makefile.os2
index afcd315..d1f0823 100644
--- a/scripts/makefile.os2
+++ b/scripts/makefile.os2
@@ -28,7 +28,10 @@
 
 .SUFFIXES:      .c .o
 
-all: $(PNGLIB) $(SHAREDLIB) $(SHAREDLIBIMP)
+all: $(PNGLIB) $(SHAREDLIB) $(SHAREDLIBIMP) pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.os2 */" > pngdefs.h
 
 $(PNGLIB): $(OBJS)
 	$(AR) rc $@ $(OBJS)
@@ -50,20 +53,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.sco b/scripts/makefile.sco
index 28dd424..da22c1e 100644
--- a/scripts/makefile.sco
+++ b/scripts/makefile.sco
@@ -9,7 +9,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -70,7 +70,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -KPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.sco */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -110,9 +113,11 @@
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
 	-@$(RM_F) $(DI)/png.h
 	-@$(RM_F) $(DI)/pngconf.h
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	-@$(RM_F) $(DI)/pngdefs.h
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -185,7 +190,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
 	$(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -193,20 +198,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.sggcc b/scripts/makefile.sggcc
index e796745..49646d6 100644
--- a/scripts/makefile.sggcc
+++ b/scripts/makefile.sggcc
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -73,7 +73,11 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: libpng.a pngtest shared libpng.pc libpng-config
+all: libpng.a pngtest shared libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.sggcc */" > pngdefs.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -114,12 +118,13 @@
 	echo Testing local static library.
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
 	cp png.h pngconf.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -196,7 +201,7 @@
 clean:
 	$(RM_F) libpng.a pngtest pngtesti pngout.png libpng.pc libpng-config \
 	$(LIBSO) $(LIBSOMAJ)* \
-	so_locations
+	so_locations pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -204,21 +209,21 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
-pnggccrd.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.sgi b/scripts/makefile.sgi
index 7aed15e..3700d4c 100644
--- a/scripts/makefile.sgi
+++ b/scripts/makefile.sgi
@@ -6,7 +6,7 @@
 # Library name:
 LIBNAME=libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -76,21 +76,11 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o
 
-all: libpng.a pngtest shared libpng.pc libpng-config pngconf.h
+all: libpng.a pngtest shared libpng.pc libpng-config pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-
-	/* if you don't want to use the intel MMX code, uncomment this */
-	echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-
-	/* if you don't need thread safety you can uncomment this */
-	# echo "#define PNG_THREAD_UNSAFE_OK" >> pngconf.h
-
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.sgi */" > pngdefs.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -132,12 +122,13 @@
 	echo Testing local static library.
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -213,7 +204,7 @@
 
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png libpng.pc
-	 libpng-config  $(LIBSO) $(LIBSOMAJ)*  so_locations
+	 libpng-config  $(LIBSO) $(LIBSOMAJ)*  so_locations pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -221,21 +212,21 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pnggccrd.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.so9 b/scripts/makefile.so9
index 67d4964..2b617ec 100644
--- a/scripts/makefile.so9
+++ b/scripts/makefile.so9
@@ -8,7 +8,7 @@
 
 # Library name:
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 LIBNAME = libpng14
 
@@ -80,7 +80,10 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -KPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.so9 */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -127,12 +130,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -207,7 +211,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -215,20 +219,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.solaris b/scripts/makefile.solaris
index c15bced..8630362 100644
--- a/scripts/makefile.solaris
+++ b/scripts/makefile.solaris
@@ -8,7 +8,7 @@
 # Library name:
 LIBNAME = libpng14
 PNGMAJ = 1
-PNGMIN = 1.4.0beta10
+PNGMIN = 1.4.0beta11
 PNGVER = $(PNGMAJ).$(PNGMIN)
 
 # Shared library names:
@@ -76,15 +76,11 @@
 .c.pic.o:
 	$(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
 
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngconf.h
+all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config pngconf.h pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
-
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-	echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.solaris */" > pngdefs.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@ $(OBJS)
@@ -132,12 +128,13 @@
 test: pngtest
 	./pngtest
 
-install-headers: png.h pngconf.h
+install-headers: png.h pngconf.h pngdefs.h
 	-@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 	-@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
-	cp png.h pngconf.h $(DI)/$(LIBNAME)
+	cp png.h pngconf.h pngdefs.h $(DI)/$(LIBNAME)
 	chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
-	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
+	chmod 644 $(DI)/$(LIBNAME)/pngdefs.h
+	-@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pngdefs.h
 	-@$(RM_F) $(DI)/libpng
 	(cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
 
@@ -212,7 +209,7 @@
 clean:
 	$(RM_F) *.o libpng.a pngtest pngtesti pngout.png \
 	libpng-config $(LIBSO) $(LIBSOMAJ)* \
-	libpng.pc
+	libpng.pc pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -220,22 +217,22 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o png.pic.o: png.h pngconf.h pngintrn.h
-pngerror.o pngerror.pic.o: png.h pngconf.h pngintrn.h
-pngrio.o pngrio.pic.o: png.h pngconf.h pngintrn.h
-pngwio.o pngwio.pic.o: png.h pngconf.h pngintrn.h
-pngmem.o pngmem.pic.o: png.h pngconf.h pngintrn.h
-pngset.o pngset.pic.o: png.h pngconf.h pngintrn.h
-pnggccrd.o pnggccrd.pic.o: png.h pngconf.h pngintrn.h
-pngget.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pnggccrd.o pngget.pic.o: png.h pngconf.h pngintrn.h
-pngread.o pngread.pic.o: png.h pngconf.h pngintrn.h
-pngrtran.o pngrtran.pic.o: png.h pngconf.h pngintrn.h
-pngrutil.o pngrutil.pic.o: png.h pngconf.h pngintrn.h
-pngtrans.o pngtrans.pic.o: png.h pngconf.h pngintrn.h
-pngwrite.o pngwrite.pic.o: png.h pngconf.h pngintrn.h
-pngwtran.o pngwtran.pic.o: png.h pngconf.h pngintrn.h
-pngwutil.o pngwutil.pic.o: png.h pngconf.h pngintrn.h
-pngpread.o pngpread.pic.o: png.h pngconf.h pngintrn.h
+png.o png.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o pngerror.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o pngrio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o pngwio.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o pngmem.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o pngset.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o pnggccrd.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pnggccrd.o pngget.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o pngread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o pngrtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o pngrutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o pngtrans.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o pngwrite.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o pngwtran.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o pngwutil.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o pngpread.pic.o: png.h pngconf.h pngdefs.h pngpriv.h
 
-pngtest.o: png.h pngconf.h pngintrn.h
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.std b/scripts/makefile.std
index 12f9af1..2e7a7a8 100644
--- a/scripts/makefile.std
+++ b/scripts/makefile.std
@@ -40,6 +40,9 @@
 
 all: libpng.a pngtest
 
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.std */" > pngdefs.h
+
 libpng.a: $(OBJS)
 	$(AR_RC) $@  $(OBJS)
 	$(RANLIB) $@
@@ -56,16 +59,19 @@
 	-@$(MKDIR_P) $(DESTDIR)$(LIBPATH)
 	-@$(RM_F) $(DESTDIR)$(INCPATH)/png.h
 	-@$(RM_F) $(DESTDIR)$(INCPATH)/pngconf.h
+	-@$(RM_F) $(DESTDIR)$(INCPATH)/pngdefs.h
 	cp png.h $(DESTDIR)$(INCPATH)/libpng
 	cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
+	cp pngdefs.h $(DESTDIR)$(INCPATH)/libpng
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
+	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngdefs.h
 	(cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .)
 	cp libpng.a $(DESTDIR)$(LIBPATH)
 	chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
 
 clean:
-	$(RM_F) *.o libpng.a pngtest pngout.png
+	$(RM_F) *.o libpng.a pngtest pngout.png pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -73,20 +79,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.sunos b/scripts/makefile.sunos
index 5cf7299..e2dca4b 100644
--- a/scripts/makefile.sunos
+++ b/scripts/makefile.sunos
@@ -43,7 +43,10 @@
 	pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
 	pngwtran.o pngmem.o pngerror.o pngpread.o pnggccrd.o
 
-all: libpng.a pngtest
+all: libpng.a pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.elf */" > pngdefs.h
 
 libpng.a: $(OBJS)
 	$(AR_RC) $@  $(OBJS)
@@ -61,16 +64,18 @@
 	-@$(MKDIR_P) $(DESTDIR)$(LIBPATH)
 	-@$(RM_F) $(DESTDIR)$(INCPATH)/png.h
 	-@$(RM_F) $(DESTDIR)$(INCPATH)/pngconf.h
+	-@$(RM_F) $(DESTDIR)$(INCPATH)/pngdefs.h
 	cp png.h $(DESTDIR)$(INCPATH)/libpng
 	cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
 	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
+	chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngdefs.h
 	(cd $(DESTDIR)$(INCPATH); $(LN_SF) libpng/* .)
 	cp libpng.a $(DESTDIR)$(LIBPATH)
 	chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
 
 clean:
-	$(RM_F) *.o libpng.a pngtest pngout.png
+	$(RM_F) *.o libpng.a pngtest pngout.png pngdefs.h
 
 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
 writelock:
@@ -78,20 +83,20 @@
 
 # DO NOT DELETE THIS LINE -- make depend depends on it.
 
-png.o: png.h pngconf.h pngintrn.h
-pngerror.o: png.h pngconf.h pngintrn.h
-pngrio.o: png.h pngconf.h pngintrn.h
-pngwio.o: png.h pngconf.h pngintrn.h
-pngmem.o: png.h pngconf.h pngintrn.h
-pngset.o: png.h pngconf.h pngintrn.h
-pngget.o: png.h pngconf.h pngintrn.h
-pngread.o: png.h pngconf.h pngintrn.h
-pngrtran.o: png.h pngconf.h pngintrn.h
-pngrutil.o: png.h pngconf.h pngintrn.h
-pngtest.o: png.h pngconf.h pngintrn.h
-pngtrans.o: png.h pngconf.h pngintrn.h
-pngwrite.o: png.h pngconf.h pngintrn.h
-pngwtran.o: png.h pngconf.h pngintrn.h
-pngwutil.o: png.h pngconf.h pngintrn.h
-pngpread.o: png.h pngconf.h pngintrn.h
+png.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngerror.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwio.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngmem.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngset.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngget.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngread.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngrutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngtrans.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwrite.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwtran.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngwutil.o: png.h pngconf.h pngdefs.h pngpriv.h
+pngpread.o: png.h pngconf.h pngdefs.h pngpriv.h
 
+pngtest.o: png.h pngconf.h pngdefs.h
diff --git a/scripts/makefile.tc3 b/scripts/makefile.tc3
index 060ce69..49a6d80 100644
--- a/scripts/makefile.tc3
+++ b/scripts/makefile.tc3
@@ -25,57 +25,60 @@
 
 all: libpng$(MODEL).lib pngtest$(E)
 
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.tc3 */" > pngdefs.h
+
 pngtest: pngtest$(E)
 
 test: pngtest$(E)
 	pngtest$(E)
 
-png$(O): png.h pngconf.h pngintrn.h
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 		  $(CC) -c $(CFLAGS) $*.c
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c
 
 libpng$(MODEL).lib: $(OBJS1) $(OBJS2) $(OBJS3)
diff --git a/scripts/makefile.vcawin32 b/scripts/makefile.vcawin32
index 030f295..d9583ba 100644
--- a/scripts/makefile.vcawin32
+++ b/scripts/makefile.vcawin32
@@ -31,65 +31,61 @@
 OBJS  = $(OBJS1) $(OBJS2) $(OBJS3) $(OBJS4)
 
 # Targets
-all: libpng.lib pngconf.h
+all: libpng.lib pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.vcawin32 */" > pngdefs.h
+	echo "#define PNG_USE_PNGVCRD" >> pngdefs.h
 
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-	echo "#define PNG_USE_PNGVCRD" >> pngconf.h
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
-png$(O): png.h pngconf.h pngintrn.h
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngvcrd$(O): png.h pngconf.h pngintrn.h
+pngvcrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
 libpng.lib: $(OBJS)
diff --git a/scripts/makefile.vcwin32 b/scripts/makefile.vcwin32
index a59779a..9258cab 100644
--- a/scripts/makefile.vcwin32
+++ b/scripts/makefile.vcwin32
@@ -30,65 +30,61 @@
 OBJS  = $(OBJS1) $(OBJS2) $(OBJS3)
 
 # Targets
-all: libpng.lib pngconf.h
+all: libpng.lib pngdefs.h
 
-pngconf.h.in: pngconf.h
-	cat pngconf.h > pngconf.h.in
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.vcwin32 */" > pngdefs.h
+	echo "#define PNG_NO_MMX_CODE" >> pngdefs.h
 
-pngconf.h: pngconf.h.in
-	sed "/Makefile-supplied defines go here:/q" pngconf.h.in > pngconf.h
-	echo "#define PNG_NO_MMX_CODE" >> pngconf.h
-	sed "1,/Makefile-supplied defines go here:/d" pngconf.h.in >> pngconf.h
-
-png$(O): png.h pngconf.h pngintrn.h
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pnggccrd$(O): png.h pngconf.h pngintrn.h
+pnggccrd$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) -c $(CFLAGS) $*.c $(ERRFILE)
 
 libpng.lib: $(OBJS)
diff --git a/scripts/makefile.watcom b/scripts/makefile.watcom
index c0b1f4b..569a141 100644
--- a/scripts/makefile.watcom
+++ b/scripts/makefile.watcom
@@ -44,54 +44,57 @@
 OBJS3=pngrtran$(O) pngwtran$(O) pngrio$(O) pngwio$(O)
 
 
-all: test
+all: test pngdefs.h
 
-png$(O): png.h pngconf.h pngintrn.h
+pngdefs.h:
+	echo "/* pngdefs.h was built by makefile.watcam */" > pngdefs.h
+
+png$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngset$(O): png.h pngconf.h pngintrn.h
+pngset$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngget$(O): png.h pngconf.h pngintrn.h
+pngget$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngread$(O): png.h pngconf.h pngintrn.h
+pngread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngpread$(O): png.h pngconf.h pngintrn.h
+pngpread$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrtran$(O): png.h pngconf.h pngintrn.h
+pngrtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrutil$(O): png.h pngconf.h pngintrn.h
+pngrutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngerror$(O): png.h pngconf.h pngintrn.h
+pngerror$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngmem$(O): png.h pngconf.h pngintrn.h
+pngmem$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngrio$(O): png.h pngconf.h pngintrn.h
+pngrio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwio$(O): png.h pngconf.h pngintrn.h
+pngwio$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngtest$(O): png.h pngconf.h pngintrn.h
+pngtest$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngtrans$(O): png.h pngconf.h pngintrn.h
+pngtrans$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwrite$(O): png.h pngconf.h pngintrn.h
+pngwrite$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwtran$(O): png.h pngconf.h pngintrn.h
+pngwtran$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
-pngwutil$(O): png.h pngconf.h pngintrn.h
+pngwutil$(O): png.h pngconf.h pngdefs.h pngpriv.h
 	$(CC) $(CFLAGS) $*.c $(ERRFILE)
 
 libpng.lib: $(OBJS1) $(OBJS2) $(OBJS3)
diff --git a/scripts/makevms.com b/scripts/makevms.com
index b9e3895..c81a156 100644
--- a/scripts/makevms.com
+++ b/scripts/makevms.com
@@ -52,44 +52,45 @@
 $ write sys$output "Compiling Libpng sources ..."
 $ if make.eqs.""
 $  then
+$   echo "" > pngdefs.h
 $   dele pngtest.obj;*
 $   CALL MAKE png.OBJ "cc ''CCOPT' png" -
-	png.c png.h pngconf.h
+	png.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngpread.OBJ "cc ''CCOPT' pngpread" -
-					 pngpread.c png.h pngconf.h
+	pngpread.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngset.OBJ "cc ''CCOPT' pngset" -
-	pngset.c png.h pngconf.h
+	pngset.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngget.OBJ "cc ''CCOPT' pngget" -
-	pngget.c png.h pngconf.h
+	pngget.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngread.OBJ "cc ''CCOPT' pngread" -
-	pngread.c png.h pngconf.h
+	pngread.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngpread.OBJ "cc ''CCOPT' pngpread" -
-					 pngpread.c png.h pngconf.h
+	pngpread.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngrtran.OBJ "cc ''CCOPT' pngrtran" -
-	pngrtran.c png.h pngconf.h
+	pngrtran.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngrutil.OBJ "cc ''CCOPT' pngrutil" -
-	pngrutil.c png.h pngconf.h
+	pngrutil.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngerror.OBJ "cc ''CCOPT' pngerror" -
-	pngerror.c png.h pngconf.h
+	pngerror.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngmem.OBJ "cc ''CCOPT' pngmem" -
-	pngmem.c png.h pngconf.h
+	pngmem.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngrio.OBJ "cc ''CCOPT' pngrio" -
-	pngrio.c png.h pngconf.h
+	pngrio.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngwio.OBJ "cc ''CCOPT' pngwio" -
-	pngwio.c png.h pngconf.h
+	pngwio.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngtrans.OBJ "cc ''CCOPT' pngtrans" -
-	pngtrans.c png.h pngconf.h
+	pngtrans.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngwrite.OBJ "cc ''CCOPT' pngwrite" -
-	pngwrite.c png.h pngconf.h
+	pngwrite.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngwtran.OBJ "cc ''CCOPT' pngwtran" -
-	pngwtran.c png.h pngconf.h
+	pngwtran.c png.h pngconf.h pngdefs.h pngpriv.h
 $   CALL MAKE pngwutil.OBJ "cc ''CCOPT' pngwutil" -
-	pngwutil.c png.h pngconf.h
+	pngwutil.c png.h pngconf.h pngdefs.h pngpriv.h
 $   write sys$output "Building Libpng ..."
 $   CALL MAKE libpng.OLB "lib/crea libpng.olb *.obj" *.OBJ
 $   write sys$output "Building pngtest..."
 $   CALL MAKE pngtest.OBJ "cc ''CCOPT' pngtest" -
-	pngtest.c png.h pngconf.h
+	pngtest.c png.h pngconf.h pngdefs.h
 $   call make pngtest.exe -
 	"LINK pngtest,libpng.olb/lib,''zlibsrc'libz.olb/lib" -
 	pngtest.obj libpng.olb
diff --git a/scripts/pngos2.def b/scripts/pngos2.def
index 8a5c879..9580082 100644
--- a/scripts/pngos2.def
+++ b/scripts/pngos2.def
@@ -2,7 +2,7 @@
 ; PNG.LIB module definition file for OS/2
 ;----------------------------------------
 
-; Version 1.4.0beta10
+; Version 1.4.0beta11
 
 LIBRARY		PNG
 DESCRIPTION	"PNG image compression library for OS/2"
@@ -219,6 +219,9 @@
   png_save_int_32
   png_get_uint_31
   png_set_expand_gray_1_2_4_to_8
+; Added at version 1.4.0
+  png_get_io_chunk_name
+  png_get_io_state
 
 ; These are not present when libpng is compiled with PNG_NO_GLOBAL_ARRAYS
   png_libpng_ver
diff --git a/scripts/pngw32.def b/scripts/pngwin.def
similarity index 98%
rename from scripts/pngw32.def
rename to scripts/pngwin.def
index 2ffe67a..9b5d3c7 100644
--- a/scripts/pngw32.def
+++ b/scripts/pngwin.def
@@ -5,7 +5,7 @@
 LIBRARY
 
 EXPORTS
-;Version 1.4.0beta10
+;Version 1.4.0beta11
   png_build_grayscale_palette
   png_chunk_error
   png_chunk_warning
@@ -223,3 +223,5 @@
 ; png_benign_error
 ; png_benign_chunk_error
 ; png_set_benign_error
+  png_get_io_chunk_name
+  png_get_io_state
diff --git a/scripts/pngw32.rc b/scripts/pngwin.rc
similarity index 98%
rename from scripts/pngw32.rc
rename to scripts/pngwin.rc
index 02e30e2..46c8921 100644
--- a/scripts/pngw32.rc
+++ b/scripts/pngwin.rc
@@ -90,7 +90,7 @@
       VALUE "FileDescription", "PNG image compression library\000"
       VALUE "FileVersion", PNG_LIBPNG_VER_STRING "\000"
       VALUE "InternalName", PNG_LIBPNG_DLLFNAME QUOTE(PNG_LIBPNG_VER_DLLNUM) PNG_LIBPNG_DLLFNAME_POSTFIX " (Windows 32 bit)\000"
-      VALUE "LegalCopyright", "\251 1998-2004 Glenn Randers-Pehrson et al.\000"
+      VALUE "LegalCopyright", "\251 1998-2006 Glenn Randers-Pehrson et al.\000"
 #ifdef PNG_USER_VERSIONINFO_LEGALTRADEMARKS
       VALUE "LegalTrademarks", PNG_USER_VERSIONINFO_LEGALTRADEMARKS "\000"
 #endif /* PNG_USER_VERSIONINFO_LEGALTRADEMARKS */
diff --git a/scripts/smakefile.ppc b/scripts/smakefile.ppc
index e5c0278..a5fc6eb 100644
--- a/scripts/smakefile.ppc
+++ b/scripts/smakefile.ppc
@@ -19,7 +19,10 @@
 OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o pngread.o \
 pngerror.o pngpread.o pngwrite.o pngrtran.o pngwtran.o pngrio.o pngwio.o pngmem.o
 
-all: $(LIBNAME) pngtest
+all: $(LIBNAME) pngtest pngdefs.h
+
+pngdefs.h:
+	echo "/* pngdefs.h was built by smakefile.ppc */" > pngdefs.h
 
 $(LIBNAME): $(OBJS)
             $(AR) $(AR_FLAGS) $@ $(OBJS)