emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Yet another bootstrap failure: Required feature `esh-groups' was not


From: Alan Mackenzie
Subject: Re: Yet another bootstrap failure: Required feature `esh-groups' was not provided
Date: Fri, 6 Jun 2008 20:35:41 +0000
User-agent: Mutt/1.5.9i

'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'

<rant>
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 <params>; 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.
</rant>

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).




reply via email to

[Prev in Thread] Current Thread [Next in Thread]