* Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
@ 2015-06-06 14:22 Alan Mackenzie
2015-06-06 15:00 ` Eli Zaretskii
2015-06-06 15:05 ` Andreas Schwab
0 siblings, 2 replies; 8+ messages in thread
From: Alan Mackenzie @ 2015-06-06 14:22 UTC (permalink / raw)
To: emacs-devel
Hello, Emacs.
Recently, I've had to rebuild some older Emacsen because libraries they
depend on have been updated. An example is Emacs 23.1. I'm running on
an up to date GNU system (Gentoo, to be precise).
I reconfigured this (with ./configure --with-gpm --without-tiff
--without-gif), then attempted to build it (with make -j5, or make -j5
bootstrap).
This instantly bails out with a make error in .../lib-src:
make[1]: Entering directory '/usr/local/src/emacs-23.1/lib-src'
Makefile:144: *** recipe commences before first target. Stop.
make[1]: Leaving directory '/usr/local/src/emacs-23.1/lib-src'
Looking around L144 of .../lib-src/Makefile, I see this:
# ========================== start of cpp stuff =======================
LIBS_MOVE=$(KRB4LIB) $(DESLIB) $(KRB5LIB) $(CRYPTOLIB) $(COM_ERRLIB)
$(HESIODLIB)
LOADLIBES=
ALL_CFLAGS = -D_BSD_SOURCE -DHAVE_CONFIG_H
<tab..> -I. -I../src -I${srcdir} -I${srcdir}/../src ${LDFLAGS} <--- 144
${CPPFLAGS} ${CFLAGS}
. There is a <tab> at the beginning of L144 fouling up the Makefile.
Somehow it seems that recent versions of the configuration toolchain
(whatever that means) are incompatible with older configure scripts.
23.1 was before we had autogen.h in the top directory.
Would somebody familiar with the configuration process please help me
understand what's happening here, so that I can fix it. Thanks!
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-06 14:22 Difficulty building older Emacsen: <tab> characters seemingly fouling things up Alan Mackenzie
@ 2015-06-06 15:00 ` Eli Zaretskii
2015-06-06 15:06 ` Eli Zaretskii
2015-06-06 15:05 ` Andreas Schwab
1 sibling, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2015-06-06 15:00 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
> Date: Sat, 6 Jun 2015 14:22:04 +0000
> From: Alan Mackenzie <acm@muc.de>
>
> Recently, I've had to rebuild some older Emacsen because libraries they
> depend on have been updated. An example is Emacs 23.1. I'm running on
> an up to date GNU system (Gentoo, to be precise).
>
> I reconfigured this (with ./configure --with-gpm --without-tiff
> --without-gif), then attempted to build it (with make -j5, or make -j5
> bootstrap).
>
> This instantly bails out with a make error in .../lib-src:
>
> make[1]: Entering directory '/usr/local/src/emacs-23.1/lib-src'
> Makefile:144: *** recipe commences before first target. Stop.
> make[1]: Leaving directory '/usr/local/src/emacs-23.1/lib-src'
>
>
> Looking around L144 of .../lib-src/Makefile, I see this:
>
> # ========================== start of cpp stuff =======================
> LIBS_MOVE=$(KRB4LIB) $(DESLIB) $(KRB5LIB) $(CRYPTOLIB) $(COM_ERRLIB)
> $(HESIODLIB)
> LOADLIBES=
> ALL_CFLAGS = -D_BSD_SOURCE -DHAVE_CONFIG_H
> <tab..> -I. -I../src -I${srcdir} -I${srcdir}/../src ${LDFLAGS} <--- 144
> ${CPPFLAGS} ${CFLAGS}
>
> . There is a <tab> at the beginning of L144 fouling up the Makefile.
>
> Somehow it seems that recent versions of the configuration toolchain
> (whatever that means) are incompatible with older configure scripts.
> 23.1 was before we had autogen.h in the top directory.
>
> Would somebody familiar with the configuration process please help me
> understand what's happening here, so that I can fix it. Thanks!
Looks like line 143 should have had a backslash at its end, but
doesn't. Likewise, line 144 should have ended with a backslash I
don't understand how did it happen, as lib-src/Makefile.in from Emacs
23.1 have these present.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-06 14:22 Difficulty building older Emacsen: <tab> characters seemingly fouling things up Alan Mackenzie
2015-06-06 15:00 ` Eli Zaretskii
@ 2015-06-06 15:05 ` Andreas Schwab
1 sibling, 0 replies; 8+ messages in thread
From: Andreas Schwab @ 2015-06-06 15:05 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
Make sure to use gcc -E -P for CPP.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-06 15:00 ` Eli Zaretskii
@ 2015-06-06 15:06 ` Eli Zaretskii
2015-06-06 15:13 ` David Engster
0 siblings, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2015-06-06 15:06 UTC (permalink / raw)
To: acm; +Cc: emacs-devel
> Date: Sat, 06 Jun 2015 18:00:36 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: emacs-devel@gnu.org
>
> Looks like line 143 should have had a backslash at its end, but
> doesn't. Likewise, line 144 should have ended with a backslash I
> don't understand how did it happen, as lib-src/Makefile.in from Emacs
> 23.1 have these present.
I seem to remember that the behavior of cpp changed at some point, and
we needed to invoke it with the -traditional switch in order to avoid
some trouble, perhaps precisely this one. (You may remember that in
those days we used cpp to process Makefile.in files into Makefiles.)
So perhaps reconfigure with "CPP='gcc -E -traditional' or somesuch.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-06 15:06 ` Eli Zaretskii
@ 2015-06-06 15:13 ` David Engster
2015-06-14 19:22 ` Alan Mackenzie
0 siblings, 1 reply; 8+ messages in thread
From: David Engster @ 2015-06-06 15:13 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: acm, emacs-devel
Eli Zaretskii writes:
>> Date: Sat, 06 Jun 2015 18:00:36 +0300
>> From: Eli Zaretskii <eliz@gnu.org>
>> Cc: emacs-devel@gnu.org
>>
>> Looks like line 143 should have had a backslash at its end, but
>> doesn't. Likewise, line 144 should have ended with a backslash I
>> don't understand how did it happen, as lib-src/Makefile.in from Emacs
>> 23.1 have these present.
>
> I seem to remember that the behavior of cpp changed at some point, and
> we needed to invoke it with the -traditional switch in order to avoid
> some trouble, perhaps precisely this one. (You may remember that in
> those days we used cpp to process Makefile.in files into Makefiles.)
>
> So perhaps reconfigure with "CPP='gcc -E -traditional' or somesuch.
Yes, one needs this change to compile older Emacsen:
http://article.gmane.org/gmane.emacs.diffs/102980
Building older Emacsen can be quite frustrating. I think I also had
problems with linking crt1.o or somesuch when creating older Emacs
binaries for the Buildbot.
-David
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-06 15:13 ` David Engster
@ 2015-06-14 19:22 ` Alan Mackenzie
2015-06-14 21:47 ` David Engster
0 siblings, 1 reply; 8+ messages in thread
From: Alan Mackenzie @ 2015-06-14 19:22 UTC (permalink / raw)
To: David Engster; +Cc: Eli Zaretskii, emacs-devel
Hello, David.
On Sat, Jun 06, 2015 at 05:13:12PM +0200, David Engster wrote:
> Eli Zaretskii writes:
> >> Date: Sat, 06 Jun 2015 18:00:36 +0300
> >> From: Eli Zaretskii <eliz@gnu.org>
> >> Cc: emacs-devel@gnu.org
> >> Looks like line 143 should have had a backslash at its end, but
> >> doesn't. Likewise, line 144 should have ended with a backslash I
> >> don't understand how did it happen, as lib-src/Makefile.in from Emacs
> >> 23.1 have these present.
> > I seem to remember that the behavior of cpp changed at some point, and
> > we needed to invoke it with the -traditional switch in order to avoid
> > some trouble, perhaps precisely this one. (You may remember that in
> > those days we used cpp to process Makefile.in files into Makefiles.)
> > So perhaps reconfigure with "CPP='gcc -E -traditional' or somesuch.
> Yes, one needs this change to compile older Emacsen:
> http://article.gmane.org/gmane.emacs.diffs/102980
Thanks, that tip was very useful indeed.
> Building older Emacsen can be quite frustrating. I think I also had
> problems with linking crt1.o or somesuch when creating older Emacs
> binaries for the Buildbot.
I've managed successfully to rebuild 22.1, 22.2, 22.3, 23.2, 23.3,
and 24.2. The more recent versions were OK anyway.
I failed on 23.1 (which can't find the external symbol
'XRenderQueryExtension'), on 23.4 (which builds OK, but freezes with 100%
CPU at startup), on 24.1 (some problem with `gets' in md5.c).
> -David
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-14 19:22 ` Alan Mackenzie
@ 2015-06-14 21:47 ` David Engster
2015-06-16 17:46 ` Alan Mackenzie
0 siblings, 1 reply; 8+ messages in thread
From: David Engster @ 2015-06-14 21:47 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: Eli Zaretskii, emacs-devel
Alan Mackenzie writes:
>> Building older Emacsen can be quite frustrating. I think I also had
>> problems with linking crt1.o or somesuch when creating older Emacs
>> binaries for the Buildbot.
>
> I've managed successfully to rebuild 22.1, 22.2, 22.3, 23.2, 23.3,
> and 24.2. The more recent versions were OK anyway.
On what system are you compiling?
> 23.4 (which builds OK, but freezes with 100% CPU at startup)
I dimly remember that one - newer libglib made Emacs 23 freeze on
startup. See for instance
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=666714
If you really care for Emacs 23.4, then I guess you could try patching
xgselect.c (I guess b05725233b might do the trick). I simply installed
the Debian 7 emacs23 package, which happens to be 23.4. :-)
-David
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Difficulty building older Emacsen: <tab> characters seemingly fouling things up.
2015-06-14 21:47 ` David Engster
@ 2015-06-16 17:46 ` Alan Mackenzie
0 siblings, 0 replies; 8+ messages in thread
From: Alan Mackenzie @ 2015-06-16 17:46 UTC (permalink / raw)
To: David Engster; +Cc: emacs-devel
Hello, David.
On Sun, Jun 14, 2015 at 11:47:20PM +0200, David Engster wrote:
> Alan Mackenzie writes:
> >> Building older Emacsen can be quite frustrating. I think I also had
> >> problems with linking crt1.o or somesuch when creating older Emacs
> >> binaries for the Buildbot.
> >
> > I've managed successfully to rebuild 22.1, 22.2, 22.3, 23.2, 23.3,
> > and 24.2. The more recent versions were OK anyway.
> On what system are you compiling?
> > 23.4 (which builds OK, but freezes with 100% CPU at startup)
> I dimly remember that one - newer libglib made Emacs 23 freeze on
> startup. See for instance
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=666714
It's good to know that it wasn't me making a mistake.
> If you really care for Emacs 23.4, then I guess you could try patching
> xgselect.c (I guess b05725233b might do the trick). I simply installed
> the Debian 7 emacs23 package, which happens to be 23.4. :-)
Thanks. I think I've got enough working versions (for testing) now, so
I'll forget about 23.4, unless I specifically need it for something.
> -David
--
Alan Mackenzie (Nuremberg, Germany).
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2015-06-16 17:46 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-06 14:22 Difficulty building older Emacsen: <tab> characters seemingly fouling things up Alan Mackenzie
2015-06-06 15:00 ` Eli Zaretskii
2015-06-06 15:06 ` Eli Zaretskii
2015-06-06 15:13 ` David Engster
2015-06-14 19:22 ` Alan Mackenzie
2015-06-14 21:47 ` David Engster
2015-06-16 17:46 ` Alan Mackenzie
2015-06-06 15:05 ` Andreas Schwab
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).