Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
building: fix executable-bit preservation for collected shell scripts
Add special handling for data files with executable bit set (such as shell scripts). In `COLLECT` and `BUNDLE`, we now set mode `0755` if typecode matches the one for binary type OR if the source file has an executable bit set. In `PKG`, we manually force the PKG typecode for DATA entries to `b` ("binary") if source file has an executable bit set.
- Loading branch information
Showing
3 changed files
with
23 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
(Linux, macOS) When extracting files from ``onefile`` archive, the | ||
executable bit is now set only on binaries (files whose TOC type code | ||
was either ``BINARY``, ``EXECUTABLE``, or ``EXTENSION``). Therefore, | ||
binaries are now extracted with permissions bits set to ``0700``, while | ||
all other files have permissions bits set to ``0600``. | ||
was either ``BINARY``, ``EXECUTABLE``, or ``EXTENSION``) or data files | ||
that originally had the executable bit set. Therefore, binaries are now | ||
extracted with permissions bits set to ``0700``, while all other files | ||
have permissions bits set to ``0600``. |