Files
oak-editor/.travis/script.sh
T
William Rankin 2ef338f0c0 Prefer curl on OSX
wget is not available by default on OSX
2020-09-14 17:03:39 +10:00

77 lines
2.1 KiB
Bash

#!/bin/bash
# linuxdeployqt uses this for naming the file
export VERSION=$(git rev-parse --short=8 HEAD)
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
# Generate Makefile
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo
# Make
make -j$(sysctl -n hw.ncpu)
# Handle compile failure
if [ "$?" != "0" ]
then
exit 1
fi
BUNDLE_NAME=Olive.app
# Move bundle to working directory
mv app/$BUNDLE_NAME .
# Move Qt deps into bundle
macdeployqt $BUNDLE_NAME
# Fix other deps that macdeployqt missed
curl -sLOC - https://github.com/arl/macdeployqtfix/raw/master/macdeployqtfix.py
python2 macdeployqtfix.py $BUNDLE_NAME/Contents/MacOS/Olive /usr/local/Cellar/qt5/5.*/
# Fix deps on crash handler
python2 macdeployqtfix.py $BUNDLE_NAME/Contents/MacOS/olive-crashhandler /usr/local/Cellar/qt5/5.*/
# Fix OpenEXR libs that seem to be missed by both macdeployqt _and_ macdeployqtfix
cd $BUNDLE_NAME/Contents/Frameworks
exrlib=(libImath-*.dylib libHalf-*.dylib libIexMath-*.dylib libIex-*.dylib libIlmThread-*.dylib)
for a in ${exrlib[@]}; do
for b in ${exrlib[@]}; do
install_name_tool -change @rpath/$b @executable_path/../Frameworks/$b $a
done
done
cd ../../..
# Distribute in zip
zip -r Olive-$VERSION-macOS.zip $BUNDLE_NAME
elif [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
# Generate Makefile
cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo
# Make
make -j$(nproc)
# Handle compile failure
if [ "$?" != "0" ]
then
exit 1
fi
# Use `make install` on `appdir` to place files in the correct place
make DESTDIR=appdir install
# Download linuxdeployqt
wget -c -nv "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
chmod a+x linuxdeployqt-continuous-x86_64.AppImage
unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH
# Use linuxdeployqt to set up dependencies
./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/local/share/applications/*.desktop -extra-plugins=imageformats/libqsvg.so -appimage
fi