NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: toolchain/49276: amd64 MKDEBUG builds randomly fail installing compat libraries



The following reply was made to PR toolchain/49276; it has been noted by GNATS.

From: David Holland <dholland-bugs%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: toolchain/49276: amd64 MKDEBUG builds randomly fail installing
 compat libraries
Date: Wed, 15 Oct 2014 06:11:23 +0000

 On Tue, Oct 14, 2014 at 07:55:00PM +0000, Christos Zoulas wrote:
  >  Or we can try to split the build process into two separate make commands?
 
 What I did the last time I was laying out OS makefiles:
 
  - the recursive rule for a full build is "build" (not "all", which
 retains its traditional meaning);
 
  - there's a separate set of "stage-install" rules that hardlink or copy
 into $DESTDIR; the "install" target goes straight to the ultimate
 destination tree;
 
  - build is defined like this by default:
 
     # dependall means depend then compile, but it's important to run a
     # new make after depending so the new depends take effect.
     dependall-local: depend-local
 	    $(MAKE) all-local
     dependall: dependall-local
 
     # build means depend, compile, and stage-install; it also needs a
     # new make after depending. It could use the same one for compile
     # and stage-install, but that turns out to be awkward.
     build-local: dependall-local
 	    $(MAKE) stage-install-local
     build: build-local
 
 (-local means 'not in subdirs')
 
 
 This is probably not as parallelizable as one might wish, but it does
 AFAICT have the redeeming feature that it works, which the netbsd
 scheme doesn't quite always.
 
 -- 
 David A. Holland
 dholland%netbsd.org@localhost
 


Home | Main Index | Thread Index | Old Index