From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Andy Moreton Newsgroups: gmane.emacs.devel Subject: Re: CHECK_STRUCTS/dmpstruct.h mechanism is broken. Date: Wed, 10 Apr 2019 20:26:49 +0100 Message-ID: References: <20190228202146.GC4686@ACM> <20190228205955.GD4686@ACM> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="78422"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.92 (windows-nt) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Apr 10 21:34:38 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hEIzW-000KHR-CU for ged-emacs-devel@m.gmane.org; Wed, 10 Apr 2019 21:34:38 +0200 Original-Received: from localhost ([127.0.0.1]:36823 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hEIzV-00008v-3D for ged-emacs-devel@m.gmane.org; Wed, 10 Apr 2019 15:34:37 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:53371) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hEIuV-0004sV-9g for emacs-devel@gnu.org; Wed, 10 Apr 2019 15:29:28 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hEIsC-0003xQ-F2 for emacs-devel@gnu.org; Wed, 10 Apr 2019 15:27:06 -0400 Original-Received: from [195.159.176.226] (port=34998 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hEIsA-0003sD-ES for emacs-devel@gnu.org; Wed, 10 Apr 2019 15:27:02 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.89) (envelope-from ) id 1hEIs5-000BW6-6N for emacs-devel@gnu.org; Wed, 10 Apr 2019 21:26:57 +0200 X-Injected-Via-Gmane: http://gmane.org/ Cancel-Lock: sha1:dpQ85mSAESlhr3LzCI9UpBv/1S8= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:235247 Archived-At: On Wed 10 Apr 2019, Paul Eggert wrote: > On 4/10/19 6:12 AM, Andy Moreton wrote: >> this breaks out-of-tree builds, as make tries to use >> /path/to/emacs/admin/charsets/Makefile rather than the correct path >> /admin/charsets/Makefile: > > Sorry, my tests didn't include a complete out-of-tree bootstrap. I > installed the attached patch to fix that problem, along with the > problem's other instance. The other -C changes should be OK. You're > correct that some of the -C changes were unrelated to the original > patch. Still, they make the Makefile more consistent and I'd like to > keep the ones that work. The minimal fixes you have committed work for me for a bootstrap build from a completely clean tree (after 'git clean -Xdf'). I'm not convinced that computing filenames using GNU make functions rather than using literal values is clearer, and the makefiles include both styles, so more work is needed to achieve consistency using either approach. > PS. I'd like Emacs to switch to a nonrecursive 'make' process, as this > subsidiary $(MAKE) -C business is for the birds. We've made the switch > for other GNU projects and it's been a win. This is not a new idea; see: > > Miller P. Recursive Make considered harmful. AAUGN J of AUUG. > 1998;19(1):14-25. https://grosskurth.ca/bib/1997/miller.pdf This is a good idea, and should result in better dependency tracking and possibly faster parallel builds. Please make sure it works for in tree and out of tree builds, as both are useful. AndyM