mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-03-12 21:22:55 -07:00
* ci: strip fat qt binaries * parallelize * cache thin qt * print libs * change qt install dir in the action * move qt install logic to separate job * lookup only * debug: show contents of QTDIR * enableCrossOsArchive also when saving * check one dir up * change install dir * keep debugging * try deleting cache * force delete cache * pass gh_token * pass missing params * use api * change cache key, disable cross os archive * move job directly to steps * add comments * set cache param directly * address comments * fixup * Update .ci/thin_macos_qtlib.sh * resolve qt version * move resolution to separate script * use single line for run: * improve error handling in new scripts --------- Co-authored-by: ebbit1q <ebbit1q@gmail.com>
26 lines
823 B
Bash
Executable File
26 lines
823 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# The macos binaries from aqt are fat (universal), so we thin them to the target architecture to reduce the size of
|
|
# the packages and caches using lipo.
|
|
|
|
# This script is meant to be used by the ci enironment on macos runners only.
|
|
# It uses the runner's GITHUB_WORKSPACE env variable.
|
|
arch=$(uname -m)
|
|
nproc=$(sysctl -n hw.ncpu)
|
|
|
|
function thin() {
|
|
local libfile=$1
|
|
if [[ $(file -b --mime-type "$libfile") == application/x-mach-binary* ]]; then
|
|
echo "Processing $libfile"
|
|
lipo "$libfile" -thin "$arch" -output "$libfile"
|
|
fi
|
|
return 0
|
|
}
|
|
export -f thin # export to allow use in xargs
|
|
export arch
|
|
set -eo pipefail
|
|
|
|
echo "::group::Thinning Qt libraries to $arch using $nproc cores"
|
|
find "$GITHUB_WORKSPACE/Qt" -type f -print0 | xargs -0 -n1 -P"$nproc" -I{} bash -c "thin '{}'"
|
|
echo "::endgroup::"
|