From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: Re: Yet another bootstrap failure: Required feature `esh-groups' was not provided Date: Fri, 6 Jun 2008 20:35:41 +0000 Message-ID: <20080606203541.GA1741@muc.de> References: <20080606155915.GA3953@muc.de> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1212783257 26443 80.91.229.12 (6 Jun 2008 20:14:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 6 Jun 2008 20:14:17 +0000 (UTC) Cc: emacs-devel@gnu.org To: Glenn Morris Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Jun 06 22:14:59 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1K4iKk-0007Lw-M0 for ged-emacs-devel@m.gmane.org; Fri, 06 Jun 2008 22:14:46 +0200 Original-Received: from localhost ([127.0.0.1]:42340 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K4iJx-0001qz-M2 for ged-emacs-devel@m.gmane.org; Fri, 06 Jun 2008 16:13:57 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K4iJs-0001qH-OM for emacs-devel@gnu.org; Fri, 06 Jun 2008 16:13:52 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K4iJq-0001q4-Mw for emacs-devel@gnu.org; Fri, 06 Jun 2008 16:13:51 -0400 Original-Received: from [199.232.76.173] (port=60673 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K4iJq-0001q1-Hs for emacs-devel@gnu.org; Fri, 06 Jun 2008 16:13:50 -0400 Original-Received: from colin.muc.de ([193.149.48.1]:3656 helo=mail.muc.de) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1K4iJq-0004Yf-6G for emacs-devel@gnu.org; Fri, 06 Jun 2008 16:13:50 -0400 Original-Received: (qmail 81852 invoked by uid 3782); 6 Jun 2008 20:13:47 -0000 Original-Received: from acm.muc.de (pD9E535B3.dip.t-dialin.net [217.229.53.179]) by colin2.muc.de (tmda-ofmipd) with ESMTP; Fri, 06 Jun 2008 22:13:45 +0200 Original-Received: (qmail 11847 invoked by uid 1000); 6 Jun 2008 20:35:41 -0000 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.9i X-Delivery-Agent: TMDA/1.1.5 (Fettercairn) X-Primary-Address: acm@muc.de X-detected-kernel: by monty-python.gnu.org: FreeBSD 4.6-4.9 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:98540 Archived-At: 'Evening, Glenn! On Fri, Jun 06, 2008 at 01:22:09PM -0400, Glenn Morris wrote: > Alan Mackenzie wrote: > > eshell/em-alias.el:96:1:Error: Required feature `esh-groups' was not provided > [...] > > Am I doing something wrong? > Yes. Please read INSTALL.CVS, or search the list archives. Did that over 5 years ago. It says: Therefore, to build from CVS you must run "make bootstrap" instead of just "make": $ ./configure $ make bootstrap The bootstrap process makes sure all necessary files are rebuilt before it builds the final Emacs binary. ALL NECESSARY FILES is what it says. Oops, my mistake, that's the Emacs 22 version of INSTALL.CVS. NO, it is NOT my mistake. It's an incompatible change, and the person who made that change should be strung up, even if that person is you, Glenn. ;-) It's a gratuitous, unnecessary, incompatible change, since the documented meaning of "make bootstrap", i.e. "rebuild everything needed" could quite easily have been kept. Would it be possible to bring back that meaning? > (make autogen-clean; make autoloads _may_ help you in this case) Thanks, but it didn't. :-( The makefile couldn't find the target autogen-clean. So I followed the instructions in the new INSTALL.CVS and first did % make maintainer-clean; ./configure .... ; make bootstrap. This failed as follows: make[3]: *** No rule to make target `/home/acm/emacs/emacs/lisp/nxml/nxml-enc.elc', needed by `compile-main'. Stop. make[3]: Leaving directory `/home/acm/emacs/emacs/lisp' Our makefile system is broken. The whole point of the make utility is to build software automatically, so that hackers don't need to waste their time messing with arcane minutiae. Is it really to much to expect to be able to type % ./configure ; make some-target and have the software build (modulo errors in the files.{c,el}? > > This constant brokenness of the CVS head saps infinite energy from me. > The constant reporting of the same non-bugs saps my energy (but > fortunately not an "infinite" amount). Forgive my sarcasm, but am I supposed to read through (or diff) the entire Emacs process documentation every time I update Emacs, just in case some crazed lunatic, er sorry, I mean some conscientious hacker, has "enhanced" it? If a "non-bug" is reported often enough by enough people, then it is an actual bug; it's a UI bug, or a documentation bug, or a process bug, or whatever, but it's unmistakably a bug. Just as a matter of interest, in the last few months on emacs-devel there have been approximately these numbers of threads complaining about Emacs CVS not building: May: 7 April: 9 March: 9 February: 2 Whatever the reason, this is a horrendous time sink. Failure to build the CVS head should essentially _never_ happen - possibly once or twice a year at most. Our process is badly broken. Recently, I proposed installing a tool on savannah which would trigger a test build every time source files were committed. The proposal didn't meet with much enthusiasm. > > There was some talk a while ago of commissions triggering an automatic > > build. This would be nice. > It wouldn't help all the people who persist in building Emacs by a > shortcut, then getting confused when it breaks. Since when has "./configure; make bootstrap" been a shortcut? (That's both a rhetorical and a real question.) -- Alan Mackenzie (Nuremberg, Germany).