added Travis CI

This commit is contained in:
Your Name 2019-07-21 19:17:53 +02:00
parent 9398d80bfb
commit ec999f0265
3 changed files with 172 additions and 0 deletions

77
.travis.yml Normal file
View File

@ -0,0 +1,77 @@
language: cpp
matrix:
include:
- os: linux
dist: xenial
before_install:
- sudo apt-get update -qq
- sudo apt-get install devscripts build-essential lintian dh-make
- sudo apt-get install qtdeclarative5-dev qt5-default libjack-jackd2-dev
compiler:
- clang
- gcc
script:
- echo $TRAVIS_TAG
- qmake Jamulus.pro
- make
#deploy function is only available in travis-ci.com (not free) but not in travis-ci.org (free)
#deploy:
# provider: releases
# api_key:
# secure: aQ93/8XU3HEGTif0/rSiF+gcm4uRhyWFdr3Va50BprwQOrZkNg8zIMwIKKODwjLDqxaH4msgNYutcr/VLdLjo4YP43It0UIfv3LGa2VFAkFhuQurMXZlVyx8RhIGLjIaWVWN1GCbNdAQwWNNo2mAkEdRaBrj/26geZotGcYZiztGwTAdy0t/vyYjO1sLZdBKcf7dJ06Pm2ktZO/rDyE4UtCTQiRfqLCKsQ/SILbewOMG/auaSUdU0utsbvXxr+dCzqBPwdSSptWqhIORXORL5oPn6242URzIJkmw5XPwhSabhdbzUjCIN9E24z1vp+cffAohuGXyXXZy9/bGeKa0mXfAaXV+TnJkpMd+i3fN5dY+vhFrlLOpRojRK6NqvaMID6tcNNtZMmFSgaZGyCUJQn4/0X+LdPwvK3/dXY+qElJW62QiJmQAt9OBGcq8EFqQDmEtRivRlbpbERsd/IJoOxP7nI2T00g04uV543ZmhU4fmGw6MVPAlIGRsBECjB0AMTp+3xW3OaUp7jy3WZpZXRrXNI41nZogrxhevPME1BRNk3V+MWQo8R3C+bIaCa5Um/3DZxnMxZgXjI9yzzR7Z8f4RWaQCKjXx41/pk7jxm1TcEyBfRVsb313l/fRLg+fjCmaEnnxu43333XGIv4eIyAGDR8ydF2VpmyP2ejzh8I=
# file:
# - Jamulus
# skip_cleanup: true
# on:
# repo: braindef/jamulus
# tags: true
- os: osx
osx_image: xcode7.2
before_install:
- brew install qt5
- brew link qt5 --force
script:
- qmake -spec macx-xcode Jamulus.pro
- xcodebuild -list -project Jamulus.xcodeproj
- xcodebuild -scheme Jamulus build
#deploy function is only available in travis-ci.com (not free) but not in travis-ci.org (free)
#deploy:
# provider: releases
# api_key:
# secure: aQ93/8XU3HEGTif0/rSiF+gcm4uRhyWFdr3Va50BprwQOrZkNg8zIMwIKKODwjLDqxaH4msgNYutcr/VLdLjo4YP43It0UIfv3LGa2VFAkFhuQurMXZlVyx8RhIGLjIaWVWN1GCbNdAQwWNNo2mAkEdRaBrj/26geZotGcYZiztGwTAdy0t/vyYjO1sLZdBKcf7dJ06Pm2ktZO/rDyE4UtCTQiRfqLCKsQ/SILbewOMG/auaSUdU0utsbvXxr+dCzqBPwdSSptWqhIORXORL5oPn6242URzIJkmw5XPwhSabhdbzUjCIN9E24z1vp+cffAohuGXyXXZy9/bGeKa0mXfAaXV+TnJkpMd+i3fN5dY+vhFrlLOpRojRK6NqvaMID6tcNNtZMmFSgaZGyCUJQn4/0X+LdPwvK3/dXY+qElJW62QiJmQAt9OBGcq8EFqQDmEtRivRlbpbERsd/IJoOxP7nI2T00g04uV543ZmhU4fmGw6MVPAlIGRsBECjB0AMTp+3xW3OaUp7jy3WZpZXRrXNI41nZogrxhevPME1BRNk3V+MWQo8R3C+bIaCa5Um/3DZxnMxZgXjI9yzzR7Z8f4RWaQCKjXx41/pk7jxm1TcEyBfRVsb313l/fRLg+fjCmaEnnxu43333XGIv4eIyAGDR8ydF2VpmyP2ejzh8I=
# file:
# - Jamulus.app
# skip_cleanup: true
# on:
# repo: braindef/jamulus
# tags: true
- os: windows
before_install:
- dir C:/Program\ Files\ \(x86\)/Windows\ Kits/10/bin/10.0.17134.0/x64
- cmd.exe /C 'cd && "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat"
x86 && cd && cd "C:/Users/travis/build/braindef/jamulus" && dir'
- curl -vLO http://download.qt.io/official_releases/online_installers/qt-unified-windows-x86-online.exe
- curl -vLO http://www.steinberg.net/sdk_downloads/ASIOSDK2.3.2.zip
- unzip ASIOSDK2.3.2.zip
- mkdir windows/ASIOSDK2
- cp -rvu ASIOSDK2.3.2/* windows/ASIOSDK2
- "./qt-unified-windows-x86-online.exe --verbose --script qt-installer-windows.qs"
- ls -la C:/Qt/5.12.3/msvc2017/bin/qtenv2.bat
script:
- cmd.exe /C 'cd && "C:\Qt\5.12.3\msvc2017\bin\qtenv2.bat" && cd && "C:\Program
Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Auxiliary\Build\vcvarsall.bat"
x86 && cd "C:\Users\travis\build\braindef\jamulus" && cd && qmake Jamulus.pro
&& nmake'
#deploy function is only available in travis-ci.com (not free) but not in travis-ci.org (free)
#deploy:
# provider: releases
# api_key:
# secure: aQ93/8XU3HEGTif0/rSiF+gcm4uRhyWFdr3Va50BprwQOrZkNg8zIMwIKKODwjLDqxaH4msgNYutcr/VLdLjo4YP43It0UIfv3LGa2VFAkFhuQurMXZlVyx8RhIGLjIaWVWN1GCbNdAQwWNNo2mAkEdRaBrj/26geZotGcYZiztGwTAdy0t/vyYjO1sLZdBKcf7dJ06Pm2ktZO/rDyE4UtCTQiRfqLCKsQ/SILbewOMG/auaSUdU0utsbvXxr+dCzqBPwdSSptWqhIORXORL5oPn6242URzIJkmw5XPwhSabhdbzUjCIN9E24z1vp+cffAohuGXyXXZy9/bGeKa0mXfAaXV+TnJkpMd+i3fN5dY+vhFrlLOpRojRK6NqvaMID6tcNNtZMmFSgaZGyCUJQn4/0X+LdPwvK3/dXY+qElJW62QiJmQAt9OBGcq8EFqQDmEtRivRlbpbERsd/IJoOxP7nI2T00g04uV543ZmhU4fmGw6MVPAlIGRsBECjB0AMTp+3xW3OaUp7jy3WZpZXRrXNI41nZogrxhevPME1BRNk3V+MWQo8R3C+bIaCa5Um/3DZxnMxZgXjI9yzzR7Z8f4RWaQCKjXx41/pk7jxm1TcEyBfRVsb313l/fRLg+fjCmaEnnxu43333XGIv4eIyAGDR8ydF2VpmyP2ejzh8I=
# file:
# - Jamulus.exe
# skip_cleanup: true
# on:
# repo: braindef/jamulus
# tags: true

View File

@ -1,5 +1,8 @@
![Homepage picture](src/res/homepage/jamulusbannersmall.png)
![https://api.travis-ci.org/braindef/jamulus.svg?branch=master](https://api.travis-ci.org/braindef/jamulus.svg?branch=master)
(https://travis-ci.org/braindef/jamulus/builds)
Jamulus - Internet Jam Session Software
=======================================
<img align="left" src="src/res/homepage/mediawikisidebarlogo.png"/>

92
qt-installer-windows.qs Normal file
View File

@ -0,0 +1,92 @@
/*
* Qt Installer script for a non-interactive installation of Qt5 on Windows.
* Installs the 64-bit package if environment variable PLATFORM="x64".
*/
// jshint strict:false
/* globals QInstaller, QMessageBox, buttons, gui, installer, console */
// Run with:
// .\qt-unified-windows-x86-3.0.4-online.exe --verbose --script tools\qt-installer-windows.qs
// Look for Name elements in
// https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5123/Updates.xml
// Unfortunately it is not possible to disable deps like qt.tools.qtcreator
var INSTALL_COMPONENTS = [
installer.environmentVariable("PLATFORM") == "x64" ?
"qt.qt5.5123.win64_msvc2017_64" :
"qt.qt5.5123.win32_msvc2017",
];
function Controller() {
// Continue on installing to an existing (possibly empty) directory.
installer.setMessageBoxAutomaticAnswer("OverwriteTargetDirectory", QMessageBox.Yes);
// Continue at "SHOW FINISHED PAGE"
installer.installationFinished.connect(function() {
console.log("installationFinished");
gui.clickButton(buttons.NextButton);
});
}
Controller.prototype.WelcomePageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
// At least for 3.0.4 immediately clicking Next fails, so wait a bit.
// https://github.com/benlau/qtci/commit/85cb986b66af4807a928c70e13d82d00dc26ebf0
gui.clickButton(buttons.NextButton, 1000);
};
Controller.prototype.CredentialsPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
gui.clickButton(buttons.NextButton);
};
Controller.prototype.IntroductionPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
gui.clickButton(buttons.NextButton);
};
Controller.prototype.TargetDirectoryPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
// Keep default at "C:\Qt".
//gui.currentPageWidget().TargetDirectoryLineEdit.setText("E:\\Qt");
gui.clickButton(buttons.NextButton);
};
Controller.prototype.ComponentSelectionPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
var page = gui.currentPageWidget();
page.deselectAll();
for (var i = 0; i < INSTALL_COMPONENTS.length; i++) {
page.selectComponent(INSTALL_COMPONENTS[i]);
}
gui.clickButton(buttons.NextButton);
};
Controller.prototype.LicenseAgreementPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
gui.currentPageWidget().AcceptLicenseRadioButton.setChecked(true);
gui.clickButton(buttons.NextButton);
};
Controller.prototype.StartMenuDirectoryPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
gui.clickButton(buttons.NextButton);
};
Controller.prototype.ReadyForInstallationPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
gui.clickButton(buttons.NextButton);
};
Controller.prototype.FinishedPageCallback = function() {
console.log("Step: " + gui.currentPageWidget());
// TODO somehow the installer crashes after this step.
// https://stackoverflow.com/questions/25105269/silent-install-qt-run-installer-on-ubuntu-server
var checkBoxForm = gui.currentPageWidget().LaunchQtCreatorCheckBoxForm;
if (checkBoxForm && checkBoxForm.launchQtCreatorCheckBox) {
checkBoxForm.launchQtCreatorCheckBox.checked = false;
}
gui.clickButton(buttons.FinishButton);
};
// vim: set ft=javascript: