all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* make maintainer-clean invokes gcc.  It shouldn't, surely?
@ 2008-07-30 13:20 Alan Mackenzie
  2008-07-30 13:41 ` Juanma Barranquero
  2008-07-30 22:29 ` Dan Nicolaescu
  0 siblings, 2 replies; 3+ messages in thread
From: Alan Mackenzie @ 2008-07-30 13:20 UTC (permalink / raw)
  To: emacs-devel

Hi, Emacs, 

I'm going mad.  I'm going round and round in circles in update hell.

I couldn't build Emacs last night or this morning, so in the end I
copied my entire emacs directory to somewhere new, and did 

   % make maintainer-clean

on it.  Guess what?  Somehow, it calls gcc in an attempt to compile
.../src/Makefile.c

make maintainer-clean is meant just to delete everything apart from the
raw source.  So how does it go about this?  rm -rf *.o *.elc ......???

<sarcasm>
Oh no!  make is far too sophisticated for something so vulgar.  No, the
proper way is to recursively invoke make on all the sub Makefiles,
obfuscating it with arguments like $(MFLAGS).  This has the advantage of
not being able to see what's going on.
</sarcasm>

Well, the ..../src/Makefile is also too sophisticated to do vulgar rm
-rf, so it therefore needs to compile Makefile.c.  In fact, it's trying
to compile Makefile.c in my original directory emacs, not the copy
emacs-300708.

What is the rock bottom clear-out-the-dross target doing invoking the
compiler on a file in a different directory tree?  Most of the times I
do a cvs update, I spend 5 to 10 hours trying to debug the make process.
Our make system is broken.  Either that, or I have descended into
lunacy.   

    find . -name Makefile | xargs wc

gives 13 files with these totals:

    4505 lines  17519 words  161027 bytes.

Would somebody like to convince me that Emacs's build complexity is
worth 4.5k lines of makefile, even given that a lot of them are
comments?  Emacs is NOT THAT COMPLICATED to build.

If anybody feels like helping me after this bad-tempered rant, please
help me.  What am I doing wrong?  How do I clear all built files out of
a directory tree?  How do I build Emacs?

-- 
Alan Mackenzie (Nuremberg, Germany).




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: make maintainer-clean invokes gcc. It shouldn't, surely?
  2008-07-30 13:20 make maintainer-clean invokes gcc. It shouldn't, surely? Alan Mackenzie
@ 2008-07-30 13:41 ` Juanma Barranquero
  2008-07-30 22:29 ` Dan Nicolaescu
  1 sibling, 0 replies; 3+ messages in thread
From: Juanma Barranquero @ 2008-07-30 13:41 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: emacs-devel

On Wed, Jul 30, 2008 at 15:20, Alan Mackenzie <acm@muc.de> wrote:

> How do I clear all built files out of
> a directory tree?

http://lists.gnu.org/archive/html/emacs-devel/2008-06/msg00495.html

  Juanma




^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: make maintainer-clean invokes gcc.  It shouldn't, surely?
  2008-07-30 13:20 make maintainer-clean invokes gcc. It shouldn't, surely? Alan Mackenzie
  2008-07-30 13:41 ` Juanma Barranquero
@ 2008-07-30 22:29 ` Dan Nicolaescu
  1 sibling, 0 replies; 3+ messages in thread
From: Dan Nicolaescu @ 2008-07-30 22:29 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: emacs-devel

Alan Mackenzie <acm@muc.de> writes:

  > Hi, Emacs, 
  > 
  > I'm going mad.  I'm going round and round in circles in update hell.
  > 
  > I couldn't build Emacs last night or this morning, so in the end I
  > copied my entire emacs directory to somewhere new, and did 
  > 
  >    % make maintainer-clean
  > 
  > on it.  Guess what?  Somehow, it calls gcc in an attempt to compile
  > .../src/Makefile.c
  > 
  > make maintainer-clean is meant just to delete everything apart from the
  > raw source.  So how does it go about this?  rm -rf *.o *.elc ......???

I would advice you build in a separate directory.  (I always do).
mkdir /tmp/objs
cd /tmp/objs
/PATH_TO_EMACS_SOURCES/configure
make

If things go south, just remove /tmp/objs and restart.   From
time to time you might have to remove loaddefs.el or do a "make maintainer-clean",
but in general things work without hitches.




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-07-30 22:29 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-30 13:20 make maintainer-clean invokes gcc. It shouldn't, surely? Alan Mackenzie
2008-07-30 13:41 ` Juanma Barranquero
2008-07-30 22:29 ` Dan Nicolaescu

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.