emacs-devel
[Top][All Lists]
Advanced

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

Re: Can't build previous versions of Emacs?


From: Alan Mackenzie
Subject: Re: Can't build previous versions of Emacs?
Date: Thu, 14 Jul 2022 19:02:04 +0000

Hello, Ulrich.

On Thu, Jul 14, 2022 at 19:07:53 +0200, Ulrich Mueller wrote:
> >>>>> On Thu, 14 Jul 2022, Eric Abrahamsen wrote:

> > Po Lu <luangruo@yahoo.com> writes:
> >> Eric Abrahamsen <eric@ericabrahamsen.net> writes:

> >>> Hi all,

> >>> I have the Emacs 25, 26 and 27 branches checked out in git worktrees,
> >>> and I was going to build them to test some backwards compatibility. On a
> >>> clean checkout, "make" failed for all three of them with this error:

> >>> sysdep.c:1795:22: error: variably modified ‘sigsegv_stack’ at file scope
> >>> 1795 | static unsigned char sigsegv_stack[SIGSTKSZ];
> >>> |                      ^~~~~~~~~~~~~
> >>> make[2]: *** [Makefile:377: sysdep.o] Error 1
> >>> make[2]: Leaving directory '/home/eric/dev/emacs-26/src'
> >>> make[1]: *** [Makefile:421: src] Error 2
> >>> make[1]: Leaving directory '/home/eric/dev/emacs-26'
> >>> make: *** [Makefile:1107: bootstrap] Error 2

> >>> This is on Arch Linux, I can send the config.status file for any of the
> >>> branches if that would help.

> >> That's expected.  glibc recently changed in that SIGSTKSZ is now a call
> >> to a function.  Emacs wasn't modified to be compatible with that until
> >> 28.1.

> > Thanks! That's good to know.

> You can find patches for the SIGSTKSZ issue here:
> https://gitweb.gentoo.org/proj/emacs-patches.git/tree/emacs

> For example, for Emacs 27.2:
> https://gitweb.gentoo.org/proj/emacs-patches.git/tree/emacs/27.2/02_all_glibc-2.34.patch

Brilliant!

For somebody who's got lots of branches to amend, the following (or
something like it) might come in handy.  Test it first before using it in
earnest!

find . -name sysdep.c | xargs sed -i~ 
's/sigsegv_stack\[SIGSTKSZ\]/sigsegv_stack[32768]/'

I just fixed 26 copies of Emacs, both in /usr/local/src and my repository
structure.

-- 
Alan Mackenzie (Nuremberg, Germany).



reply via email to

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