On Mon, Jan 31, 2011 at 10:34:25PM +0000, David Holland wrote: >> -static char curdir[MAXPATHLEN + 1]; /* startup directory */ >> +char curdir[MAXPATHLEN + 1]; /* startup directory */ >> [...] >> - Var_Set(".PARSEDIR", ".", VAR_GLOBAL, 0); >> + extern char curdir[]; >> + Var_Set(".PARSEDIR", curdir, VAR_GLOBAL, 0); > > Please don't make messes like that; if you really need to extern it > put it in one of the header files. > > However, as I recall it ought to work ok to do > > Var_Set(".PARSEDIR", "$(.CURDIR)", VAR_GLOBAL, 0); > > instead. > > However, this still isn't a correct fix as it doesn't take care of the > case when e.g. including ../Makefile.inc.
Furthermore, before going around hacking make, please come up with an isolated test case where make does the wrong thing. So far I can't find one. -- David A. Holland dholl...@netbsd.org