From bb6d9a0f326c3ba8ddbba28fdf9ca70759db99aa Mon Sep 17 00:00:00 2001 From: rcombs Date: Tue, 24 May 2022 22:46:55 -0500 Subject: [PATCH] Makefile: avoid cp-ing over existing executable files On macOS, code-signing information for executables (including those signed automatically by the linker) is cached by the system on a per-inode basis. The cp(1) tool will truncate and overwrite an existing file if present, so we need to delete it first to avoid strange crashes. See https://developer.apple.com/documentation/security/updating_mac_software --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index f38b521765..35365f09d4 100644 --- a/Makefile +++ b/Makefile @@ -121,6 +121,7 @@ $(PROGS): %$(PROGSSUF)$(EXESUF): %$(PROGSSUF)_g$(EXESUF) ifeq ($(STRIPTYPE),direct) $(STRIP) -o $@ $< else + $(RM) $@ $(CP) $< $@ $(STRIP) $@ endif