[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
emacs-27 6bf22c9 2/2: Codesign the executable on recene MacOS systems
From: |
Philipp Stephani |
Subject: |
emacs-27 6bf22c9 2/2: Codesign the executable on recene MacOS systems |
Date: |
Wed, 23 Dec 2020 11:32:58 -0500 (EST) |
branch: emacs-27
commit 6bf22c933df642f20969b17036f8da784276f588
Author: Itai Seggev <is+apple@cs.hmc.edu>
Commit: Philipp Stephani <phst@google.com>
Codesign the executable on recene MacOS systems
* src/Makefile.in (temacs$(EXEEXT)): Codesign the executable on
recent (ARM) MacOS systems (bug#43878). Without this, building
Emacs fails.
Copyright-paperwork-exempt: yes
---
src/Makefile.in | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/Makefile.in b/src/Makefile.in
index ab63b92..cfd322a 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -337,6 +337,10 @@ DUMPING=@DUMPING@
CHECK_STRUCTS = @CHECK_STRUCTS@
HAVE_PDUMPER = @HAVE_PDUMPER@
+## ARM Macs require that all code have a valid signature. Since pump
+## invalidates the signature, we must re-sign to fix it.
+DO_CODESIGN=$(patsubst aarch64-apple-darwin%,yes,@configuration@)
+
# 'make' verbosity.
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
@@ -653,6 +657,9 @@ temacs$(EXEEXT): $(LIBXMENU) $(ALLOBJS) $(LIBEGNU_ARCHIVE)
$(EMACSRES) \
$(ALLOBJS) $(LIBEGNU_ARCHIVE) $(W32_RES_LINK) $(LIBES)
ifeq ($(HAVE_PDUMPER),yes)
$(AM_V_at)$(MAKE_PDUMPER_FINGERPRINT) $@.tmp
+ifeq ($(DO_CODESIGN),yes)
+ codesign -s - -f $@.tmp
+endif
endif
$(AM_V_at)mv $@.tmp $@
$(MKDIR_P) $(etc)