mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Make multiple improvements to the existing workflows:
- create a shared custom action to deal with version number tracking
and generation;
- use this action to add the branch name to the version for pull
request builds;
- create a shared workflow for all debian-ish builds to avoid re-use
by copy / paste;
- remove potential security risks by eliminating the use of
pre-evaluated expressions (`${{ ... }}`) inside scripts;
- update outdated GitHub action versions;
- improve the consistency by renaming scripts acording to have a `.sh`
extension;
- improve naming of generated artefacts for pull requests to include
the correct version.
@dirkh: Unfortunately this is potentially going to break builds when it is
merged, as there is no good way to 'test' a merge build short of
merging.
We'll just have to deal with the fallout of it in a follow-up pull
request.
Signed-off-by: Michael Keller <github@ike.ch>
|
||
|---|---|---|
| .. | ||
| storeIcon.xcassets | ||
| build.sh | ||
| Info.plist.in | ||
| iPhoneDeviceCMakeToolchain | ||
| iPhoneSimulatorCMakeToolchain | ||
| README | ||
| SubsurfaceMobileLaunch.xib | ||
| translations.qrc | ||
Tool repo to crosscompile subsurface for iOS
--------------------------------------------
Dependencies:
- This only works on a Mac
- XCode with iOS SDK and Qt5.13 or later
- cmake
Follow the instruction in:
<repo>/INSTALL
and then continue here:
1) cd <repo>/packaging/ios
2) export IOS_BUNDLE_PRODUCT_IDENTIFIER="<your apple id>.subsurface-divelog.subsurface-mobile"
3) ./build.sh
note: this builds all dependencies and is only needed first time
it currently build for armv7 arm64 and x86_64 (simulator)
1) cd <repo>/..
2) Launch QtCreator and open subsurface/packaging/ios/Subsurface-mobile.pro
3) Build Subsurface-mobile in QtCreator - you can build for the simulator and for
a device and even deploy to a connected device.
Everything up to here you can do without paying for an Apple Developer account.
In order to create a bundle that can be distributed things get even more
complex and an Apple Developer account definitely is necessary in order for you
to be able to sign the bundle.
The easiest way to do that appears to be to open the Subsurface-mobile.xcodeproj
in the build directory that QtCreator used in Xcode and to create an archive there.
WARNING:
========
The version number used in the Subsurface-mobile app is created in step 3.
So whenever you pull the latest git or commit a change, you need to re-run the
build.sh script so that the Info.plist used by QtCreator (well, by Xcode under
the hood) gets updated. Otherwise you will continue to see the old version
number, even though the sources have been recompiled which can be very
confusing.
Do a simply version update by running:
build.sh -version
and then rebuilding in Qt Creator (or Xcode)