Re: Docs and builds



On Sun, 2004-06-27 at 16:32 -0700, Ray Simard wrote:
> Hello! New to the list.
> 
> First, a note: When I tried to search the archives for something
> on this, the url http://mail.gnome.org/mailman/search?query= (etc)
> comes up 404. Perhaps someone could look into that. Anyway, if this
> happens to be a regular topic on this list, I apologize for raising it
> again; but I can't get to the archives.
> 
> My question is this: In the CVS sources for a number of packages,
> there is a rather arcane setup that seems to be intended to prevent
> the building and installation of the docs portion of the package. In these
> cases, in configure.in, there's this (more on this subject to follow):
> 
> ===============================
> # Dummy conditional just to make automake-1.4 happy.
> # We need an always-false condition in docs/Makefile.am.
> AM_CONDITIONAL(LIBGNOMEMM_FALSE,[false])
> ===============================
> 
> Which applies to docs/Makefile.am:
> ===============================
> ## This voodoo stuff lets automake see the subdirs
> ## without including them into recursive builds.
> if LIBGNOMEMM_FALSE
> SUBDIRS = reference
> endif
> DIST_SUBDIRS = reference
> ===============================
> 
> I'm wondering why such effort is invested in preventing the building of docs.
> 
> Some packages, for example gtkmm, install (excellent!) documentation; but their
> makefiles have hand-coded rules and a rather complex arrangement that provides for
> uploads which are not needed here.

This is all *mm-specific stuff, so it really belongs on the gtkmm or
gnomemm mailing lists.

These particular build rules are meant to stop the documentation from
rebuilding when you build from a source tarball. We distribute the built
sources instead.

If you could describe the actual problem that you are having then maybe
we can help you to solve it.

> Two things about this:
> 
> If I change the [false] to [true] the docs get built, but not installed. I'm not sure
> how to get the auto tools to make that happen as well.
> 
> However...
> 
> With the automake that I'm using (1.8), the above doesn't work at all. From some
> experimenting I've seen indications that the presence of the string "FALSE" in
> the condition name prevents automake from creating the variable-substitution code
> for the name. In the Makefile that autoconf creates, there is, in this case:
> 
> @LIBGNOMEMM_FALSE SUBDIRS = reference
> 
> By changing the name of the condition to LIBGNOMEMM_FALZE (just to get rid of "FALSE"),
> @LIBGNOMEMM_FALZE@ becomes either a hash mark (#) when the second parameter to
> AM_CONDITIONAL is a shell command that returns false, and an empty string if the
> command returns true; so in the case of false, the code in the if/endif block
> is effectively commented out, and not in the case of true.
> 
> Still, after fixing that, as mentioned above, setting true causes docs to be built but
> not installed. Is there a straightforward way to get the autotools to make that happen,
> in particular, to recurse whatever subdirectories are listed and install whatever is there,
> or does that have to be set up explicitly in the Makefile.am? (or something else altogether?)






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