automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Removing dependencies


From: Raja R Harinath
Subject: Re: Removing dependencies
Date: Fri, 04 Apr 2003 18:17:03 -0600
User-agent: Gnus/5.090018 (Oort Gnus v0.18) Emacs/21.3.50 (gnu/linux)

Bill Moseley <address@hidden> 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 ------------------------------ address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]