xemu/scripts/entitlement.sh
John Arbuckle 3983a767e3 Set icon for QEMU binary on Mac OS
Before switching the build system over to Meson, an icon was
added to the QEMU binary on Mac OS. This patch adds back that
feature; it piggybacks on the existing scripts/entitlement.sh,
which already does in-place changes to the executable on Darwin.

Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
Message-Id: <20210705195328.36442-1-programmingkidx@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-07-06 09:35:08 +02:00

34 lines
566 B
Bash
Executable File

#!/bin/sh -e
#
# Helper script for the build process to apply entitlements
in_place=:
if [ "$1" = --install ]; then
shift
in_place=false
fi
SRC="$1"
DST="$2"
ENTITLEMENT="$3"
ICON="$4"
if $in_place; then
trap 'rm "$DST.tmp"' exit
cp -af "$SRC" "$DST.tmp"
SRC="$DST.tmp"
else
cd "$MESON_INSTALL_DESTDIR_PREFIX"
fi
if test "$ENTITLEMENT" != '/dev/null'; then
codesign --entitlements "$ENTITLEMENT" --force -s - "$SRC"
fi
# Add the QEMU icon to the binary on Mac OS
Rez -append "$ICON" -o "$SRC"
SetFile -a C "$SRC"
mv -f "$SRC" "$DST"
trap '' exit