rssguard/resources/scripts/github-actions/build-linux-mac.sh

78 lines
1.9 KiB
Bash
Raw Normal View History

2020-12-08 10:54:12 +01:00
#!/bin/bash
2020-12-08 11:02:20 +01:00
os="$1"
2020-12-08 11:34:07 +01:00
webengine="$2"
2020-12-08 11:02:20 +01:00
if [[ "$os" == *"ubuntu"* ]]; then
echo "We are building for GNU/Linux on Ubuntu."
is_linux=true
else
echo "We are building for Mac OS X."
is_linux=false
2020-12-08 11:04:40 +01:00
fi
2020-12-08 11:34:07 +01:00
echo "OS: $os; WebEngine: $webengine"
2020-12-08 11:21:01 +01:00
# Prepare environment.
if [ $is_linux = true ]; then
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo add-apt-repository ppa:beineri/opt-qt-5.15.2-xenial -y
sudo apt-get update
sudo apt-get -y install gcc-7 g++-7 qt515tools qt515base qt515webengine
2020-12-08 11:30:45 +01:00
source /opt/qt515/bin/qt515-env.sh
2020-12-08 11:21:01 +01:00
else
pip3 install aqtinstall
2020-12-08 11:24:26 +01:00
QTPATH="$(pwd)/Qt"
QTVERSION="5.15.2"
QTBIN="$QTPATH/$QTVERSION/clang_64/bin"
echo "Qt bin directory is: $QTBIN"
echo "Qt will be installed to: $QTPATH"
aqt install -O "$QTPATH" 5.15.2 mac desktop clang_64 -m qtwebengine
export QT_PLUGIN_PATH="$QTPATH/$QTVERSION/clang_64/plugins"
export PATH="$QTBIN:$PATH"
qmake --version
2020-12-08 11:30:45 +01:00
fi
# Build application and package it.
if [ $is_linux = true ]; then
mkdir rssguard-build && cd rssguard-build
2020-12-08 11:34:07 +01:00
qmake .. "USE_WEBENGINE=$webengine"
2020-12-08 11:30:45 +01:00
make
make install
cd "src/rssguard"
else
mkdir rssguard-build && cd rssguard-build
2020-12-08 11:34:07 +01:00
qmake .. "USE_WEBENGINE=$webengine"
2020-12-08 11:30:45 +01:00
make
make install
cd "src/rssguard"
# Fix .dylib linking.
install_name_tool -change "librssguard.dylib" "@executable_path/librssguard.dylib" "RSS Guard.app/Contents/MacOS/rssguard"
install_name_tool -change "librssguard.dylib" "@executable_path/librssguard.dylib" "rssguard"
otool -L "RSS Guard.app/Contents/MacOS/rssguard"
macdeployqt "./RSS Guard.app" -dmg
# Rename DMG.
set -- *.dmg
dmgname="$1"
git_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
git_revision=$(git rev-parse --short HEAD)
#if [ "$USE_WEBENGINE" = true ]; then
# dmgnewname="rssguard-${git_tag}-${git_revision}-mac64.dmg"
#else
# dmgnewname="rssguard-${git_tag}-${git_revision}-nowebengine-mac64.dmg"
#fi
#mv "$dmgname" "$dmgnewname"
2020-12-08 11:21:01 +01:00
fi