diff --git a/.travis.yml b/.travis.yml index 846c79bb2..0517f6e42 100644 --- a/.travis.yml +++ b/.travis.yml @@ -53,7 +53,7 @@ jobs: compiler: clang - if: commit_message !~ /\[skip linux\]/ os: linux - dist: focal + dist: jammy compiler: gcc before_install: diff --git a/travis/linux/after_success.sh b/travis/linux/after_success.sh index 08fe0a09b..d98fdc689 100755 --- a/travis/linux/after_success.sh +++ b/travis/linux/after_success.sh @@ -1,7 +1,5 @@ #!/bin/bash set -ev -export PATH=/opt/qt515/bin:$PATH -export LD_LIBRARY_PATH=/opt/qt515/lib/x86_64-linux-gnu:/opt/qt515/lib:$LD_LIBRARY_PATH ### This script should be run from GoldenCheetah src directory after build cd src @@ -48,11 +46,11 @@ cp -r /usr/lib/x86_64-linux-gnu/vlc appdir/lib/vlc sudo appdir/lib/vlc/vlc-cache-gen appdir/lib/vlc/plugins ### Download current version of linuxdeployqt -wget --no-verbose -c https://github.com/probonopd/linuxdeployqt/releases/download/7/linuxdeployqt-7-x86_64.AppImage -chmod a+x linuxdeployqt-7-x86_64.AppImage +wget --no-verbose -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage +chmod a+x linuxdeployqt-continuous-x86_64.AppImage ### Deploy to appdir -./linuxdeployqt-7-x86_64.AppImage appdir/GoldenCheetah -verbose=2 -bundle-non-qt-libs -exclude-libs=libqsqlmysql,libqsqlpsql,libnss3,libnssutil3,libxcb-dri3.so.0 -unsupported-allow-new-glibc +./linuxdeployqt-continuous-x86_64.AppImage appdir/GoldenCheetah -verbose=2 -bundle-non-qt-libs -exclude-libs=libqsqlmysql,libqsqlpsql,libnss3,libnssutil3,libxcb-dri3.so.0 -unsupported-allow-new-glibc # Add Python and core modules wget --no-verbose https://github.com/niess/python-appimage/releases/download/python3.7/python3.7.17-cp37-cp37m-manylinux1_x86_64.AppImage @@ -72,7 +70,7 @@ chmod a+x appimagetool-x86_64.AppImage ./appimagetool-x86_64.AppImage appdir ### Cleanup -rm linuxdeployqt-7-x86_64.AppImage +rm linuxdeployqt-continuous-x86_64.AppImage rm appimagetool-x86_64.AppImage rm -rf appdir diff --git a/travis/linux/before_install.sh b/travis/linux/before_install.sh index 48b5d9147..8f46c894e 100755 --- a/travis/linux/before_install.sh +++ b/travis/linux/before_install.sh @@ -1,12 +1,16 @@ #!/bin/bash set -ev -# Add recent Qt dependency ppa, update on a newer qt version. -sudo add-apt-repository -y ppa:beineri/opt-qt-5.15.2-focal +# Install fuse2, required to run older AppImages +sudo add-apt-repository -y universe +sudo apt install libfuse2 + +# Install qt5.15 sudo apt-get update -qq -sudo apt-get install -qq qt5-default qt515base qt515tools qt515serialport\ - qt515svg qt515multimedia qt515connectivity qt515webengine qt515charts-no-lgpl\ - qt515networkauth-no-lgpl qt515translations +sudo apt-get install -qq qtbase5-dev qt5-qmake qtbase5-dev-tools qttools5-dev +sudo apt-get install -qq qtmultimedia5-dev qtconnectivity5-dev qtwebengine5-dev qtpositioning5-dev +sudo apt-get install -qq libqt5charts5-dev libqt5serialport5-dev libqt5webchannel5-dev libqt5svg5-dev libqt5opengl5-dev +qmake --version sudo apt-get install -qq libglu1-mesa-dev sudo apt-get install -qq libsamplerate0-dev @@ -17,7 +21,7 @@ sudo apt-get install -y vlc libvlc-dev libvlccore-dev # R 4.0 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 -sudo add-apt-repository -y "deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/" +sudo add-apt-repository -y "deb https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/" sudo apt-get update -qq sudo apt-get install r-base-dev R --version @@ -28,15 +32,15 @@ if [ -z "$(ls -A D2XX)" ]; then tar xf libftd2xx-x86_64-1.4.27.tgz -C D2XX fi -# SRMIO -wget --no-verbose https://github.com/rclasen/srmio/archive/v0.1.1git1.tar.gz -tar xf v0.1.1git1.tar.gz -cd srmio-0.1.1git1 -sh genautomake.sh -./configure --disable-shared --enable-static -make --silent -j3 -sudo make install -cd ${TRAVIS_BUILD_DIR} +# SRMIO (disabled due to build errors) +#wget --no-verbose https://github.com/rclasen/srmio/archive/v0.1.1git1.tar.gz +#tar xf v0.1.1git1.tar.gz +#cd srmio-0.1.1git1 +#sh genautomake.sh +#./configure --disable-shared --enable-static +#make --silent -j3 +#sudo make install +#cd ${TRAVIS_BUILD_DIR} # LIBUSB sudo apt-get install -qq libusb-1.0-0-dev libudev-dev @@ -44,7 +48,7 @@ sudo apt-get install -qq libusb-1.0-0-dev libudev-dev # Add Python 3.7 and SIP sudo add-apt-repository -y ppa:deadsnakes/ppa sudo apt-get update -qq -sudo apt-get install -qq python3.7-dev +sudo apt-get install -qq python3.7-dev python3.7-distutils python3.7 --version wget --no-verbose https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.8/sip-4.19.8.tar.gz tar xf sip-4.19.8.tar.gz diff --git a/travis/linux/before_script.sh b/travis/linux/before_script.sh index f3231a135..5bf52e8f0 100755 --- a/travis/linux/before_script.sh +++ b/travis/linux/before_script.sh @@ -1,11 +1,12 @@ #!/bin/bash set -ev -export PATH=/opt/qt515/bin:$PATH cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri cp src/gcconfig.pri.in src/gcconfig.pri # Define GC version string, only for tagged builds if [ -n "$TRAVIS_TAG" ]; then echo DEFINES += GC_VERSION=VERSION_STRING >> src/gcconfig.pri; fi +# required to use bison version higher than 3.7 +sed -i "s|#\(QMAKE_MOVE = cp.*\)|\1|" src/gcconfig.pri # make a release build sed -i "s|#\(CONFIG += release.*\)|\1 static|" src/gcconfig.pri sed -i "s|^#QMAKE_CXXFLAGS|QMAKE_CXXFLAGS|" src/gcconfig.pri @@ -31,8 +32,8 @@ sed -i "s|^#CloudDB|CloudDB|" src/gcconfig.pri sed -i "s|#\(D2XX_INCLUDE =.*\)|\1 ../D2XX/release|" src/gcconfig.pri # SAMPLERATE sed -i "s|#\(SAMPLERATE_INSTALL =\).*|\1 /usr|" src/gcconfig.pri -# SRMIO -sed -i "s|#\(SRMIO_INSTALL =.*\)|\1 /usr/local|" src/gcconfig.pri +# SRMIO (disabled due to build errors) +#sed -i "s|#\(SRMIO_INSTALL =.*\)|\1 /usr/local|" src/gcconfig.pri # Python echo DEFINES += GC_WANT_PYTHON >> src/gcconfig.pri echo PYTHONINCLUDES = -I/usr/include/python3.7 >> src/gcconfig.pri diff --git a/travis/linux/script.sh b/travis/linux/script.sh index 3379a26e7..6f7e251aa 100755 --- a/travis/linux/script.sh +++ b/travis/linux/script.sh @@ -1,6 +1,5 @@ #!/bin/bash set -ev -export PATH=/opt/qt515/bin:$PATH qmake -recursive QMAKE_CXXFLAGS_WARN_ON+="-Wno-deprecated-declarations -Wno-unused-value" QMAKE_CFLAGS_WARN_ON+="-Wno-deprecated-declarations -Wno-unused-value" make -j4 exit