[ds6-devel] _PATH_BSHELL broken?
Chris Leishman
chris at leishman.org
Tue Jan 21 15:21:07 CET 2003
On Tuesday, January 21, 2003, at 03:08 PM, Mauro Tortonesi wrote:
<snip>
> misc.c:129: `_PATH_DEVNULL' undeclared (first use in this function)
> misc.c:129: (Each undeclared identifier is reported only once
> misc.c:129: for each function it appears in.)
> misc.c:183: `_PATH_BSHELL' undeclared (first use in this function)
> make[2]: *** [misc.o] Error 1
> make[2]: Leaving directory `/home/mauro/code/cvs/nc6/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/mauro/code/cvs/nc6'
> make: *** [all] Error 2
>
> this should be due to the fact that the macros in config/paths.m4 do
> not
> define _PATH_DEVNULL and _PATH_BSHELL in config.h.
Ok...more info required - because this just shouldn't happen.
First off, the HEADER_PATHS macro checks for the existence of the
'paths.h' header, and sets HAVE_PATHS_H if it finds it.
The paths.h header, on many systems, defines _PATH_BSHELL and
_PATH_DEVNULL as appropriate. However, to compensate for the headers
that don't have paths.h or it doesn't contain these, the PATH_BSHELL
and PATH_DEVNULL macros do the following:
- Call HEADER_PATHS if it hasn't already been called (uses AC_REQUIRE).
This means that HEADER_PATHS doesn't need to be specifically mentioned
in configure.ac.
- If the paths.h header is available (HEADER_PATHS set
ds6_have_paths_h=yes), then it looks for the definition of _PATH_BSHELL
in the header file.
- If it doesn't find it, then it searches for an appropriate
replacement (/bin/sh) and calls AC_DEFINE_UNQUOTED to add this to the
config.h file. If it can't find a replacement, then AC_MSG_ERROR is
called.
So if this is working properly there should be no way that _PATH_BSHELL
isn't defined in either paths.h or config.h and configure still
succeeds.
Can you check the configure output? Perhaps send me the config.log if
you want?
Regards,
Chris
More information about the ds6-devel
mailing list