aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
AgeCommit message (Collapse)Author
2021-06-07build-system: updates to processesGravatar Dirk Hohndel
This is mostly for my own use, but I think it makes sense to have it in the repo. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2021-06-04build-system: remove relative paths to iconsGravatar Dirk Hohndel
Asciidoc appears to insert './images' references when using the admonitionblock. Clean that up in the post processing of the user manual for HTML. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2021-05-20make whitespace in build script match existing whitespaceGravatar Ryan Gardner
Signed-off-by: Ryan Gardner <ryan.gardner@coxautoinc.com>
2021-05-20Make the Mac SDK detection in build.sh more robustGravatar Ryan Gardner
When trying to build on Big Sur, the xcode command-line tools install are installed in /Library/Developer/CommandLineTools/SDKs, and as of Xcode 12.5, it does not include a 10.x version of SDK. This changes it to search in the location of the command-line tools SDK for a 10.x version, and if it can't find a 10.x version it will find an explicit 11.x version of the SDK to use because it is conceivable that in the near future Apple will stop installing any 10.x SDK's as part of the command-line tool installer. If the SDK can't be found, the build script will exit now instead of continuing with an unset BASESDK version that causes a later failure. Signed-off-by: Ryan Gardner <ryan.gardner@coxautoinc.com>
2021-01-23Add Diviac conversion to smtk converter CGI scriptGravatar Robert C. Helling
Plus a little bit of error reporting. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2021-01-10build-system: compile stats code on mobile OSsGravatar Dirk Hohndel
Android and iOS use qmake, so add the code to the .pro file. This also removes all remnants of QCharts includes and uses and all the references to QCharts in our various build systems. That was a brief but extremely useful detour. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2021-01-09build.sh: recreate previous behavior with no argsGravatar Dirk Hohndel
When calling build.sh with no args asking for a specific build type, that should be equivalent with calling it with the -desktop arg. Reported-by: Salvador Cuñat <salvador.cunat@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-29build script: move related code closer togetherGravatar Dirk Hohndel
This just makes it more obvious what we are doing. This appears only necessary on macOS. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-29build script: remove the long outdated Qt detectionGravatar Dirk Hohndel
We now require qmake to be found much earlier in the script so we can simply use that to get the right prefix path. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-29build script: fix typos and inconsistenciesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-29build-system/trusty: use new Qt installerGravatar Subsurface CI
Update to Qt 5.12.10, latest OpenSSL, add QtChart, add other missing packages. Also switch to gcc-7 as our statistics code requires better C++17 support than what gcc-6 can offer. This then creates trusty-qt512:1.1 Signed-off-by: Subsurface CI <dirk@hohndel.org>
2020-12-19build-system: don't build googlemaps for downloader only buildsGravatar Dirk Hohndel
This is kind of a silly optimization, but might make a huge difference in build time on a Raspberry Pi. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-19build-system: clean up handling of printing/manualGravatar Dirk Hohndel
This was wrong when running -both in the past. We only want these options for desktop builds. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-19build-system: start enabling support for downloader in build.shGravatar Dirk Hohndel
This is just adding the third option and then untangles some of the 'there are only two options' based code. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17build-system/mobile: force using our own ECM buildGravatar Dirk Hohndel
If the OS has an older one installed, that is found first and the build fails. This way we know that ours is used. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17build-system/mobile: remove old scriptGravatar Dirk Hohndel
This was just kept around for reference. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17kirigami: maintain our patches relative to upstreamGravatar Dirk Hohndel
Having them as commits like this should make it easier to migrate them as we update the underlying Kirigami version. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17mobile/kirigami: install our own copy of ECMGravatar Dirk Hohndel
Instead of relying on this being available as a system resource, treat it the same way as we treat Kirigami and the Breeze icons. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-17mobile/kirigami: first steps to switching to Kirigami 5.76Gravatar Dirk Hohndel
Our half-assed manual build of Kirigami was becoming completely unmaintainable. So let's try to use the build method that the Kirigami team recommends. Which unfortunately requires us to have access to the KDE extra cmake modules (ECM). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-12-03downloader: filter possible devices and add mounts, remember last choicesGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2020-12-03downloader: make cgi-script functional and add documentationGravatar Robert C. Helling
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2020-12-03downloader: add first downloader CGI scriptGravatar Robert C. Helling
This script will function as glue between a web server and the downloader command line app. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2020-11-19Update translations from TransifexGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-19build-system: update Android builder docker containerGravatar Dirk Hohndel
This adjusts the docker setup to create a container with the correct NDK, SDK, tools, Qt version, etc, and updates the helper scripts that are needed in order to do that. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-19android: add new build setup scriptGravatar Dirk Hohndel
This installs the required versions for most components, switches us to Qt 5.15, current SDK, NDK, and the current OpenSSL version. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-19mobile: hack around error with readonly propertiesGravatar Dirk Hohndel
This used to work, and still works with Qt 5.15 on the desktop, but on Android we get a fatal error trying to open the app. So let's just add another hack on top of all the other hacks we already have. Eventually we need to bite the bullet and update Kirigami. I just wish that wasn't such a pain. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-11-19build-system: use libgit2 1.0.1 if building from sourceGravatar Dirk Hohndel
We still only require v0.26 from an API perspective, but it seems backwards to build that version when building from source as we do for macOS or Android. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-31build-system: build libmtp for macOS if requestedGravatar Dirk Hohndel
If we are building our own dependencies (usually only for release builds), we now also need to build libmtp. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: switch to the 32/64bit MXE build containerGravatar Dirk Hohndel
This doesn't actually build 32 bit binaries, yet. One step at a time. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: create an MXE docker container for both 32 & 64 bitGravatar Dirk Hohndel
This should allow us to then do both 32 and 64 bit Windows builds in our CI/CD and of course for our releases. In order to still be able to use this container in a GitHub action, aggressively remove things that we won't need during the build. Since we use the experimental -squash argument during docker build, this should get us a much smaller container image in the end. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: Docker build for 64bit MXEGravatar Dirk Hohndel
We previously tried to build the MXE Docker container on GitHub using an Action, but that really didn't work well and was a lot more trouble than it was worth. So this goes back to an offline build mechanism where I simply create an updated Docker image when needed and push that to Docker Hub. But this nearly hides the most interesting change here - we are finally switching to using 64bit binaries on Windows. It's 2020 and fewer than 1% of our users use 32bit Windows machines. We'll need to expand this to be able to have both a 32bit and a 64bit version of Subsurface for Windows. But for now, this solves the problem for 99% of our users. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: first steps towards a 64bit Windows buildGravatar Dirk Hohndel
This is barely scratching the surface (no put intended), and of course the container needs to be updated, first, to have a 64bit version of MXE installed, but this seems to help make libmtp build correctly. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-30build-system: add libmtp for our Windows buildsGravatar Dirk Hohndel
This uses latest master (as that's the only one that has the explicit Descent Mk2i support in it). Right now, unfortunately the MXE build fails. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: improve finding of libdivecomputer.aGravatar Dirk Hohndel
On some systems it ends up in lib64 instead of lib. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: fix libgit2 detectionGravatar Dirk Hohndel
Usually ldconfig isn't in the user's path. Suggested-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-16build-system: switch to current libhidapiGravatar Dirk Hohndel
A few years ago the upstream for libhidapi changed - it became part of the libusb GitHub org. Switching to the latest version appears to fix some odd problems with talking to the Suunto Eon Steele/Core dive computers on macOS (at least I can no longer reproduce the problem after switching to the current version). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-08build-system: remove Grantlee references from legacy scriptsGravatar Dirk Hohndel
I debated about this commit... we don't use these scripts any more, but it seems like it would be worse to leave the Grantlee references in them. Yet of course this is all no longer tested. Maybe it is time to delete the scripts from the tree. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-08build-system: remove Grantlee from the container setup scriptsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-08build-system: remove Grantlee from the get-dep-lib scriptGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-08build-system: remove building Grantlee from build scriptGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-10-06build-sytem: hide archived Subsurface version from translation scanGravatar Dirk Hohndel
The release process creates full Subsurface trees under tmp. Don't pick those up when looking for source strings. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-09-30documentation: release tasksGravatar Dirk Hohndel
I think I'm the only one using this list, but it makes sense to have it in the repo Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-09-13build-system/macOS: build libz and libftdi as part of Mac dependenciesGravatar Dirk Hohndel
Usually people will install these via Homebrew, but when we need to build everything ourselves (required for release binaries), then these two were missing before. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-09-13build-system: add zlib as library we know how to fetchGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-08-13smtk-import: Fix build scriptGravatar Salvador Cuñat
Subsurface build needs install-root path to link libdc Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2020-08-08smtk2ssrf Perl script: Add some error reportingGravatar Robert C. Helling
So far, if the conversion process failed, we simply returned an empty file. Now, we report that something's wrong. Signed-off-by: Robert C. Helling <helling@atdotde.de>
2020-06-25build-system/MXE: build with more up to date MXE tools.Gravatar Paul Buxton
- use hidapi grantlee and mdbtools from MXE - update MXE version to use QT 5.15, and pull in libzstd and CMake 3.17.3 - fix linking of winmm on windows build with new mxe - add some instructions on building the container - add some new dependancies from QT 5.15 to the packaging - add a patch to MXE to Build qtconnectivity with native-win32-bluetooth [Dirk Hohndel: small refactor] Signed-off-by: Paul Buxton <paulbuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-05-02add random helper scriptsGravatar Dirk Hohndel
These are all kinda weird but I use them when creating releases, so it seems to make sense to add them to the repo. I don't think they are useful to anyone but me, but in the event someone else takes over, they might be a useful starting point. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-26move GitHub url to the Subsurface orgGravatar Dirk Hohndel
Instead of using the Subsurface-divelog user on GitHub, we now use an org that was generously donated to us. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-25build-system/Android: use PREFIX outside of NDKGravatar Dirk Hohndel
If we install our support libraries into the NDK we later run into include path order issues that result in strange errors around the inclusion of math.h (because we find the C version of that include file that ships with the NDK before we find the libstdc++ version of math.h (because the include path for our support libraries is listed before the libstdc++ include search path). By having a distinct install-root for our libraries we can avoid this problem. Remove the previous hack that tried to work around the symptoms of this issue. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>