From mjacob@farrago.feral.com  Mon Jan 17 11:54:46 2000
Return-Path: <mjacob@farrago.feral.com>
Received: from feral.com (feral.com [192.67.166.1])
	by hub.freebsd.org (Postfix) with ESMTP id 52F5614A2D
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 17 Jan 2000 11:54:45 -0800 (PST)
	(envelope-from mjacob@farrago.feral.com)
Received: from farrago.feral.com (farrago [192.67.166.23])
	by feral.com (8.9.3/8.9.3) with ESMTP id LAA27779
	for <FreeBSD-gnats-submit@freebsd.org>; Mon, 17 Jan 2000 11:54:44 -0800
Received: (from mjacob@localhost)
	by farrago.feral.com (8.9.3/8.9.1) id LAA08394;
	Mon, 17 Jan 2000 11:05:09 -0800 (PST)
	(envelope-from mjacob)
Message-Id: <200001171905.LAA08394@farrago.feral.com>
Date: Mon, 17 Jan 2000 11:05:09 -0800 (PST)
From: mjacob@feral.com
Sender: mjacob@farrago.feral.com
Reply-To: mjacob@freebsd.org
To: FreeBSD-gnats-submit@freebsd.org
Subject: shared /usr/src isn't  because .depend files are not shareable
X-Send-Pr-Version: 3.2

>Number:         16162
>Category:       misc
>Synopsis:       shared /usr/src isn't  because .depend files are not shareable
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    marcel
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jan 17 12:40:02 PST 2000
>Closed-Date:    Sun Jul 23 11:15:12 PDT 2000
>Last-Modified:  Sun Jul 23 11:19:23 PDT 2000
>Originator:     Matthew Jacob
>Release:        FreeBSD 4.0-CURRENT alpha
>Organization:
Feral Software
>Environment:

-current as of the last day or so.


>Description:

You can no longer share /usr/src between i386 && alpha. In fact,
I don't really see how shared source can work at all. 

The problem here is that, at least for building bootstrap tools, several
derived files that contain platform specific information end up in /usr/src-
not in OBJDIR. This leads to breakage right away because .depend's are
radically different between alpha and i386:

echo yacc: /usr/obj/usr/src/alpha/usr/lib/libc.a  >> .depend
cc -O -pipe   -I/usr/obj/usr/src/alpha/usr/include -c /usr/src/usr.bin/yacc/closure.c
cc -O -pipe   -I/usr/obj/usr/src/alpha/usr/include -c /usr/src/usr.bin/yacc/error.c
cc -O -pipe   -I/usr/obj/usr/src/alpha/usr/include -c /usr/src/usr.bin/yacc/lalr.c
cc -O -pipe   -I/usr/obj/usr/src/alpha/usr/include -c /usr/src/usr.bin/yacc/lr0.c
make: don't know how to make /usr/include/machine/trap.h. Stop
*** Error code 2

Stop in /usr/src.

>How-To-Repeat:

Share a source tree between an alpha and an i386 and try and do
a buildworld. Or share a /usr/src between to i386 machines each with
different include locations such that the .depend files would be
not compatible.

>Fix:

Put *all* derived files in OBJDIR.


>Release-Note:
>Audit-Trail:

From: Sheldon Hearn <sheldonh@uunet.co.za>
To: mjacob@FreeBSD.ORG
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: Re: misc/16162: shared /usr/src isn't because .depend files are not shareable 
Date: Wed, 19 Jan 2000 09:49:21 +0200

 On Mon, 17 Jan 2000 11:05:09 PST, mjacob@feral.com wrote:
 
 > The problem here is that, at least for building bootstrap tools,
 > several derived files that contain platform specific information end
 > up in /usr/src- not in OBJDIR. This leads to breakage right away
 > because .depend's are radically different between alpha and i386:
 
 It'd be useful to know where these files are and whether they're being
 created by the current incarnation of the build process, or whether
 they're just old cruft.
 
 Could you send ``find /usr/src -name '.depend' -print'' ? :-)
 
 Ciao,
 Sheldon.
 

From: Sheldon Hearn <sheldonh@uunet.co.za>
To: mjacob@FreeBSD.ORG
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: Re: misc/16162: shared /usr/src isn't because .depend files are not shareable 
Date: Wed, 19 Jan 2000 09:52:25 +0200

 On Wed, 19 Jan 2000 09:49:21 +0200, Sheldon Hearn wrote:
 
 > Could you send ``find /usr/src -name '.depend' -print'' ? :-)
 
 Damnit, I meant
 
 	find /usr/src -name '.depend' -ls
 
 Sorry,
 Sheldon.
 
Responsible-Changed-From-To: freebsd-bugs->marcel 
Responsible-Changed-By: msmith 
Responsible-Changed-When: Sat Jan 22 15:01:07 PST 2000 
Responsible-Changed-Why:  
Marcel is the current overseer for work on the world build. 

From: Marcel Moolenaar <marcel@cup.hp.com>
To: freebsd-gnats-submit@FreeBSD.org, mjacob@FreeBSD.org
Cc:  
Subject: Re: misc/16162: shared /usr/src isn't  because .depend files are not 
 shareable
Date: Sat, 15 Jul 2000 14:41:31 -0700

 Matthew,
 
 I can't reproduce the problem (ie can't find any .depend files in
 /usr/src). As soon as I have my Alpha I can try some "extended" testing.
 In the mean time, can you verify if you still can't share /usr/src
 between i386 and Alpha?
 
 thanks,
 
 -- 
 Marcel Moolenaar
   mail: marcel@cup.hp.com / marcel@FreeBSD.org
   tel:  (408) 447-4222
 
State-Changed-From-To: open->closed 
State-Changed-By: marcel 
State-Changed-When: Sun Jul 23 11:15:12 PDT 2000 
State-Changed-Why:  
Unreproducable and no response from originator on any of the 
followups. Having a RO /usr/src is part of the design and 
therefore will be maintained. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=16162 
>Unformatted:
