[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Including sysconfdir in CPPFLAGS
From: |
Fredrik Tolf |
Subject: |
Re: Including sysconfdir in CPPFLAGS |
Date: |
Fri, 5 Dec 2003 13:52:31 +0100 |
Guido Draheim writes:
>
>
> Peter Eisentraut wrote:
> > Fredrik Tolf writes:
> >
> >
> >>How do I get the sysconfdir into a cpp macro if I use automake as
> >>well? Should I do it through a config header, or should I do it via
> >>some automake contraption? Should I just add it to CPPFLAGS? Please
> >>tell me.
> >
> >
> > The Autoconf manual tells the tale:
> >
> > A corollary is that you should not use these variables except in
> > Makefiles. For instance, instead of trying to evaluate `datadir' in
> > `configure' and hardcoding it in Makefiles using e.g.
> > `AC_DEFINE_UNQUOTED(DATADIR, "$datadir")', you should add
> > `-DDATADIR="$(datadir)"' to your `CPPFLAGS'.
> >
>
> A corollary to gnu coding standards, and a corollary with little
> impact as `make` and `make install` are still two stages. In the
> bottom line, it does not matter. - The reality however is even
> different: do not use sysconfdir in your program sources! people
> are still thinking to put config files in there but that's
> inherently wrong. If you want runtime configs, you need to do a
> lot of runtime checks and go for ${HOME} first, and some package
> specific ${MYPKGCONFIG} second, and only as a fallback go for
> a system directory. In that case, do not call it $sysconfdir but
> a make/subst MYPCKCONFIG that has a configure.ac fallback to
> ${sysconfdir}, with the effect that in all build stages the
> _specific_ path can be overridden. And that makes for the thing
> said above: do not use sysconfdir in your program sources!
Well, it is a system daemon that I'm writing on, so I think it would
be wrong to look in $HOME. Since I won't use sysconfdir in more than
one context (ie. to look for my config file), isn't sysconfdir the one
that should be used? Otherwise, where am I actually supposed to use
sysconfdir? I figure it must have some purpose.
Fredrik Tolf