automake-patches
[Top][All Lists]
Advanced

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

Re: configure dependencies, and version.texi dependencies (PR/358).


From: Akim Demaille
Subject: Re: configure dependencies, and version.texi dependencies (PR/358).
Date: 08 Oct 2002 09:05:26 +0200
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.4 (Honest Recruiter)

| PR/358 suggests to have version.texi dependent on configure
| instead of configure.ac, in case the package's version isn't
| defined in configure.ac.

Arg, right.

| In PR/358, the version is defined by sourcing ./VERSION.  Using
| today's architecture this isn't a very good idea, because shell
| variables can't be traced.  
|
| I'd like to promote the use m4_include/m4_define for this
| purpose.  As in the test case below.

I would be more restrictive: I would clear state that that's the only
way to do it.

| If `configure.ac' includes `version.m4', then we should have a
| dependency between `configure' and `version.m4'.  Presently this
| can be specified using the undocumented (?!)
| CONFIGURE_DEPENDENCIES Makefile variable; however I think we
| should fill these dependencies automatically.  This patch does that
| by tracing m4_include and m4_sinclude.
| 
| Question is... is it correct?  I think it is, but I'd like
| other opinions.  Especially, note that we'll also see files
| included by aclocal.m4.  Akim, does this fits your plan wrt aclocal?

Yes, it does.  It seems very correct to me but for one thing: what of
includes *outside* the package?  People can do that (of course, it's
wrong), and worse yet: BSD M4 does not have frozen files, so they
parse autoconf.m4, not autoconf.m4f, so your include pattern will also
get all the autoconf.m4 files.  You can see that pleying with -i in
autoconf:

~/src/ace % autoconf -i -t m4_include:'$1'                        nostromo 9:05
m4sugar/version.m4
autoconf/autoupdate.m4
autoconf/autoscan.m4
autoconf/general.m4
autoconf/status.m4
autoconf/autoheader.m4
autoconf/autotest.m4
autoconf/programs.m4
autoconf/lang.m4
autoconf/c.m4
autoconf/fortran.m4
autoconf/functions.m4
autoconf/headers.m4
autoconf/types.m4
autoconf/libs.m4
autoconf/specific.m4
autoconf/oldnames.m4




reply via email to

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