]> git.saurik.com Git - wxWidgets.git/blobdiff - src/png/scripts/pnglibconf.mak
Move code removing "-psn_xxx" command line arguments to common code.
[wxWidgets.git] / src / png / scripts / pnglibconf.mak
index c04578f31d9e545b716cdb1e4ce33303766bf698..c7117ddc48f7e99e9dc8052e5cd39ce23fc24e53 100755 (executable)
@@ -3,7 +3,7 @@
 #
 # These lines are copied from Makefile.am, they illustrate
 # how to automate the build of pnglibconf.h from scripts/pnglibconf.dfa
-# given 'awk' and 'sed'
+# given just 'awk', a C preprocessor and standard command line utilities
 
 # Override as appropriate, these definitions can be overridden on
 # the make command line (AWK='nawk' for example).
@@ -12,13 +12,13 @@ AWK = mawk
 AWK = nawk
 AWK = one-true-awk
 AWK = awk  # Crashes on SunOS 5.10 - use 'nawk'
-CPP = $(CC) -E # Does not work on SUN OS 5.10 - use /lib/cpp
-SED = sed
+CPP = $(CC) -E # On SUN OS 5.10 if this causes problems use /lib/cpp
 
-COPY = cp
+MOVE = mv
 DELETE = rm -f
 ECHO = echo
-DFA_XTRA = # Appended to scripts/options.awk
+DFA_XTRA = # Put your configuration file here, see scripts/pnglibconf.dfa.  Eg:
+# DFA_XTRA = pngusr.dfa
 
 # CPPFLAGS should contain the options to control the result,
 # but DEFS and CFLAGS are also supported here, override
@@ -31,28 +31,24 @@ srcdir = .
 # The standard pnglibconf.h exists as scripts/pnglibconf.h.prebuilt,
 # copy this if the following doesn't work.
 pnglibconf.h: pnglibconf.dfn
-       $(DELETE) $@ dfn.c dfn1.out dfn2.out dfn3.out
-       $(ECHO) '#include "pnglibconf.dfn"' >dfn.c
-       $(CPP) $(DFNFLAGS) dfn.c >dfn1.out
-       $(ECHO) "If 'cpp -e' crashes try /lib/cpp (e.g. CPP='/lib/cpp')" >&2
-       $(SED) -n -e 's|^.*PNG_DEFN_MAGIC *-\(.*\)- *PNG_DEFN_END.*$$|\1|p'\
-           dfn1.out >dfn2.out
-       $(SED) -e 's| *PNG_JOIN *||g' -e 's| *$$||' dfn2.out >dfn3.out
-       $(COPY) dfn3.out $@
-       $(DELETE) dfn.c dfn1.out dfn2.out dfn3.out
-
-pnglibconf.dfn: $(srcdir)/scripts/pnglibconf.dfa $(srcdir)/scripts/options.awk $(srcdir)/pngconf.h
-       $(DELETE) $@ dfn1.out dfn2.out
+       $(DELETE) $@ pnglibconf.c pnglibconf.out pnglibconf.tmp
+       $(ECHO) '#include "pnglibconf.dfn"' >pnglibconf.c
+       $(ECHO) "If '$(CC) -E' crashes try /lib/cpp (e.g. CPP='/lib/cpp')" >&2
+       $(CPP) $(DFNFLAGS) pnglibconf.c >pnglibconf.out
+       $(AWK) -f "$(srcdir)/scripts/dfn.awk" out="pnglibconf.tmp" pnglibconf.out 1>&2
+       $(MOVE) pnglibconf.tmp $@
+
+pnglibconf.dfn: $(srcdir)/scripts/pnglibconf.dfa $(srcdir)/scripts/options.awk $(srcdir)/pngconf.h $(srcdir)/pngusr.dfa $(DFA_XTRA)
+       $(DELETE) $@ pnglibconf.pre pnglibconf.tmp
        $(ECHO) "Calling $(AWK) from scripts/pnglibconf.mak" >&2
        $(ECHO) "If 'awk' crashes try a better awk (e.g. AWK='nawk')" >&2
-       $(AWK) -f $(srcdir)/scripts/options.awk out=dfn1.out version=search\
-               $(srcdir)/pngconf.h $(srcdir)/scripts/pnglibconf.dfa\
-               $(DFA_XTRA) 1>&2
-       $(AWK) -f $(srcdir)/scripts/options.awk out=dfn2.out dfn1.out 1>&2
-       $(COPY) dfn2.out $@
-       $(DELETE) dfn1.out dfn2.out
+       $(AWK) -f $(srcdir)/scripts/options.awk out="pnglibconf.pre"\
+           version=search $(srcdir)/pngconf.h $(srcdir)/scripts/pnglibconf.dfa\
+           $(srcdir)/pngusr.dfa $(DFA_XTRA) 1>&2
+       $(AWK) -f $(srcdir)/scripts/options.awk out="pnglibconf.tmp" pnglibconf.pre 1>&2
+       $(MOVE) pnglibconf.tmp $@
 
 clean-pnglibconf:
-       $(DELETE) pnglibconf.h pnglibconf.dfn dfn.c dfn1.out dfn2.out dfn3.out
+       $(DELETE) pnglibconf.*
 
 clean: clean-pnglibconf