#!/bin/zsh set -euo pipefail project_dir="${0:A:h}" app_dir="$project_dir/.build/Razer Tilt Mapper.app" mkdir -p "$app_dir/Contents/MacOS" # Swift's precompiled modules embed absolute paths; do not reuse them after a move. module_cache=$(/usr/bin/mktemp -d "$project_dir/.build/module-cache.XXXXXX") trap '/bin/rm -rf -- "$module_cache"' EXIT /usr/bin/swiftc -O -module-cache-path "$module_cache" \ "$project_dir/razer-tilt.swift" -o "$app_dir/Contents/MacOS/RazerTiltMapper" /bin/cp "$project_dir/Info.plist" "$app_dir/Contents/Info.plist" /usr/bin/plutil -lint "$app_dir/Contents/Info.plist" /usr/bin/codesign --force --sign - --identifier local.razer-tilt "$app_dir" /usr/bin/codesign --verify --strict "$app_dir" print "Built: $app_dir"