From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: extraclean and admin/grammars [was Re: Git master head build failure?] Date: Thu, 01 Apr 2021 13:15:56 -0400 Message-ID: References: <875z16en2o.fsf@gmail.com> <83mtuih3en.fsf@gnu.org> <835z16gnkj.fsf@gnu.org> <83y2e2f22w.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11145"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Eli Zaretskii , theophilusx@gmail.com, emacs-devel@gnu.org To: Glenn Morris Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Apr 01 19:21:07 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lS10E-0002nn-Qe for ged-emacs-devel@m.gmane-mx.org; Thu, 01 Apr 2021 19:21:06 +0200 Original-Received: from localhost ([::1]:43818 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lS10D-0006Zp-RU for ged-emacs-devel@m.gmane-mx.org; Thu, 01 Apr 2021 13:21:05 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:46244) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lS0vR-0003Ze-I8 for emacs-devel@gnu.org; Thu, 01 Apr 2021 13:16:16 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:62964) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lS0vK-0004Ld-Ql; Thu, 01 Apr 2021 13:16:08 -0400 Original-Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 5EE774409E6; Thu, 1 Apr 2021 13:15:59 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id C490D440835; Thu, 1 Apr 2021 13:15:57 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1617297357; bh=byfOvzrchccuveYrlHDJVyFC7vRiED5LabqO8YpBfpo=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=faNhX5XEGhgbDb6q+Cy4rP2roMxjqvLcfduOSktQxH63T3he21OyfhUShdNUStFrE joUUSoLzTxNrGa0LqqddbG0n0bxjJ3UZm7mcega8/A8/hTYe0pT5bcS4xZ8hFsgO/X Q1bAJJyCYKyaQ30EwWNGQiQ4cDDBBpeKLOW/q9ZvhV4H8f6lSkZbsGq1twAHdi0fw+ VREojaL7HkTcUHFU9F7SnlLv0j561wwOv8VVw8fV1bfvuL7TgdJmZNWfjz5AZ1q8IS vtlVeWffaM1jx0Myd4XzPS9asr979WXF9BoDUvfLscJD0F/rm5emGuL80Ywfi9WQVf dDeS/tGf6ALyw== Original-Received: from alfajor (104-222-126-84.cpe.teksavvy.com [104.222.126.84]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id E16F212018D; Thu, 1 Apr 2021 13:15:56 -0400 (EDT) In-Reply-To: (Glenn Morris's message of "Thu, 01 Apr 2021 12:05:25 -0400") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:267270 Archived-At: > Emacs use of extraclean is really an abuse - see comments in the > top-level Makefile. IIRC, the only differences between extraclean > and bootstrap-clean are: >From a theoretical standpoint, I think `bootstrap-clean` should delete the files that are both: A) generated. B) not faithfully described by the makefile dependencies. In practice, very few of our generated files have 100% of their dependencies faithfully described in our makefiles, so the theory needs to be taken with a large grain of salt. Others less theoretical and more pragmatic factors that can be important are C) used during the generation of other files. D) changes frequently. (C) can be important because it can cause not just errors down the line when using the corresponding functionality, but also errors during the build itself. > 1) bootstrap-clean does not delete the generated leim files. > This is because they are slow to rebuild and the sources rarely change. AFAIK these don't satisfy B very much, (nor C nor D) so I don't see much need to delete them in `bootstrap-clean`, indeed. > 2) bootstrap-clean does not delete the generated semantic grammars. > These are not slow to rebuild. As my comment in > admin/grammars/Makefile.in says, these could easily be deleted in > bootstrap-clean. I don't even really remember why I did it that > way now. I think for those we could also improve the makefile dependencies. E.g. a first step could be to move `grammar-wy.el` to `grm-wy-boot.el` like we do with `ldefs-boot.el` (see patch below) to break the circular dependency. WDYT? Stefan