Bill Moseley <[EMAIL PROTECTED]> writes: > I generate HTML docs from other source files. I have a single program > "build" that knows how to generate the docs. So all I need to do is > detect that any one HTML file is out of date and run "build" > > This is suppose to build the HTML docs when out of date, and install the > HTML docs. > > Here's the Makefile.am: > > html_DATA = \ > CHANGES.html \ > INSTALL.html \ > README.html \ > [...] > > image_DATA = \ > images/dotrule1.png \ > images/logo.png > > depends = \ > $(pod_dir)/CHANGES.pod \ > $(pod_dir)/INSTALL.pod \ > $(pod_dir)/README.pod \ > [...] > > all: .html-stamp
Remove this. You may need: all-local: $(html_DATA) to get these built during 'make all' rather than during 'make install'. > .html-stamp: $(version_file) $(depends) > cd $(srcdir)/../doc && bin/build > @touch $(srcdir)/.html-stamp > > EXTRA_DIST = $(html_DATA) $(image_DATA) .html-stamp > > This works fine, but if the HTML docs do not exist (such as from a CVS > checkout) then Make dies because there's no target for .html. > > make: Fatal error: Don't know how to make target `CHANGES.html' > > I tried something like: > > $(html_DATA): .html-stamp Keep this. Also, if you only support using GNU make when developing this package, you may want to use the following more useful (but untested) rule: $(html_DATA): .html-stamp if test -f $@; then :; else rm -f $<; done This'll allow you to rm CHANGES.html make and have CHANGES.html recreated. - Hari -- Raja R Harinath ------------------------------ [EMAIL PROTECTED]