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
This commit is contained in:
rcombs 2022-05-24 22:46:55 -05:00
parent c534d9f72a
commit bb6d9a0f32
1 changed files with 1 additions and 0 deletions

View File

@ -121,6 +121,7 @@ $(PROGS): %$(PROGSSUF)$(EXESUF): %$(PROGSSUF)_g$(EXESUF)
ifeq ($(STRIPTYPE),direct)
$(STRIP) -o $@ $<
else
$(RM) $@
$(CP) $< $@
$(STRIP) $@
endif