From 98eb24c7261198bdd1e3428f34ddbc8028a39cc2 Mon Sep 17 00:00:00 2001 From: Glenn Randers-Pehrson Date: Sat, 17 Apr 2010 18:07:33 -0500 Subject: [PATCH] [devel] Updated contrib/pngminim project to work with the new pnglibconf.h --- contrib/pngminim/decoder/gather.sh | 34 ++++++++------------- contrib/pngminim/decoder/makefile | 48 +++++++++--------------------- contrib/pngminim/decoder/pngusr.h | 11 ++++--- contrib/pngminim/encoder/gather.sh | 36 ++++++++++------------ contrib/pngminim/encoder/makefile | 46 +++++++--------------------- contrib/pngminim/encoder/pngusr.h | 7 ++--- contrib/pngminim/preader/gather.sh | 23 +++++++++----- contrib/pngminim/preader/makefile | 9 +++++- contrib/pngminim/preader/pngusr.h | 7 ++--- 9 files changed, 89 insertions(+), 132 deletions(-) diff --git a/contrib/pngminim/decoder/gather.sh b/contrib/pngminim/decoder/gather.sh index 915873d37..5006c537b 100755 --- a/contrib/pngminim/decoder/gather.sh +++ b/contrib/pngminim/decoder/gather.sh @@ -1,23 +1,15 @@ - -# Get the source for the pngminus application -cp ../../pngminus/png2pnm.c pngm2pnm.c - -# Get the libpng sources -cp ../../../*.h . -cp ../../../*.c . - -# Get the libpng scripts for building pnglibconf.h -cp ../../../scripts/options.awk . -cp ../../../scripts/pnglibconf.dfa . -sed -e "s:scripts/::g" ../../../scripts/pnglibconf.mak > pnglibconf.mak -#14+% -# Remove libpng sources we won't use +test -n "${PNGSRC}" || PNGSRC=../../.. +cp ${PNGSRC}/contrib/pngminus/png2pnm.c pngm2pnm.c +cp "${PNGSRC}"/*.h . +cp "${PNGSRC}"/*.c . rm example.c pngtest.c pngpread.c pngw*.c - -# Get the zlib sources -# Change the following 2 lines if zlib is somewhere else -cp ../../../../zlib/*.h . -cp ../../../../zlib/*.c . - -# Remove zlib sources we won't use +rm -f pnglibconf.h +test -d scripts || mkdir scripts +cp "${PNGSRC}"/scripts/pnglibconf.mak scripts +cp "${PNGSRC}"/scripts/pnglibconf.dfa scripts +cp "${PNGSRC}"/scripts/options.awk scripts +# change the following if zlib is somewhere else +test -n "${ZLIBSRC}" || ZLIBSRC="${PNGSRC}"/../zlib +cp "${ZLIBSRC}"/*.h . +cp "${ZLIBSRC}"/*.c . rm minigzip.c example.c compress.c deflate.c gz* diff --git a/contrib/pngminim/decoder/makefile b/contrib/pngminim/decoder/makefile index 45ec4f26f..49b91fea9 100644 --- a/contrib/pngminim/decoder/makefile +++ b/contrib/pngminim/decoder/makefile @@ -4,9 +4,6 @@ #CC=cc CC=gcc LD=$(CC) -AWK=awk -SED=sed -CPP=cpp RM=rm -f @@ -28,50 +25,33 @@ OBJS = pngm2pnm$(O) png$(O) pngerror$(O) pngget$(O) pngmem$(O) \ # implicit make rules ------------------------------------------------------- -.c$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngusr.h zlib.h +# note: dependencies do not work on implicit rule lines +.c$(O): $(CC) -c $(CFLAGS) $< # dependencies all: pngm2pnm$(E) -# see scripts/pnglibconf.mak for more options -pnglibconf.h: pnglibconf.mak pnglibconf.dfn - make -f pnglibconf.mak pnglibconf.h - -# used on demand to regenerate the standard header, CPPFLAGS should -# be empty - no non-standard defines - -.dfn.out: - rm -f $@ dfn.c dfn?.out - echo '#include "$<"' >dfn.c - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) @LIBPNG_DEFINES@\ - $(CPPFLAGS) $(SYMBOL_CFLAGS) dfn.c >dfn1.out - $(SED) -n -e 's|^.*PNG_DEFN_MAGIC-\(.*\)-PNG_DEFN_END.*$$|\1|p'\ - dfn1.out >dfn2.out - $(SED) -e 's| *@@@ *||g' -e 's| *$$||' dfn2.out >dfn3.out - rm -f dfn.c dfn[12].out - mv dfn3.out $@ - -pnglibconf.dfn: pnglibconf.dfa options.awk - rm -f $@ dfn?.out - test -z "$(CPPFLAGS)" - echo "com @PNGLIB_VERSION@ STANDARD API DEFINITION" |\ - $(AWK) -f options.awk pre=1 out=dfn1.out\ - logunsupported=1 - pnglibconf.dfa 1>&2 - $(AWK) -f options.awk pre=0 out=dfn2.out\ - logunsupported=1 dfn1.out 1>&2 - rm dfn1.out - mv dfn2.out $@ - - pngm2pnm$(E): $(OBJS) $(LD) -o pngm2pnm$(E) $(OBJS) strip pngm2pnm$(E) +pnglibconf.h: scripts/pnglibconf.mak scripts/pnglibconf.dfa \ + scripts/options.awk pngusr.h + + rm -f pnglibconf.h + + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak\ + CPPFLAGS=-DPNG_USER_CONFIG $@ + clean: + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak clean $(RM) pngm2pnm$(O) $(RM) pngm2pnm$(E) $(RM) $(OBJS) +$(OBJS): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h\ + pnginfo.h pngdebug.h zlib.h + # End of makefile for pngm2pnm diff --git a/contrib/pngminim/decoder/pngusr.h b/contrib/pngminim/decoder/pngusr.h index ebda3f280..73e454067 100644 --- a/contrib/pngminim/decoder/pngusr.h +++ b/contrib/pngminim/decoder/pngusr.h @@ -12,12 +12,15 @@ #ifndef MINRDPNGCONF_H #define MINRDPNGCONF_H +#ifdef NJET + /* No 16-bit support beyond reading with strip_16 */ +#endif + +#define PNG_USER_PRIVATEBUILD "PNG minimal build" +#define PNG_USER_DLLFNAME_POSTFIX "MN" + #define PNG_NO_WARNINGS -#define png_warning(s1,s2) "" -#define png_chunk_warning(s1,s2) "" #define PNG_NO_ERROR_TEXT -#define png_error(s1,s2) png_err(s1) -#define png_chunk_error(s1,s2) png_err(s1) #define PNG_NO_READ_GAMMA #define PNG_NO_READ_BACKGROUND diff --git a/contrib/pngminim/encoder/gather.sh b/contrib/pngminim/encoder/gather.sh index 2a6529a5a..04f227c0c 100755 --- a/contrib/pngminim/encoder/gather.sh +++ b/contrib/pngminim/encoder/gather.sh @@ -1,23 +1,17 @@ - -# Get the source for the pngminus application -cp ../../pngminus/pnm2png.c pnm2pngm.c - -# Get the libpng sources -cp ../../../*.h . -cp ../../../*.c . - -# Get the libpng scripts for building pnglibconf.h -cp ../../../scripts/options.awk . -cp ../../../scripts/pnglibconf.dfa . -sed -e "s:scripts/::g" ../../../scripts/pnglibconf.mak > pnglibconf.mak -#14+% -# Remove libpng sources we won't use +test -n "${PNGSRC}" || PNGSRC=../../.. +cp ${PNGSRC}/contrib/pngminus/pnm2png.c pnm2pngm.c +cp "${PNGSRC}"/*.h . +cp "${PNGSRC}"/*.c . rm example.c pngtest.c pngr*.c pngpread.c +rm -f pnglibconf.h +test -d scripts || mkdir scripts +cp "${PNGSRC}"/scripts/pnglibconf.mak scripts +cp "${PNGSRC}"/scripts/pnglibconf.dfa scripts +cp "${PNGSRC}"/scripts/options.awk scripts +# change the following if zlib is somewhere else +test -n "${ZLIBSRC}" || ZLIBSRC="${PNGSRC}"/../zlib +cp "${ZLIBSRC}"/*.h . +cp "${ZLIBSRC}"/*.c . +rm inf*.[ch] +rm minigzip.c example.c gz* -# Get the zlib sources -# Change the following 2 lines if zlib is somewhere else -cp ../../../../zlib/*.h . -cp ../../../../zlib/*.c . - -# Remove zlib sources we won't use -rm minigzip.c example.c inf*.[ch] gz* diff --git a/contrib/pngminim/encoder/makefile b/contrib/pngminim/encoder/makefile index 8c38c452c..ef71f8a8e 100644 --- a/contrib/pngminim/encoder/makefile +++ b/contrib/pngminim/encoder/makefile @@ -1,17 +1,13 @@ - # Makefile for PngMinus (pnm2pngm) # Linux / Unix #CC=cc CC=gcc LD=$(CC) -AWK=awk -SED=sed -CPP=cpp RM=rm -f -CFLAGS=-DPNG_USER_CONFIG -DNO_GZCOMPRESS -DNO_GZIP -I. -O1 +CFLAGS=-DPNG_USER_CONFIG -DNO_GZIP -I. -O1 C=.c O=.o @@ -28,49 +24,27 @@ OBJS = pnm2pngm$(O) png$(O) pngerror$(O) pngget$(O) pngmem$(O) \ # implicit make rules ------------------------------------------------------- -.c$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngusr.h zlib.h +.c$(O): $(CC) -c $(CFLAGS) $< # dependencies all: pnm2pngm$(E) -# see scripts/pnglibconf.mak for more options -pnglibconf.h: pnglibconf.mak pnglibconf.dfn - make -f pnglibconf.mak pnglibconf.h - -# used on demand to regenerate the standard header, CPPFLAGS should -# be empty - no non-standard defines - -.dfn.out: - rm -f $@ dfn.c dfn?.out - echo '#include "$<"' >dfn.c - $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) @LIBPNG_DEFINES@\ - $(CPPFLAGS) $(SYMBOL_CFLAGS) dfn.c >dfn1.out - $(SED) -n -e 's|^.*PNG_DEFN_MAGIC-\(.*\)-PNG_DEFN_END.*$$|\1|p'\ - dfn1.out >dfn2.out - $(SED) -e 's| *@@@ *||g' -e 's| *$$||' dfn2.out >dfn3.out - rm -f dfn.c dfn[12].out - mv dfn3.out $@ - -pnglibconf.dfn: pnglibconf.dfa options.awk - rm -f $@ dfn?.out - test -z "$(CPPFLAGS)" - echo "com @PNGLIB_VERSION@ STANDARD API DEFINITION" |\ - $(AWK) -f options.awk pre=1 out=dfn1.out\ - logunsupported=1 - pnglibconf.dfa 1>&2 - $(AWK) -f options.awk pre=0 out=dfn2.out\ - logunsupported=1 dfn1.out 1>&2 - rm dfn1.out - mv dfn2.out $@ - pnm2pngm$(E): $(OBJS) $(LD) -o pnm2pngm$(E) $(OBJS) strip pnm2pngm$(E) +pnglibconf.h: scripts/pnglibconf.mak scripts/pnglibconf.dfa scripts/options.awk pngusr.h + rm -f pnglibconf.h + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak CPPFLAGS=-DPNG_USER_CONFIG $@ + clean: + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak clean $(RM) pnm2pngm$(O) $(RM) pnm2pngm$(E) $(RM) $(OBJS) -# End of makefile for pngm2pnm +$(OBJS): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h pngusr.h zlib.h + +# End of makefile for pnm2pngm diff --git a/contrib/pngminim/encoder/pngusr.h b/contrib/pngminim/encoder/pngusr.h index 02eeaa8c7..089c41a41 100644 --- a/contrib/pngminim/encoder/pngusr.h +++ b/contrib/pngminim/encoder/pngusr.h @@ -12,14 +12,13 @@ #ifndef MINWRPNGCONF_H #define MINWRPNGCONF_H +#define PNG_USER_PRIVATEBUILD "PNG minimal build" +#define PNG_USER_DLLFNAME_POSTFIX "MN" + #define PNG_NO_READ_SUPPORTED #define PNG_NO_WARNINGS -#define png_warning(s1,s2) "" -#define png_chunk_warning(s1,s2) "" #define PNG_NO_ERROR_TEXT -#define png_error(s1,s2) png_err(s1) -#define png_chunk_error(s1,s2) png_err(s1) #define PNG_NO_WRITE_BACKGROUND #define PNG_NO_WRITE_GAMMA diff --git a/contrib/pngminim/preader/gather.sh b/contrib/pngminim/preader/gather.sh index 4fe4231bc..bfb948ec5 100755 --- a/contrib/pngminim/preader/gather.sh +++ b/contrib/pngminim/preader/gather.sh @@ -1,9 +1,18 @@ -cp ../../gregbook/rpng2-x.c ../../gregbook/readpng2.[ch] . -cp ../../gregbook/COPYING ../../gregbook/LICENSE . -cp ../../../*.h . -cp ../../../*.c . +test -n "${PNGSRC}" || PNGSRC=../../.. +cp "${PNGSRC}"/contrib/gregbook/rpng2-x.c . +cp "${PNGSRC}"/contrib/gregbook/readpng2.[ch] . +cp "${PNGSRC}"/contrib/gregbook/COPYING . +cp "${PNGSRC}"/contrib/gregbook/LICENSE . +cp "${PNGSRC}"/*.h . +cp "${PNGSRC}"/*.c . rm example.c pngtest.c pngw*.c -# change the following 2 lines if zlib is somewhere else -cp ../../../../zlib/*.h . -cp ../../../../zlib/*.c . +rm -f pnglibconf.h +test -d scripts || mkdir scripts +cp "${PNGSRC}"/scripts/pnglibconf.mak scripts +cp "${PNGSRC}"/scripts/pnglibconf.dfa scripts +cp "${PNGSRC}"/scripts/options.awk scripts +# change the following if zlib is somewhere else +test -n "${ZLIBSRC}" || ZLIBSRC="${PNGSRC}"/../zlib +cp "${ZLIBSRC}"/*.h . +cp "${ZLIBSRC}"/*.c . rm minigzip.c example.c compress.c deflate.c gz* diff --git a/contrib/pngminim/preader/makefile b/contrib/pngminim/preader/makefile index 9b2ad253f..ecbfb0dfd 100644 --- a/contrib/pngminim/preader/makefile +++ b/contrib/pngminim/preader/makefile @@ -41,7 +41,7 @@ OBJS = rpng2-x$(O) readpng2$(O) png$(O) pngerror$(O) pngget$(O) pngmem$(O) \ # implicit make rules ------------------------------------------------------- -.c$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h readpng2.h pngusr.h zlib.h +.c$(O): $(CC) -c $(CFLAGS) $< # dependencies @@ -52,9 +52,16 @@ rpng2-x$(E): $(OBJS) $(LD) -o rpng2-x$(E) $(OBJS) $(LIBS) strip rpng2-x$(E) +pnglibconf.h: scripts/pnglibconf.mak scripts/pnglibconf.dfa scripts/options.awk pngusr.h + rm -f pnglibconf.h + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak CPPFLAGS=-DPNG_USER_CONFIG $@ + clean: + $(MAKE) $(MAKEFLAGS) -f scripts/pnglibconf.mak clean $(RM) rpng2-x$(O) $(RM) rpng2-x$(E) $(RM) $(OBJS) +$(OBJS): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h readpng2.h pngusr.h zlib.h + # End of makefile for rpng2-x diff --git a/contrib/pngminim/preader/pngusr.h b/contrib/pngminim/preader/pngusr.h index 6f6d0ce19..a675a8fb3 100644 --- a/contrib/pngminim/preader/pngusr.h +++ b/contrib/pngminim/preader/pngusr.h @@ -12,12 +12,11 @@ #ifndef MINPRDPNGCONF_H #define MINPRDPNGCONF_H +#define PNG_USER_PRIVATEBUILD "PNG minimal build" +#define PNG_USER_DLLFNAME_POSTFIX "MN" + #define PNG_NO_WARNINGS -#define png_warning(s1,s2) "" -#define png_chunk_warning(s1,s2) "" #define PNG_NO_ERROR_TEXT -#define png_error(s1,s2) png_err(s1) -#define png_chunk_error(s1,s2) png_err(s1) #define PNG_NO_READ_QUANTIZE #define PNG_NO_READ_INVERT