1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
#!/bin/bash
set -eu
case $(git status --porcelain --untracked-files=no) in
"") ;;
*) echo "ERROR: Current working copy has been modified - not proceeding"; exit 2;;
esac
mkdir -p packages
echo
. deploy/metadata.sh
if [ -d /Applications ]; then
archs="x86_64 arm64"
qtdir_x86_64="/Users/cannam/Qt/6.7.2/macos"
qtdir_arm64="$qtdir_x86_64"
echo "Proceed to rebuild, package, and sign version $version of $full_name using:"
for arch in $archs; do
case "$arch" in
x86_64) qtdir="$qtdir_x86_64";;
arm64) qtdir="$qtdir_arm64";;
*) echo "(internal error, unknown arch)"; exit 1;;
esac
echo "-> for arch $arch: Qt dir $qtdir"
if [ ! -d "$qtdir" ]; then
echo "*** ERROR: Qt dir $qtdir does not exist"
exit 1
fi
qmake=$qtdir/bin/qmake
if [ ! -f "$qmake" ]; then
echo "*** ERROR: qmake not found in $qmake (for Qt dir $qtdir)"
exit 1
fi
if ! lipo -archs "$qmake" | grep -q "$arch"; then
echo "*** ERROR: wrong arch $qmake_arch for qmake $qmake (expected $arch)"
exit 1
fi
done
echo -n "[Yn] ? "
read yn
case "$yn" in "") ;; [Yy]) ;; *) exit 3;; esac
echo "Proceeding"
./repoint install
builddirs=""
for arch in $archs; do
case "$arch" in
x86_64) qtdir="$qtdir_x86_64";;
arm64) qtdir="$qtdir_arm64";;
esac
builddir="build-$arch"
rm -rf "$builddir"
PATH="$qtdir/bin:$PATH" arch -$arch meson setup "$builddir" --cross-file=deploy/cross/macos-$arch.txt --buildtype release -Db_lto=true
ninja -C "$builddir"
builddirs="$builddirs $builddir"
done
rm -rf "$full_app"
rm -rf "$full_versioned"
rm -f "$full_dmg"
deploy/macos/deploy-and-package.sh $builddirs
mv "$full_dmg" packages/
else
echo -n "Proceed to rebuild and package version $version [Yn] ? "
read yn
case "$yn" in "") ;; [Yy]) ;; *) exit 3;; esac
echo "Proceeding"
current=$(git rev-parse --short HEAD)
./deploy/linux/build-and-test-appimage.sh
squashedversion=$(echo "$version" | sed 's/_-//g')
mv deploy/linux/docker/output/SonicVisualiser-"$current"-x86_64.AppImage \
packages/SonicVisualiser-"$squashedversion"-x86_64.AppImage
./deploy/linux/build-and-test-deb.sh
mv deploy/linux/docker/output/sonic-visualiser_"$literalversion"_amd64.deb \
packages/
fi
echo "Done"
|