*~
.depend
-# flags for saying directory is complete
+# flags for saying directory/target is complete
DONE
+?DONE
# imports of of headers
imports/x11
programs/dthelp/parser/pass1/eltdef/tfile.c
programs/dthelp/parser/pass1/helptag/LocaleXlate.c
programs/dthelp/parser/pass1/helptag/XlationSvc.c
-programs/dthelp/parser/pass1/helptag/dthelp_htag1
programs/dthelp/parser/pass1/parser/case.c
programs/dthelp/parser/pass1/parser/context.h
programs/dthelp/parser/pass1/parser/delim.dat
programs/dthelp/parser/pass1/parser/delim.h
programs/dthelp/parser/pass1/parser/error
-programs/dthelp/parser/pass1/parser/parser
+programs/dthelp/parser/pass1/parser/dthelp_htag1
programs/dthelp/parser/pass1/util/context
programs/dthelp/parser/pass1/util/fclndir
programs/dthelp/parser/pass2/build/arc.h
libtoolize --force --automake
aclocal -I admin
-autoconf
+autoconf -f
autoheader
automake --foreign --include-deps --add-missing
programs/dthelp/dthelpgen/Makefile
programs/dthelp/dthelpdemo/Makefile
programs/dthelp/dthelpprint/Makefile
+programs/dthelp/parser/Makefile
+programs/dthelp/parser/pass1/Makefile
+programs/dthelp/parser/pass1/util/Makefile
+programs/dthelp/parser/pass1/build/Makefile
+programs/dthelp/parser/pass1/eltdef/Makefile
+programs/dthelp/parser/pass1/helptag/Makefile
+programs/dthelp/parser/pass1/parser/Makefile
programs/nsgmls/Makefile
AC_OUTPUT
dnl not currently building
-dnl programs/dthelp/Makefile
-dnl programs/dthelp/dthelpgen/Makefile
-dnl programs/dthelp/dthelpprint/Makefile
dnl programs/dthelp/parser/pass1/helptag/Makefile
dnl programs/dthelp/parser/pass1/Makefile
dnl programs/dthelp/parser/pass1/eltdef/Makefile
dnl programs/dthelp/parser/Makefile
dnl programs/dthelp/parser/canon1/Makefile
dnl programs/dthelp/parser/pass2/Makefile
-dnl programs/dthelp/dthelpview/Makefile
MAINTAINERCLEANFILES = Makefile.in
-SUBDIRS = dthelpview dthelpgen dthelpdemo dthelpprint
+SUBDIRS = dthelpview dthelpgen dthelpdemo dthelpprint parser
-#NOTYET = parser
MAINTAINERCLEANFILES = Makefile.in
-SUBDIRS = pass1 canon1 pass2 helptag misc dtds
+SUBDIRS = pass1
+
+#NOTYET canon1 pass2 helptag misc dtds
noinst_PROGRAMS = build
-ARCCMD = arc u
-UNARCCMD = arc x
-ARCDELCMD = arc d
-
HELPTAG = ..
HELPTAGSRC = $(HELPTAG)/helptag
HELPPARSERSRC = $(HELPTAG)/parser
build_CFLAGS = -I$(HELPUTILSRC)
-build_LDADD = -l$(HELPUTILLIB)
-
-if HPUX
-build_LDFLAGS = -Wl,-a archive
-endif
-
-if SOLARIS
-.NO_PARALLEL:
-endif
+build_LDADD = ../util/libutil.a
build_SOURCES = build.c buildutl.c eltree.c except.c fsa.c out.c param.c \
scan.c sref.c tree.c
BPRODS = $(BHPRODS) $(BCPRODS)
TRASH = error delim.dat template
-PRODUCTS = $(CPRODS) $(BPRODS)
-
-all:: $(PRODUCTS)
+BUILT_SOURCES = $(CPRODS) $(BPRODS)
+CLEANFILES = $(BUILT_SOURCES) $(TRASH) BDONE CDONE
-$(BPRODS): build $(HELPDTDFILE)
- $(RM) $(BPRODS) $(BTRASH)
- ./build < $(HELPDTDFILE)
+# We want the commands that actually create BPRODS and CPRODS to only
+# run once during a make so we gate them using these CDONE and BDONE
+# targets. This allows us to enable parallel building too.
+$(BPRODS): BDONE
-$(CPRODS): $(HELPUTILSRC)/context $(HELPTAGSRC)/delim.bld context.dat
- $(RM) $(CPRODS) $(CTRASH)
- $(CP) $(HELPTAGSRC)/delim.bld delim.dat #appl.-specific delim.dat
- $(HELPUTILSRC)/context sparse
+$(CPRODS): CDONE
-$(HELPUTILSRC)/context:
- cd $(HELPUTILSRC); make context
+# build the BRPODS
+BDONE: ./build $(HELPDTDFILE)
+ $(RM) $(BPRODS) $(BTRASH) && ./build < $(HELPDTDFILE) && touch BDONE
-arc package :
- if exist util.arc $(CP) build.arc old.arc
- $(ARCCMD) util.arc *.c *.h makefile
-unarc dearc :
- $(UNARCCMD) util.arc
+# build the CRPODS
+CDONE: $(HELPUTILSRC)/context $(HELPTAGSRC)/delim.bld context.dat
+ $(RM) $(CPRODS) $(CTRASH)
+ $(CP) $(HELPTAGSRC)/delim.bld delim.dat # appl.-specific delim.dat
+ $(HELPUTILSRC)/context sparse
+ touch CDONE
-clean::
- $(RM) $(PRODUCTS) $(TRASH)
noinst_PROGRAMS = eltdef
-ARCCMD = arc u
-UNARCCMD = arc x
-ARCDELCMD = arc d
-
HELPTAG = ..
HELPTAGSRC = $(HELPTAG)/helptag
HELPPARSERSRC = $(HELPTAG)/parser
HELPIFFILE = $(HELPTAGSRC)/help.if
HELPTSSFILE = $(HELPTAGSRC)/htag.tss
-eltdef_LDADD = -l$(HELPUTILLIB)
-
-if HPUX
-eltdef_LDFLAGS = -Wl,-a archive
-endif
-
-if SOLARIS
-.NO_PARALLEL:
-endif
+eltdef_LDADD = $(HELPUTILLIB)
eltdef_CFLAGS = -I$(HELPUTILSRC) -I$(HELPBUILDSRC)
ETRASH = estring.h error
TRASH = delim.dat estring.h error
-PRODUCTS = $(CPRODS) $(EPRODS)
+BUILT_SOURCES = $(CPRODS) $(EPRODS)
+CLEANFILES = $(BUILT_SOURCES) $(TRASH) CDONE EDONE
+
+$(CPRODS): CDONE
-all:: $(PRODUCTS)
+$(EPRODS): EDONE
-$(EPRODS): eltdef $(HELPIFFILE) $(HELPTSSFILE)
+
+EDONE: eltdef $(HELPIFFILE) $(HELPTSSFILE)
$(RM) $(EPRODS) $(ETRASH)
./eltdef $(HELPIFFILE)
+ touch EDONE
-$(CPRODS): $(HELPUTILSRC)/context $(HELPTAGSRC)/delim.elt context.dat
+CDONE: $(HELPUTILSRC)/context $(HELPTAGSRC)/delim.elt context.dat
$(RM) $(CPRODS) $(CTRASH)
$(CP) $(HELPTAGSRC)/delim.elt delim.dat # appl.-specific delim.dat
$(HELPUTILSRC)/context
+ touch CDONE
-$(HELPUTILSRC)/context:
- cd $(HELPUTILSRC); make context
-
-arc package :
- if exist util.arc $(CP) build.arc old.arc
- $(ARCCMD) util.arc *.c *.h makefile
-
-unarc dearc :
- $(UNARCCMD) util.arc
-
-clean::
- $(RM) $(PRODUCTS) $(TRASH)
MAINTAINERCLEANFILES = Makefile.in
-bin_PROGRAMS = dthelp_htag1
-
-ARCCMD = arc u
-UNARCCMD = arc x
-ARCDELCMD = arc d
+# Due to the wierd interdepencencies between helptag and parser,
+# disable parallel builds here. This is some really horrible code and
+# design - not surprising since it dates to 1989.
+.NOTPARALLEL:
HELPTAG = ..
HELPTAGSRC = $(HELPTAG)/helptag
HELPIFFILE = $(HELPTAGSRC)/help.if
HELPTSSFILE = $(HELPTAGSRC)/htag.tss
-XLATESRC = $(DTHELPSRC)
-XLATEHDRS = $(XLATESRC)/XlationSvc.h $(XLATESRC)/LocaleXlate.h
-XLATESRCS = ${top_srcdir}/lib/DtSvc/DtUtil2/XlationSvc.c \
- ${top_srcdir}/lib/DtSvc/DtUtil2/LocaleXlate.c
-
-ELTHDRS = $(HELPUTILSRC)/entdef.h $(HELPUTILSRC)/entext.h
-
-# PARSEHDRS are header files used by many parser routines
-PARSEHDRS = $(HELPUTILSRC)/basic.h $(HELPUTILSRC)/trie.h \
- $(HELPUTILSRC)/common.h $(HELPUTILSRC)/dtddef.h \
- $(HELPUTILSRC)/dtdext.h $(HELPUTILSRC)/sparse.h \
- parser.h proto.h
-
-APPLHDRS = $(PARSEHDRS) $(ELTHDRS) \
- $(HELPUTILSRC)/version.h \
- $(HELPTAGSRC)/global.h $(HELPTAGSRC)/charconv.h \
- $(HELPTAGSRC)/roman8.h $(HELPTAGSRC)/fproto.h \
- ../parser/pval.h ../parser/globdec.h ../parser/signonx.h \
- ../parser/userinc.h
-
-dthelp_htag1_CFLAGS = -I$(HELPUTILSRC) -I$(HELPPARSERSRC) -I$(HELPELTDEFSRC) \
- -I$(XLATESRC)
-
-dthelp_htag1_LDADD = $(HELPUTILLIB)
+XLATESRCS = XlationSvc.c LocaleXlate.c
-if HPUX
-dthelp_htag1_LDFLAGS = -Wl,-a archive
-endif
+XLATESRCDIR = ${top_srcdir}/lib/DtSvc/DtUtil2
-if SOLARIS
-dthelp_htag1_LDADD += -lm -ldl -lgen
-endif
+$(XLATESRCS): XDONE
-dthelp_htag1_SOURCES = custom.c default.c help.c make.c option.c out.c \
- special.c xref.c $(XLATESRCS)
+XDONE: $(XLATESRCDIR)/XlationSvc.c $(XLATESRCDIR)/LocaleXlate.c
+ $(RM) $(XLATESRCS)
+ $(CP) $(XLATESRCDIR)/XlationSvc.c XlationSvc.c
+ $(CP) $(XLATESRCDIR)/LocaleXlate.c LocaleXlate.c
+ cd ../parser; $(MAKE) CDONE
+ touch XDONE
-dthelp_htag1$(EXEEXT): $(HELPPARSERSRC)/parser
- $(RM) dthelp_htag1
- $(CP) $(HELPPARSERSRC)/parser dthelp_htag1
+BUILT_SOURCES = $(XLATESRCS)
+CLEANFILES = $(BUILT_SOURCES) XDONE
-arcappl archptag :
- if exist hptag.arc $(CP) hptag.arc hptag.old
- $(ARCCMD) hptag.arc *.c *.h linkcmd.dos linkcmd.unx $(HELPDTDFILE) \
- tex.if makefile makefile.doc make.ini delim.*
+AM_CPPFLAGS = -I. -I$(HELPPARSERSRC) -I$(HELPUTILSRC) \
+ -I$(HELPELTDEFSRC) -I$(XLATESRCDIR) $(DT_INCDIR)
-unarcappl unarchptag :
- $(UNARCCMD) hptag.arc
+# needed by parser/
+noinst_LIBRARIES = libhelptag.a
+libhelptag_a_SOURCES = custom.c default.c help.c make.c option.c \
+ special.c out.c xref.c $(XLATESRCS) \
+ ../parser/delim.h
--- /dev/null
+MAINTAINERCLEANFILES = Makefile.in
+
+bin_PROGRAMS = dthelp_htag1
+
+# Due to the wierd interdepencencies between helptag and parser,
+# disable parallel builds here. This is some really horrible code and
+# design - not surprising since it dates to 1989.
+.NOTPARALLEL:
+
+HELPTAG = ..
+HELPTAGSRC = $(HELPTAG)/helptag
+HELPPARSERSRC = $(HELPTAG)/parser
+HELPELTDEFSRC = $(HELPTAG)/eltdef
+HELPDTDFILE = $(HELPTAGSRC)/hptag.dtd
+HELPUTILSRC = $(HELPTAG)/util
+HELPBUILDSRC = $(HELPTAG)/build
+HELPUTILLIB = $(HELPTAG)/util/libutil.a
+
+AM_CPPFLAGS = -I. -I$(HELPUTILSRC) -I$(HELPTAGSRC) -I$(HELPBUILDSRC) \
+ -I$(HELPELTDEFSRC)
+
+dthelp_htag1_SOURCES = parser.c actutil.c \
+ closent.c code.c cyclent.c dcurelt.c \
+ end.c entity.c \
+ error.c getsign.c \
+ input.c level.c lookent.c \
+ minim.c optstrg.c param.c parent.c \
+ parutil.c pi.c \
+ scan.c setpar.c start.c string.c struct.c \
+ text.c
+
+APPLOBJECTS = ../helptag/libhelptag.a
+
+dthelp_htag1_LDADD = $(APPLOBJECTS) $(HELPUTILLIB) $(DTCLIENTLIBS) $(XTOOLLIB)
+
+CPRODS = case.c context.h delim.h
+CTRASH = error delim.dat
+
+BUILT_SOURCES = $(CPRODS)
+CLEANFILES = $(BUILT_SOURCES) $(CTRASH) CDONE
+
+$(CPRODS): CDONE
+
+CDONE: $(HELPUTILSRC)/context $(HELPTAGSRC)/delim.par context.dat
+ $(RM) $(CPRODS) $(CTRASH)
+ $(CP) $(HELPTAGSRC)/delim.par delim.dat # appl.-specific delim.dat
+ $(HELPUTILSRC)/context
+ touch CDONE
+
--- /dev/null
+MAINTAINERCLEANFILES = Makefile.in
+
+noinst_LIBRARIES = libutil.a
+
+noinst_PROGRAMS = context fclndir
+
+context_SOURCES = context.c
+
+fclndir_SOURCES = context.c
+
+libutil_a_SOURCES = allwhite.c inctest.c letter.c triedump.c \
+ triepdmp.c trieplk.c trierset.c upcmp8.c upstrcmp.c wchar.c \
+ conutil.c error.c exit.c itoa.c lower.c malloc.c openchk.c \
+ trie.c triecnt.c upper.c whitesp.c basic.h common.h \
+ dtddef.h entdef.h sparse.h trie.h chartype.h cont.h dtdext.h \
+ entext.h sref.h version.h
+
+# FIXME I think emptyfil.c and fclndir.c can be deleted?
+
+context_LDADD = libutil.a
+fclndir_LDADD = libutil.a