74 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
set -eu
 | 
						|
 | 
						|
show_usage() {
 | 
						|
    echo -e "Usage: $0 <host> <branch> [config]"
 | 
						|
}
 | 
						|
 | 
						|
if [ $# -lt 1 ]
 | 
						|
then
 | 
						|
    show_usage
 | 
						|
    exit 1
 | 
						|
fi
 | 
						|
 | 
						|
SERVER_HOST=$1
 | 
						|
BRANCH=$2
 | 
						|
 | 
						|
QT_VERSION=5.7
 | 
						|
QT_REVISION=${QT_VERSION}.0
 | 
						|
QCMA_SOURCES=~/projects/qcma
 | 
						|
 | 
						|
VERSION=$(git -C "${QCMA_SOURCES}" describe --tags --abbrev=8)
 | 
						|
VERSION=${VERSION#v*}
 | 
						|
 | 
						|
if [ $# -ge 3 ]; then
 | 
						|
    CONFIG=$3
 | 
						|
else
 | 
						|
    CONFIG=
 | 
						|
fi
 | 
						|
 | 
						|
case "$CONFIG" in
 | 
						|
  *DISABLE_FFMPEG*)
 | 
						|
    BUILD_MODE=_noffmpeg
 | 
						|
    ;;
 | 
						|
  *)
 | 
						|
    BUILD_MODE=
 | 
						|
    ;;
 | 
						|
esac
 | 
						|
 | 
						|
git -C "${QCMA_SOURCES}" bundle create qcma.bundle --all
 | 
						|
scp "${QCMA_SOURCES}/qcma.bundle" $SERVER_HOST:qcma.bundle
 | 
						|
 | 
						|
ssh -T "${SERVER_HOST}" << EOSSH
 | 
						|
#!/bin/bash
 | 
						|
 | 
						|
set -eu
 | 
						|
QCMA_DIR="\$HOME/qcma"
 | 
						|
rm -rf "\${QCMA_DIR}"
 | 
						|
git clone -b ${BRANCH} qcma.bundle "\${QCMA_DIR}"
 | 
						|
 | 
						|
rm -rf qcma_build
 | 
						|
mkdir qcma_build
 | 
						|
 | 
						|
pushd qcma_build
 | 
						|
PATH=~/Qt${QT_REVISION}/${QT_VERSION}/clang_64/bin:/usr/local/bin:\$PATH
 | 
						|
lrelease "\${QCMA_DIR}/qcma.pro"
 | 
						|
qmake "\${QCMA_DIR}/qcma.pro" $CONFIG
 | 
						|
make -j2
 | 
						|
popd
 | 
						|
 | 
						|
rm -rf \${HOME}/qcma_output
 | 
						|
mkdir \${HOME}/qcma_output
 | 
						|
mv qcma_build/gui/qcma.app \${HOME}/qcma_output/Qcma.app
 | 
						|
cp \${QCMA_DIR}/buildscripts/macos/* \${HOME}/qcma_output/
 | 
						|
 | 
						|
pushd \${HOME}/qcma_output/
 | 
						|
macdeployqt Qcma.app -appstore-compliant
 | 
						|
appdmg appdmg.json Qcma_${VERSION}${BUILD_MODE}.dmg
 | 
						|
echo "Created Qcma_${VERSION}${BUILD_MODE}.dmg"
 | 
						|
popd
 | 
						|
EOSSH
 | 
						|
 | 
						|
scp ${SERVER_HOST}:qcma_output/Qcma_${VERSION}${BUILD_MODE}.dmg .
 |