From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: "Stefan Monnier" Newsgroups: gmane.emacs.devel Subject: bootstrap (was: Emacs-diffs digest, Vol 1 #508 - 12 msgs) Date: Tue, 26 Mar 2002 10:31:27 -0500 Sender: emacs-devel-admin@gnu.org Message-ID: <200203261531.g2QFVRR17627@rum.cs.yale.edu> References: NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1017156813 5577 127.0.0.1 (26 Mar 2002 15:33:33 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 26 Mar 2002 15:33:33 +0000 (UTC) Cc: Stefan Monnier , emacs-devel@gnu.org Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 16psx3-0001Rq-00 for ; Tue, 26 Mar 2002 16:33:33 +0100 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 16pt5a-0006Pc-00 for ; Tue, 26 Mar 2002 16:42:22 +0100 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 16pswp-0000o4-00; Tue, 26 Mar 2002 10:33:19 -0500 Original-Received: from rum.cs.yale.edu ([128.36.229.169]) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 16psv4-0008E1-00 for ; Tue, 26 Mar 2002 10:31:30 -0500 Original-Received: (from monnier@localhost) by rum.cs.yale.edu (8.11.6/8.11.6) id g2QFVRR17627; Tue, 26 Mar 2002 10:31:27 -0500 X-Mailer: exmh version 2.4 06/23/2000 with nmh-1.0.4 Original-To: Eli Zaretskii Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.5 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:2218 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:2218 > I think we should do something to avoid the warning in the bootstrap > case, then. Users who don't know these details might become spooked by > the warning, especially if they were used to get a fatal error with the > same language before. An alternative is to just do (if ...bootstrapping... (setq purify-flag nil)) at the beginning of loadup.el. > > PS: I almost got bootstrapping to work without a `bootstrap-emacs' > > executable (by byte-compiling with `temacs' instead) > > but hit a problem where `temacs -batch' freezes in call-process: > > the problem is that the SIGCHLD handler is not installed in that > > case (probably because it might introduce problems when we dump). > > Yes, I think that's the reason why signals aren't caught. > > > As for why `call-process' is called: vc.el does > > (eval-when-compile (require 'ediff-util)) and ediff-util.el > > ends up loading all the ediff*.el files (also from within > > `eval-when-compile' clauses) and ediff-ptch.el runs patch with a few > > different args to determine the default value of a config variable. > > We could prevent this by binding some special variables during bootstrap, no? As I said I'd rather have less bootstrap-specific code than more, so it doesn't sound like an attractive solution. Other solutions are: - create `eval-only-when-compile' since the (require 'ediff-util) is only done to get rid of some compiler warnings (it doesn't provide any macros used by vc.el as far as I can tell). - check !noninteractive||initialized in call-process and return nil without running any program otherwise (since the SIGCHLD handler is not installed). - check !noninteractive||initialized in call-process and install the SIGCHLD handler if the check fails. Obviously the first solution is the only one that's really non-bootstrap-specific. Stefan _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://mail.gnu.org/mailman/listinfo/emacs-devel