1
0
mirror of https://github.com/SerenityOS/serenity synced 2024-07-09 02:30:46 +00:00
serenity/Meta/lint-executable-resources.sh
thislooksfun 3e32acc3e4 Meta: Add special case for macOS
macOS's `find` does not support the '-executable' flag, nor does it
support the '-perm /' syntax, but we can make it work with a special
case.
2021-11-02 12:23:30 +01:00

22 lines
634 B
Bash
Executable File

#!/usr/bin/env bash
set -eo pipefail
script_path=$(cd -P -- "$(dirname -- "$0")" && pwd -P)
cd "$script_path/.."
if [ "$(uname -s)" = "Darwin" ]; then
# MacOS's find does not support '-executable' OR '-perm /mode'.
BAD_FILES=$(find Base/etc/ Base/res/ Base/www/ -type f -perm +111)
else
BAD_FILES=$(find Base/etc/ Base/res/ Base/www/ -type f -executable)
fi
if [ -n "${BAD_FILES}" ]
then
echo "These files are marked as executable, but are in directories that do not commonly"
echo "contain executables. Please double-check the permissions of these files:"
echo "${BAD_FILES}" | xargs ls -ld
exit 1
fi