diff options
-rw-r--r-- | .github/workflows/ios.yml | 40 | ||||
-rw-r--r-- | packaging/ios/qt-installer-noninteractive.qs | 60 |
2 files changed, 100 insertions, 0 deletions
diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml new file mode 100644 index 000000000..316b2290c --- /dev/null +++ b/.github/workflows/ios.yml @@ -0,0 +1,40 @@ +name: iOS +on: push + +jobs: + mobileBuild: + runs-on: macOS-latest + steps: + - name: checkout sources + uses: actions/checkout@v1 + - name: setup Homebrew + run: brew install autoconf automake libtool + - name: set our Qt build + run: | + env + curl -L --output qt-opensource-mac-x64-5.13.1.dmg https://download.qt.io/archive/qt/5.13/5.13.1/qt-opensource-mac-x64-5.13.1.dmg + df -h + mkdir -p mnt + sudo hdiutil attach -mountroot $PWD/mnt -noverify -noautoopen -verbose qt-opensource-mac-x64-5.13.1.dmg + df -h + ls -l mnt + find mnt + ./mnt/qt-opensource-mac-x64-5.13.1/qt-opensource-mac-x64-5.13.1.app/Contents/MacOS/qt-opensource-mac-x64-5.13.1 --platform minimal --script packaging/ios/qt-installer-noninteractive.qs --no-force-installations + df -h + - name: build Subsurface-mobile for iOS + run: | + ls -l $HOME $HOME/Qt + cd packaging/ios + ln -s $HOME/Qt Qt + pushd Qt + ls -l + popd + echo "build dependencies" + bash -x build.sh -simulator + echo "Subsurface-mobile for iOS" + cd build-Subsurface-mobile-*for_iOS-Release + sed -i.bak 's/-Wall/-Wno-everything/' Makefile # make the build far less verbose + make -j2 + + + diff --git a/packaging/ios/qt-installer-noninteractive.qs b/packaging/ios/qt-installer-noninteractive.qs new file mode 100644 index 000000000..5b1faa5ba --- /dev/null +++ b/packaging/ios/qt-installer-noninteractive.qs @@ -0,0 +1,60 @@ +// http://stackoverflow.com/a/34032216/78204 + +function Controller() { + installer.autoRejectMessageBoxes(); + installer.setMessageBoxAutomaticAnswer("OverwriteTargetDirectory", QMessageBox.Yes); + installer.installationFinished.connect(function() { + gui.clickButton(buttons.NextButton); + }) +} + +Controller.prototype.WelcomePageCallback = function() { + gui.clickButton(buttons.NextButton,3000); +} + +Controller.prototype.CredentialsPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.IntroductionPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.TargetDirectoryPageCallback = function() +{ + gui.currentPageWidget().TargetDirectoryLineEdit.setText(installer.value("HomeDir") + "/Qt"); + //gui.currentPageWidget().TargetDirectoryLineEdit.setText(installer.value("InstallerDirPath") + "/Qt"); + //gui.currentPageWidget().TargetDirectoryLineEdit.setText("/scratch/Qt"); + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.ComponentSelectionPageCallback = function() { + var widget = gui.currentPageWidget(); + + widget.deselectAll(); + widget.selectComponent('qt.qt5.5131.ios'); + + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.LicenseAgreementPageCallback = function() { + gui.currentPageWidget().AcceptLicenseRadioButton.setChecked(true); + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.StartMenuDirectoryPageCallback = function() { + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.ReadyForInstallationPageCallback = function() +{ + gui.clickButton(buttons.NextButton); +} + +Controller.prototype.FinishedPageCallback = function() { +var checkBoxForm = gui.currentPageWidget().LaunchQtCreatorCheckBoxForm +if (checkBoxForm && checkBoxForm.launchQtCreatorCheckBox) { + checkBoxForm.launchQtCreatorCheckBox.checked = false; +} + gui.clickButton(buttons.FinishButton); +} |