From nobody@FreeBSD.org  Wed Dec 13 22:19:09 2000
Return-Path: <nobody@FreeBSD.org>
Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21])
	by hub.freebsd.org (Postfix) with ESMTP id 5D57E37B400
	for <freebsd-gnats-submit@FreeBSD.org>; Wed, 13 Dec 2000 22:19:09 -0800 (PST)
Received: (from nobody@localhost)
	by freefall.freebsd.org (8.11.1/8.11.1) id eBE6J9728197;
	Wed, 13 Dec 2000 22:19:09 -0800 (PST)
	(envelope-from nobody)
Message-Id: <200012140619.eBE6J9728197@freefall.freebsd.org>
Date: Wed, 13 Dec 2000 22:19:09 -0800 (PST)
From: jonathan@graehl.org
Sender: nobody@FreeBSD.org
To: freebsd-gnats-submit@FreeBSD.org
Subject: make installworld from nfs mounted /usr/src and /usr/obj requires write access
X-Send-Pr-Version: www-1.0

>Number:         23539
>Category:       misc
>Synopsis:       make installworld from nfs mounted /usr/src and /usr/obj requires write access
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    marcel
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Dec 13 22:20:03 PST 2000
>Closed-Date:    Sat Feb 14 09:38:30 PST 2004
>Last-Modified:  Sat Feb 14 09:38:30 PST 2004
>Originator:     Jonathan Graehl
>Release:        4.2-STABLE
>Organization:
Jagoo
>Environment:
FreeBSD proxy.celltrans.net. 4.2-STABLE FreeBSD 4.2-STABLE #0: Wed Dec 13 20:57:24 PST 2000     root@proxy.celltrans.net.:/usr/obj/usr/src/sys/JAGOO  i386
>Description:
make installworld attempts to rm -rf libsdbm.a in perl in, i believe, the /usr/obj directory.
>How-To-Repeat:
on master:
make buildworld and in /etc/export
/usr/src /usr/obj -ro -mapall=nobody

on slave:
mount master:/usr/src /usr/src
mount master:/usr/obj /usr/obj
cd /usr/src
make installworld
>Fix:
kluge:
In master /etc/export
/usr/src /usr/obj -maproot=0:0 slave_machine_address

real fix:
change the separation of buildworld/installworld so that buildworld performs ALL writes necessary to the /usr/src and /usr/obj tree, and installworld performs ONLY reads from /usr/src and /usr/obj.  perhaps don't attempt to delete built objects; instead, modify makefiles so unwanted objects are never built




>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->marcel 
Responsible-Changed-By: johan 
Responsible-Changed-When: Fri Dec 15 10:51:02 PST 2000 
Responsible-Changed-Why:  
Marcel, as our Makefile.inc1 guru can you please have a look at this. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=23539 

From: Marcel Moolenaar <marcel@cup.hp.com>
To: freebsd-gnats-submit@FreeBSD.org, jonathan@graehl.org
Cc:  
Subject: Re: misc/23539: make installworld from nfs mounted /usr/src and /usr/obj 
 requires write access
Date: Fri, 15 Dec 2000 14:48:15 -0500

 Perl is a real PITA. Our current mentality WRT perl is that if it
 (cross-) builds, we're happy. Trying to have perl conform to our build
 process proved to be 1) impossible or 2) painful.
 
 The question we ask ourselves is: Do we want to take perl sources from
 the vendor branch (ie muck with /usr/src/contrib/perl5) or do we solve
 problems in our makefiles (ie muck with /usr/src/gnu/usr.bin/perl).
 
 What we probably need at this time is someone who is willing to put in
 the effort to get perl to conform to our standards in such a way that
 has the least impact on maintainability and upgradability and is willing
 to maintain it. I don't think we're going to see progress until that
 happens...
 
 -- 
 Marcel Moolenaar
   mail: marcel@cup.hp.com / marcel@FreeBSD.org
   tel:  (408) 447-4222
 

From: "Jonathan Graehl" <jonathan@graehl.org>
To: <marcel@cup.hp.com>, <freebsd-gnats-submit@FreeBSD.org>
Cc:  
Subject: RE: misc/23539: make installworld from nfs mounted /usr/src and /usr/obj  requires write access
Date: Fri, 15 Dec 2000 17:40:38 -0800

 I don't have any familiarity with the FreeBSD (or Perl) build structure,
 but I'd suggest moving the write-access portion of the perl build into
 make buildworld from installworld
 
 But what you're telling me is that perl's install target requires write
 access, and the solution is either to restructure Perl into the BSD make
 system, or write a hack in buildworld to modify the Perl makefile to
 avoid the failing rm command, or at least make its failure non-fatal?
 
 -Jon
 
 > -----Original Message-----
 > From: marcel@cup.hp.com [mailto:marcel@cup.hp.com]
 > Sent: Friday, December 15, 2000 11:48 AM
 > To: freebsd-gnats-submit@FreeBSD.org; jonathan@graehl.org
 > Subject: Re: misc/23539: make installworld from nfs mounted
 > /usr/src and
 > /usr/obj requires write access
 >
 >
 > Perl is a real PITA. Our current mentality WRT perl is that if it
 > (cross-) builds, we're happy. Trying to have perl conform to our build
 > process proved to be 1) impossible or 2) painful.
 >
 > The question we ask ourselves is: Do we want to take perl sources from
 > the vendor branch (ie muck with /usr/src/contrib/perl5) or do we solve
 > problems in our makefiles (ie muck with /usr/src/gnu/usr.bin/perl).
 >
 > What we probably need at this time is someone who is willing to put in
 > the effort to get perl to conform to our standards in such a way that
 > has the least impact on maintainability and upgradability and
 > is willing
 > to maintain it. I don't think we're going to see progress until that
 > happens...
 >
 > --
 > Marcel Moolenaar
 >   mail: marcel@cup.hp.com / marcel@FreeBSD.org
 >   tel:  (408) 447-4222
 >
 
 

From: Marcel Moolenaar <marcel@cup.hp.com>
To: Jonathan Graehl <jonathan@graehl.org>
Cc: freebsd-gnats-submit@FreeBSD.org
Subject: Re: misc/23539: make installworld from nfs mounted /usr/src and 
 /usr/obj  requires write access
Date: Fri, 15 Dec 2000 22:00:56 -0800

 Jonathan Graehl wrote:
 > 
 > I don't have any familiarity with the FreeBSD (or Perl) build structure,
 > but I'd suggest moving the write-access portion of the perl build into
 > make buildworld from installworld
 
 If it only was that simply :-)
 
 > But what you're telling me is that perl's install target requires write
 > access, and the solution is either to restructure Perl into the BSD make
 > system, or write a hack in buildworld to modify the Perl makefile to
 > avoid the failing rm command, or at least make its failure non-fatal?
 
 Yes, something along those lines.
 
 I leave the PR open so that I someday (hopefully not in the too-distant
 future) muck with Perl. There's already an issue I have to solve with
 Perl. While there, I might as well fix this PR...
 
 -- 
 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: Sat Feb 14 09:36:53 PST 2004 
State-Changed-Why:  
This was fixed a while ago. Installs with a RO /usr/src and /usr/obj 
are possible for RELENG_4 and later versions. 

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