From owner-freebsd-smp Fri Jun 12 19:40:28 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id TAA13247 for freebsd-smp-outgoing; Fri, 12 Jun 1998 19:40:28 -0700 (PDT) (envelope-from owner-freebsd-smp@FreeBSD.ORG) Received: from corona.jcmax.com (corona.jcmax.com [204.69.248.2]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id TAA13240 for ; Fri, 12 Jun 1998 19:40:24 -0700 (PDT) (envelope-from cr@jcmax.com) Received: by corona.jcmax.com (5.65/2.58G/4.1.3_U1) id AA17990; Fri, 12 Jun 98 22:40:22 -0400 Date: Fri, 12 Jun 98 22:40:22 -0400 From: cr@jcmax.com (Cyrus Rahman) Message-Id: <9806130240.AA17990@corona.jcmax.com> To: freebsd-smp@FreeBSD.ORG Subject: Parallel kernel builds/vnode_if.{h,c} Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I don't recall seeing any mention of this, but parallel kernel builds fail with some random chance because the files vnode_if.{c,h} get built twice, and with multiple jobs and multiple processors, frequently at the same time (so that the output of both builds is intermingled). Perhaps there is a better way of serializing the build, but the problem can be fixed by having the dependencies for each of these files instead trigger a pseudo-target, e.g.: vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src vnode_if vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src vnode_if vnode_if: sh $S/kern/vnode_if.sh $S/kern/vnode_if.src instead of what is now used: vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src sh $S/kern/vnode_if.sh $S/kern/vnode_if.src vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src sh $S/kern/vnode_if.sh $S/kern/vnode_if.src Make will then serialize the construction of the two original targets since all the work is performed through the single pseudo-target. Cyrus To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message