Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Aug 2005 21:55:58 -0700
From:      "Kevin Oberman" <oberman@es.net>
To:        Stefan Farfeleder <stefan@fafoe.narf.at>
Cc:        current@freebsd.org
Subject:   Re: buildworld not using proper build environment 
Message-ID:  <20050822045558.DF4855D07@ptavv.es.net>
In-Reply-To: Your message of "Sun, 21 Aug 2005 09:16:42 %2B0200." <20050821071640.GB85488@wombat.fafoe.narf.at> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Date: Sun, 21 Aug 2005 09:16:42 +0200
> From: Stefan Farfeleder <stefan@fafoe.narf.at>
> 
> On Sat, Aug 20, 2005 at 09:20:32PM -0700, Kevin Oberman wrote:
> > I'm not a make(1) expert, but something appears wrong with Makefile.inc1
> > and the build environment it provides for buildworld.
> > 
> > There has been a short thread on this with the subject:
> > Unable to build libedit
> > 
> > It turns out that buildworld is using the header files in /usr/include
> > and not those in /usr/obj/usr/src/tmp/usr/include when compiling. I've
> > looked at Makefile.inc1 and it looks like the proper environment is
> > made for AMD64, but perhaps not for other platforms (like i386). I'm not
> > sure what is wrong, but I have confirmed that buildworld is using
> > /usr/include/histedit.h in lieu of the new version in $WORLDTMP.
> > 
> > Am I wrong about all of this this or is something wrong with the
> > buildworld. 
> 
> I think the problem is that the files in lib/libedit include histedit.h
> with "" instead of <>.  This works for NetBSD because they have
> histedit.h in the same directory.  -I. should be dropped from CFLAGS
> probably too.  I once noticed a problem that #include <term.h> picks up
> the local term.h instead of the one in [..]/tmp/usr/include.

Dropping -I. breaks 'make depend', so that's not a good way to go. I
fails to find a LOT of stuff.

I really thought that the <histedit.h> would fix it, but it does not
help. I edited all occurrences of "histedit.h" to <histedit.h>, but
.depend still shows that the files in /usr/obj/usr/src/tmp are used. And
those files are used for everything. All header files listed in .depend
are in /usr/includeand none are in /usr/obj/usr/src/tmp/include.

I then looked at several other .depend files and I don't find any
indication that the new header files are ever used. 

Is my system somehow broken? I have completely removed /usr/obj and done
a fresh cvsup. I don't seem to find any stale files and would not expect
to on a system that was a fresh install three weeks ago. I'd just love
to find where in the makefiles the include environment is set to pull
header files from the build tree instead of the existing system.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman@es.net			Phone: +1 510 486-8634



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050822045558.DF4855D07>