Skip Menu |
 

Subject: aclocal.m4 should use AC_CONFIG_FILES
In autoconf 2.52 and up, the use of AC_OUTPUT with a list of
files is deprecated by the use of AC_CONFIG_FILES.

In order to use this, we need to do away with the for loop
in K5_GEN_MAKEFILE code - as it confuses the AC_CONFIG_FILES - it
only allows one to specify a file one time.

The added benefit, is that eventually, we will be able to
do something like "./config.status lib/Makefile" and have it
generate the proper Makefile.

I have a simple patch that replaces AC_OUTPUT by AC_CONFIG_FILES that
works. The only problem is that for the code to generate a single Makefile,
krb5_pre_in and krb5_post_in cannot be shell variables and must be
expanded when the configure script is made. I am working on this now.

Initially - this change reduces the size of configure by 20-40K depending
on the number of subdirs having Makefiles output.
From: epeisach@mit.edu
Subject: CVS Commit
Use AC_CONFIG_FILES for each Makefile generated instead of passing
list of files to AC_OUTPUT.

Also, only generate an individual Makefile when invoking config.status


To generate a diff of this commit:



cvs diff -r5.371 -r5.372 krb5/src/ChangeLog
cvs diff -r1.234 -r1.235 krb5/src/aclocal.m4
cvs diff -r5.164 -r5.165 krb5/src/config/ChangeLog
cvs diff -r1.39 -r1.40 krb5/src/config/post.in
From: epeisach@mit.edu
Subject: CVS Commit
Put back in the V5_OUTPUT_MAKEFILE. Revert the config.status invocation
until this code can be rewriten to use AC_CONFIG_FILES.


To generate a diff of this commit:



cvs diff -r5.372 -r5.373 krb5/src/ChangeLog
cvs diff -r1.235 -r1.236 krb5/src/aclocal.m4
cvs diff -r5.165 -r5.166 krb5/src/config/ChangeLog
cvs diff -r1.40 -r1.41 krb5/src/config/post.in
To: rt@krbdev.mit.edu
Cc: krb5-prs@MIT.EDU
Subject: Re: [krbdev.mit.edu #1188] aclocal.m4 should use AC_CONFIG_FILES
From: Ken Raeburn <raeburn@MIT.EDU>
Date: Thu, 19 Sep 2002 18:35:52 -0400
RT-Send-Cc:
Download (untitled) / with headers
text/plain 1.4KiB

Ezra writes:

Show quoted text
> The added benefit, is that eventually, we will be able to
> do something like "./config.status lib/Makefile" and have it
> generate the proper Makefile.

Looks like a win. Much better than trying to get the right collection
of environment variables to feed to config.status.

Show quoted text
> The only problem is that for the code to generate a single Makefile,
> krb5_pre_in and krb5_post_in cannot be shell variables and must be
> expanded when the configure script is made. I am working on this now.

Here's an idea I've been mulling over recently:

- Use AC_SUBST_FILE and @foo@ markers in Makefile.in to insert
lib.in and libobj.in. (Is the ordering of definitions relative to
post.in still going to be okay?)

- Move the configure-substituted definitions from lib.in and
libobj.in into pre.in or post.in.

I believe that, if we do those, the pre- and post-fragments specified
by the configure script then become constant -- they'd always be
pre.in and post.in and nothing else.

It would also eliminate one of the obstacles to further combining some
of the configure scripts so we can reduce their number, which is why I
was thinking about it in the first place.

I don't know how difficult your current change is going to be, but if
it's a lot of work, you could consider this as an alternative.

Show quoted text
> Initially - this change reduces the size of configure by 20-40K depending
> on the number of subdirs having Makefiles output.

Nice!
To: rt-comment@krbdev.mit.edu
Cc: krb5-prs@MIT.EDU
Subject: Re: [krbdev.mit.edu #1188] aclocal.m4 should use AC_CONFIG_FILES
Date: Fri, 20 Sep 2002 10:02:00 -0400
From: Ezra Peisach <epeisach@MIT.EDU>
RT-Send-Cc:
AC_SUBST_FILE does look appealing. My changes were initially only going
to affect aclocal.m4 and config/post.in.

I will finish my work in my fashion - and will examine the use
of AC_SUBST_FILE - can one guarantee that the order of inclusion of files.
I also believe substitutions will not be made to the included files
(which would be nice). It would mean that we might need to generate
config/pre.in with all the substitutions - and then the rest of the files.
I guess this could be considered phase II.

Ezra
From: epeisach@mit.edu
Subject: CVS Commit
* Makefile.in (mydir): Add missing mydir lines.


To generate a diff of this commit:



cvs diff -r5.36 -r5.37 krb5/src/tests/ChangeLog
cvs diff -r5.19 -r5.20 krb5/src/tests/Makefile.in
From: epeisach@mit.edu
Subject: CVS Commit
Makefile.in, configure.in, aclocal.m4: Use AC_CONFIG_FILES instead of
arguments to AC_OUTPUT. This allows for generation of a single Makefile.

config/post.in: When regenerating Makefiles, invoke config.status with
only the Makefile to generate.

This completes the changes.


To generate a diff of this commit:



cvs diff -r5.374 -r5.375 krb5/src/ChangeLog
cvs diff -r1.122 -r1.123 krb5/src/Makefile.in
cvs diff -r1.237 -r1.238 krb5/src/aclocal.m4
cvs diff -r1.68 -r1.69 krb5/src/configure.in
cvs diff -r5.167 -r5.168 krb5/src/config/ChangeLog
cvs diff -r1.41 -r1.42 krb5/src/config/post.in