GNU bug report logs -
#43878
emacs fails to build on recent macOS 11.0 ARM betas
Previous Next
Reported by: Itai Seggev <is <at> cs.hmc.edu>
Date: Fri, 9 Oct 2020 07:30:01 UTC
Severity: important
Tags: fixed
Merged with 44774
Found in version 27.1
Fixed in version 28.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
In the last few betas of macOS on ARM, Apple has start enforcing a requirement
that all code be properly signed. The linker automatically adds an "ad-hoc"
signature. (At least for now, this is not required on x86_64, though I imagine
it is only a matter of time given Apple's public statements on code signing.)
The emacs build fails when the temacs is called to compile the Lisp files.
I've tracked this down to the call to make-fingerprint on temacs.tmp. The call
modifies the Macho-O temacs.tmp after it was linked and signed, invaldinating
the code signature. When it is launched, it is killed with a SIGABORT by the
OS due to the invalid signature.
I've come up with a couple of workarounds in my local build. First, if I
modifiy make-fingerprint to not store the result in the Mach-O, then everything
seems to build fine. It's not entirely clear to me what the purpose of this
modification of the Macho-O is, so I don't know if such a solution is
acceptable upstream.
If it is not, then the signature _must_ be repaired after make-fingerprint is
run. This can be done quite simply, using 'codesign -s - -f temacs.tmp', which
creates a new "ad-hoc" signature for the executable.
If necessary, I am happy to test a patch / branch on my machine.
--
Itai
In 1997 a group of programmers started writing a desktop environment to fix a
travesty they didn't create. Their program promptly found its way onto un*x
systems everywhere. Today, still opposed by a software monopolist, they survive
as soldiers of fortune. If you share their vision, if you know you can help,
and if you can connect to internet, maybe you can join... the K-Team.
This bug report was last modified 4 years and 180 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.