Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1422678AbWBOEJT (ORCPT ); Tue, 14 Feb 2006 23:09:19 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1422682AbWBOEJT (ORCPT ); Tue, 14 Feb 2006 23:09:19 -0500 Received: from kanga.kvack.org ([66.96.29.28]:44981 "EHLO kanga.kvack.org") by vger.kernel.org with ESMTP id S1422678AbWBOEJS (ORCPT ); Tue, 14 Feb 2006 23:09:18 -0500 Date: Tue, 14 Feb 2006 23:04:33 -0500 From: Benjamin LaHaise To: akpm@osdl.org Cc: Linux Kernel Mailing List Subject: Re: kbuild: fix make -jN with multiple targets with O=... Message-ID: <20060215040433.GA17334@kvack.org> References: <200601170510.k0H5AtSJ005682@hera.kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200601170510.k0H5AtSJ005682@hera.kernel.org> User-Agent: Mutt/1.4.1i Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1807 Lines: 51 Hello folks, This patch causes a ~95% increase in build time for the kernel. Before: 4m21s after: 8m1.403s. Can we revert this until another approach is found? -ben On Mon, Jan 16, 2006 at 09:10:55PM -0800, Linux Kernel Mailing List wrote: tree b918bb866edc339d51b2b71176265f6d424600e7 parent 60f33b80443a3e7e79e2a3ddc625ab6246a61d3d author Sam Ravnborg Sun, 15 Jan 2006 20:02:31 +0100 committer Sam Ravnborg Sun, 15 Jan 2006 20:02:31 +0100 kbuild: fix make -jN with multiple targets with O=... The way multiple targets was handled with make O=... broke because for each high-level target make spawned a parallel make resulting in a broken build. Reported by Keith Owens Signed-off-by: Sam Ravnborg Makefile | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index deedaf7..b3dd9db 100644 --- a/Makefile +++ b/Makefile @@ -106,12 +106,13 @@ KBUILD_OUTPUT := $(shell cd $(KBUILD_OUT $(if $(KBUILD_OUTPUT),, \ $(error output directory "$(saved-output)" does not exist)) -.PHONY: $(MAKECMDGOALS) +.PHONY: $(MAKECMDGOALS) cdbuilddir +$(MAKECMDGOALS) _all: cdbuilddir -$(filter-out _all,$(MAKECMDGOALS)) _all: +cdbuilddir: $(if $(KBUILD_VERBOSE:1=),@)$(MAKE) -C $(KBUILD_OUTPUT) \ KBUILD_SRC=$(CURDIR) \ - KBUILD_EXTMOD="$(KBUILD_EXTMOD)" -f $(CURDIR)/Makefile $@ + KBUILD_EXTMOD="$(KBUILD_EXTMOD)" -f $(CURDIR)/Makefile $(MAKECMDGOALS) # Leave processing to above invocation of make skip-makefile := 1 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/