From owner-freebsd-doc@FreeBSD.ORG Fri Nov 3 02:42:01 2006 Return-Path: X-Original-To: freebsd-doc@FreeBSD.org Delivered-To: freebsd-doc@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8356316A415; Fri, 3 Nov 2006 02:42:01 +0000 (UTC) (envelope-from trhodes@FreeBSD.org) Received: from pittgoth.com (ns1.pittgoth.com [216.38.206.188]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1220843D4C; Fri, 3 Nov 2006 02:42:00 +0000 (GMT) (envelope-from trhodes@FreeBSD.org) Received: from localhost (net-ix.gw.ai.net [205.134.160.6] (may be forged)) (authenticated bits=0) by pittgoth.com (8.13.6/8.13.6) with ESMTP id kA32fw8J030934 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 2 Nov 2006 21:41:59 -0500 (EST) (envelope-from trhodes@FreeBSD.org) Date: Thu, 2 Nov 2006 21:41:51 -0500 From: Tom Rhodes To: "Bruce A. Mah" Message-Id: <20061102214151.273c4ef8.trhodes@FreeBSD.org> In-Reply-To: <454A9A72.4050005@freebsd.org> References: <454A9A72.4050005@freebsd.org> Organization: The FreeBSD Project X-Mailer: Sylpheed version 1.0.6 (GTK+ 1.2.10; i386-portbld-freebsd7.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: freebsd-doc@FreeBSD.org Subject: Re: Install docs oddity X-BeenThere: freebsd-doc@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Documentation project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Nov 2006 02:42:01 -0000 On Thu, 02 Nov 2006 17:25:06 -0800 "Bruce A. Mah" wrote: > This is a weird problem I ran into today. Basically I was trying to do > a "make install" from the top of the doc tree and it seemed to be taking > a *really* long time. When I looked at the output from make, it seemed > to be iterating multiple times over the tree. > > To see the problem, chdir to the top of a checked-out doc/ tree (I'm on > RELENG_6 if that's relevant) and do: > > % make -n install > > If you look at the commands that would get executed, it looks like we > recurse twice into each of the language subdirectories...first we hit > every subdirectory with some commands like this: > > echo "===> en_US.ISO8859-1" > cd /usr/doc/en_US.ISO8859-1 && make install DIRPRFX=en_US.ISO8859-1/ > > Then we do a big loop over all of the subdirectories like this: > > for entry in en_US.ISO8859-1 bn_BD.ISO10646-1 da_DK.ISO8859-1 > de_DE.ISO8859-1 el_GR.ISO8859-7 es_ES.ISO8859-1 fr_FR.ISO8859-1 > it_IT.ISO8859-15 ja_JP.eucJP nl_NL.ISO8859-1 pl_PL.ISO8859-2 > pt_BR.ISO8859-1 ru_RU.KOI8-R sr_YU.ISO8859-2 tr_TR.ISO8859-9 > zh_CN.GB2312 zh_TW.Big5; do if test -d /usr/doc/${entry}.i386; then > echo "===> ${entry}.i386 (install)"; edir=${entry}.i386; cd > /usr/doc/${edir}; else echo "===> $entry (install)"; edir=${entry}; > cd /usr/doc/${edir}; fi; make install DIRPRFX=$edir/; done > > If make insists on iterating over each directory of the tree twice every > time it gets to it, then with our three-level doc tree hierarchy, the > files for every document get installed to the target directory eight > times. :-( > > The first set of commands above is defined by the _SUBDIRUSE target in > doc.subdir.mk. The loop is defined in bsd.subdir.mk, which gets > included by doc.subdir.mk via bsd.obj.mk. > > The attached patch removes the iteration over subdirectories in > doc.subdir.mk and just relies on bsd.subdir.mk to handle subdirectories. > This seems to produce better behavior but I'm not sure if it's correct. > Any comments? I can't find a patch in this email. :( But I do think a lot of our build needs re-written, the problem is where to start and what do we want to accomplish. -- Tom Rhodes