GNU bug report logs -
#1004
23.0.60; Error visiting C files
Previous Next
Full log
Message #60 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
> Date: 25 Sep 2008 15:08:25 +0200
> From: Alan Mackenzie <acm <at> colin2.muc.de>
> Date: Thu, 25 Sep 2008 13:08:24 +0000 (UTC)
> Cc:
>
> I just noticed this one in a Usenet spool. I don't seem to be
> subscribed to bug-gnu-emacs (I thought I was) at the moment, and
> nothing got forwarded to me.
Well, how about subscribing?
> >> You need to bootstrap. See "bug" 913, 959.
>
> > I don't want to bootstrap just because a few files need to be
> > recompiled.
>
> Recompile in this order:
> (i) cc-defs.el (if necesaary); this file contains mostly macros.
> (ii) cc-langs.el (..); this contains "language variables", those whose
> values differ between C, C++, ....., AWK.
> (iii) cc-engine.el and cc-mode.el (uses macros generated in (i) and
> (ii)).
>
> > I think we should fix the dependencies in lisp/Makefile.in to do that
> > automatically.
>
> I tried to do this some while back, but got bogged down in the
> complixities of make.
I posted a patch (reproduced below), which I intend to install in a
day or two, when I have time. If you have comments about that patch,
I'm all ears.
2008-09-20 Eli Zaretskii <eliz <at> gnu.org>
* Makefile.in ($(lisp)/progmodes/cc-mode.elc): Remove.
($(lisp)/progmodes/cc-align.elc, $(lisp)/progmodes/cc-cmds.elc)
($(lisp)/progmodes/cc-compat.elc, $(lisp)/progmodes/cc-defs.elc)
($(lisp)/progmodes/cc-engine.elc)
($(lisp)/progmodes/cc-fonts.elc, $(lisp)/progmodes/cc-langs.elc)
($(lisp)/progmodes/cc-mode.elc, $(lisp)/progmodes/cc-styles.elc)
($(lisp)/progmodes/cc-subword.elc)
($(lisp)/progmodes/cc-vars.elc): New dependencies.
Index: lisp/Makefile.in
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/Makefile.in,v
retrieving revision 1.158
diff -u -r1.158 Makefile.in
--- lisp/Makefile.in 6 Sep 2008 18:22:45 -0000 1.158
+++ lisp/Makefile.in 20 Sep 2008 10:12:56 -0000
@@ -1362,15 +1362,6 @@
recompile: doit $(LOADDEFS) $(lisp)/progmodes/cc-mode.elc
$(emacs) --eval "(batch-byte-recompile-directory 0)" $(lisp)
-# CC Mode uses a compile time macro system which causes a compile time
-# dependency in cc-mode.elc on the macros in cc-langs.el and the
-# version string in cc-defs.el.
-$(lisp)/progmodes/cc-mode.elc: \
- $(lisp)/progmodes/cc-mode.el \
- $(lisp)/progmodes/cc-langs.el \
- $(lisp)/progmodes/cc-defs.el
- $(emacs) $(BYTE_COMPILE_EXTRA_FLAGS) -f batch-byte-compile $<
-
# Update MH-E internal autoloads. These are not to be confused with
# the autoloads for the MH-E entry points, which are already in loaddefs.el.
MH_E_DIR = $(lisp)/mh-e
@@ -1460,4 +1451,51 @@
$(emacs) -l $(lisp)/emacs-lisp/check-declare \
--eval '(check-declare-directory "$(lisp)")'
+# Dependencies
+
+# CC Mode uses a compile time macro system which causes a compile time
+# dependency in cc-*.elc files on the macros in other cc-*.el and the
+# version string in cc-defs.el.
+$(lisp)/progmodes/cc-align.elc $(lisp)/progmodes/cc-awk.elc\
+ $(lisp)/progmodes/cc-cmds.elc $(lisp)/progmodes/cc-compat.elc\
+ $(lisp)/progmodes/cc-engine.elc $(lisp)/progmodes/cc-fonts.elc\
+ $(lisp)/progmodes/cc-langs.elc $(lisp)/progmodes/cc-menus.elc\
+ $(lisp)/progmodes/cc-mode.elc $(lisp)/progmodes/cc-styles.elc\
+ $(lisp)/progmodes/cc-subword.elc $(lisp)/progmodes/cc-vars.elc: \
+ $(lisp)/progmodes/cc-bytecomp.elc $(lisp)/progmodes/cc-defs.elc
+
+$(lisp)/progmodes/cc-align.elc: \
+ $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc
+
+$(lisp)/progmodes/cc-cmds.elc: \
+ $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc
+
+$(lisp)/progmodes/cc-compat.elc: \
+ $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-styles.elc \
+ $(lisp)/progmodes/cc-engine.elc
+
+$(lisp)/progmodes/cc-defs.elc: $(lisp)/progmodes/cc-bytecomp.elc \
+ $(lisp)/emacs-lisp/cl.elc $(lisp)/emacs-lisp/regexp-opt.elc
+
+$(lisp)/progmodes/cc-engine.elc: $(lisp)/progmodes/cc-langs.elc \
+ $(lisp)/progmodes/cc-vars.elc
+
+$(lisp)/progmodes/cc-fonts.elc: $(lisp)/progmodes/cc-langs.elc \
+ $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc \
+ $(lisp)/font-lock.elc
+
+$(lisp)/progmodes/cc-langs.elc: $(lisp)/progmodes/cc-vars.elc \
+ $(lisp)/emacs-lisp/cl.elc
+
+$(lisp)/progmodes/cc-mode.elc: $(lisp)/progmodes/cc-langs.elc \
+ $(lisp)/progmodes/cc-vars.elc $(lisp)/progmodes/cc-engine.elc \
+ $(lisp)/progmodes/cc-styles.elc $(lisp)/progmodes/cc-cmds.elc \
+ $(lisp)/progmodes/cc-align.elc $(lisp)/progmodes/cc-menus.elc
+
+$(lisp)/progmodes/cc-styles.elc: $(lisp)/progmodes/cc-vars.elc \
+ $(lisp)/progmodes/cc-align.elc
+
+$(lisp)/progmodes/cc-subword.elc: $(lisp)/progmodes/cc-cmds.elc
+
+$(lisp)/progmodes/cc-vars.elc: $(lisp)/custom.elc $(lisp)/widget.elc
# Makefile ends here.
This bug report was last modified 16 years and 294 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.