rename patch to patcz #6
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
on macOS, the latest release of this project (v2.7.6.3), uses the "system" patch instead of the one built https://github.com/externpro/patch/blob/v2.7.6.3/CMakeLists.txt#L45-L55
this was an attempt to get around the macOS Gatekeeper issue detailed here externpro/externpro#160 (comment)
however, the "system" patch on my development MacBook is an "older" release
and some of the exdlpro projects that "move" or "rename" or "introduce" a new file as part of the patch are failing -- an issue that I've dealt with before! smanders/externpro#295 (comment)
the solution then (and now) is to use GNU Patch >= 2.7
the unexpected behavior is that it seems executables that are part of other externpro developer packages (bzip, node to name a couple) are able to run after being extracted via externpro cmake without Gatekeeper flagging them...
so maybe something else about patch was causing it to be flagged? I wondered if macOS was like Windows (or at least the Windows behavior I saw years ago when I first started developing externpro...) and if I simply renamed patch to patcz then it wouldn't be flagged -- see https://superuser.com/questions/1720717/bash-patch-exe-permission-denied-how-to-turn-off-security-regarding-patch-i
but downloading the build artifacts from this pull on macOS still resulted in Gatekeeper stopping it from executing
./patch --versionhowever, I decided to attempt to run
./bzip --versionfrom the downloaded and extracted location just to double-check that it does, in fact, workand then I attempted the same thing for
patch --versionso, for some strange reason, if you download and extract the patch build artifacts manually, Gatekeeper will flag it... but if you download and extract the build artifacts via externpro cmake, it appears that it "just works" and Gatekeeper doesn't flag it -- without all the notarizing and code signing that I thought might be required!
I'm going to keep the rename, though, just so it's consistent on all platforms... and so
patczis uniquely named for externpro's patch project