[1522] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

Re: comments about use of autoconf

daemon@ATHENA.MIT.EDU (Theodore Ts'o)
Wed Jul 5 17:06:22 1995

Date: Wed, 5 Jul 1995 17:06:16 +0500
From: Theodore Ts'o <tytso@MIT.EDU>
To: "E. Jay Berkenbilt" <ejb@ERA.COM>
Cc: krb5-bugs@MIT.EDU
In-Reply-To: [1512]

   Date: Wed, 5 Jul 1995 10:43:49 -0400
   From: "E. Jay Berkenbilt" <ejb@ERA.COM>

   I do have one comment, however: have autoconf generate a header file
   rather than a bunch of -DSYM=val strings for the makefiles.  I
   suggest calling the file krb5-autoconf.h or krb5/autoconf.h (or
   something in keeping with whatever file naming conventions are in
   place for portability reasons) but not calling it something like
   config.h that will conflict with other things.  This file should be
   installed.

We are currently moving away from doing this.  There is a autoconf
generated header file which is used to build the libraries, but we don't
want this to be part of the exported library interface, which means it
can't be included in krb5.h.

There are a couple of reasons for this.  One is that autoconf.h is
extremely compiler and include file specific, and what works for one
compiler won't work for another.  A really good example of this is what
happens if you're using gcc versus some native C compiler.  Secondly,
the autoconf names are bad for namespace purity, and one of the thing
which we are currently working towards is to make it such that krb5.h
only defines symbols that begin with certain well-defined prefixes
(mostly krb5).

There are a few autoconf-defined symbols which krb5.h requires (such as
the size of an int), and which in the next release will be included into
krb5.h via sed (krb5.h is now a constructed file).  We're trying to keep
such symbol usages to a minimum, though.

						- Ted

home help back first fref pref prev next nref lref last post