Subject: Re: bsd.dep.mk problem: mkdep vs. -nostdinc++
To: Thomas Klausner <wiz@netbsd.org>
From: Todd Vierling <tv@pobox.com>
List: tech-toolchain
Date: 05/28/2003 22:48:02
On Wed, 28 May 2003, Thomas Klausner wrote:

: > Huh?  Why is this running autoconf's configure *and* running NetBSD's
: > ${MKDEP} (aka "nbhost-mkdep")!?  In src/tools, you do a "configure"-based
: > compile and a "make" on the generated tree, OR a BSD-Makefile compile, but
: > not both on the same program.
:
: No clue.
: It seems to be intended, since usr.bin/Makefile has host-mkdep as first SUBDIR
: and a .WAIT before compat.

Um, no, I was talking about running nbhost-mkdep in groff.  It shouldn't be
running nbhost-mkdep in src/tools/groff at all if groff is using GNU
makefiles.

There's two "standard" ways to build a tool in src/tools:

1. Use <bsd.hostprog.mk>.

2. Use an isolated configure and build system (such as GNU autoconf and GNU
   style makefiles).

However, ISTR that groff uses a bizarre mix of autoconf and BSD makefiles,
so this might be part of the problem.  What happens here is that MKDEP is
set to nbhost-mkdep for the purpose of dependencies on host programs, but
groff must be using standard <bsd.dep.mk> (possibly via <bsd.prog.mk>,
instead of <bsd.hostprog.mk>)?

I had recurrent trouble with similar issues (funky make recursion in
src/tools/groff) before leaving TNF.  Both thorpej and lukem have done some
fiddling work in there, and may have more insight into the groff makefile
structure than I.

-- 
-- Todd Vierling <tv@pobox.com>