aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
AgeCommit message (Collapse)Author
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>
2020-04-25build-system/Android: use install-qt.sh to install QtGravatar Dirk Hohndel
The official installer now requires the user to log in which we can't really do in a scripted manner. Let's see how long this way of installing things will be available. While doing this remove an ancient hack of some Qt settings that we no longer need. This also tries to prune some things that we don't need in the Docker image to reduce image size. The mapbox plugin is removed as it would add a dependency to QtSql which we otherwise don't need. And since the plugin isn't used, no point in installing it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-25build-system/Android: update some dependency versionsGravatar Dirk Hohndel
Qt 5.13.2 fixes a few bugs. We are NOT switching to Qt 5.14 as that breaks a ton of things with Android support. At this point even with qmake it near impossible to get working Android binaries, no one appears to have a solution for cmake. With qt-android-cmake current master fixes the problem that held us back at the earlier commit, so let's go back to using master. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-09build-system: deal with libgit2 versions 1 and laterGravatar Dirk Hohndel
We assumed everywhere that libgit would always have a 0.xx version number. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-04build-system: pull newer libxsltGravatar Dirk Hohndel
The older version stopped building for iOS. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-04-04iOS: add libxml2 buildGravatar Dirk Hohndel
I don't know why this is suddenly needed and wasn't before, but hopefully this fixes the broken builds on GitHub. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-27mobile UI: disable action button / drawer interactionsGravatar Dirk Hohndel
This is a feature that I never fully understood, but that apparently is causing the drawers to show up for people who are just trying to interact with the action button. The approach here is really drastic and crude, but in my testing it seems to work. Reported-by: Hartley Horwitz <hhrwtz@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-21mobile UI: stop the use of dark icon themeGravatar Dirk Hohndel
This was used very inconsistently and had more bugs than positive impact. See #2686 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-10translation tooling: fix script to not include Kirigami stringsGravatar Dirk Hohndel
Not sure when it started doing that - we don't want those in our translations, I believe. Also, we appear to suddenly get problems with too many numerus lines unless the existing translation is deleted, first. Very strange. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-03-07travis build-scripts: update containerGravatar Christof Arnosti
While the project doesn't use Travis anymore, these scripts are indeed useful when building locally, so it makes sense to keep them current and working. Signed-off-by: Christof Arnosti <charno@charno.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-23build-system: use working version of Breeze iconsGravatar Dirk Hohndel
As of today some of the icons that we need are no longer in the git repoo but instead created via script. Instead of making this work everywhere, let's just use a working SHA... Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-02-03android: use non-broken version of qt-android-cmakeGravatar Dirk Hohndel
A recent merge upstream causes build faiilures because the PROJECT_VERSION variiable isn't defined. I can't figure out how to make sure that it is defined correctly, so hack around that by using the version prior to that merge. See https://github.com/LaurentGomila/qt-android-cmake/issues/33 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2020-01-24scripts: expand build.shGravatar jan Iversen
Add option "-src-dir <source directory>" to build options. When calling build.sh without -src-dir it uses src/subsurface as usual, but when called with -src-dir <source directory>, it uses src/<source directory> as source basis. This is a needed option, when working with "git worktree", which is used when working on different branches in parallel (e.g. master and my-feature-branch), because it allows a build directory in each worktree, and thus much faster when switching work. Signed-off-by: jan Iversen <jan@casacondor.com>
2019-12-24fixed typo in commentGravatar Alexander Kjäll
Signed-off-by: Alexander Kjäll <alexander.kjall@gmail.com>
2019-12-24build-system: correct spelling error in build.shGravatar jan Iversen
the location of libdivecomputer is not subsurface/llibdivecomputer Correct spelling error. Signed-off-by: Jan Iversen <jan@casacondor.com>
2019-12-12build system: make INSTALL_ROOT depend on BUILD_PREFIX as wellGravatar Dirk Hohndel
This makes things more consistent. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-12build system: fix most shellcheck warningsGravatar Dirk Hohndel
A couple are still there, but this was the low hanging fruit. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-12build system: do something more reasonable if subsurface is a symlinkGravatar Dirk Hohndel
This actually changes behavior compared to what we did before. But it seems reasonabel. If ./subsurface is a link to a different directory, then assume that we want a true out of tree build in the current directory. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-12build-system: allow shared source across multiple hostsGravatar Dirk Hohndel
This attempts to allow sharing a host directory across multiple builds, target use case is to have a shared source directory on a VM host and be able to build from that in a number of VMs without those builds stepping on top of each other. Instead of subsurface/build, subsurface/mobile-build, subsurface/libdivecomputer/build, use a prefix path to allow having true out of tree builds. The one shortcoming is that the autotools need to be run in the libdivecomputer directory - that means this will be run on the first system that starts a build. But that seems to cause no harm in my testing. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-12-07GitHub Actions: deal with case sensitive file systemGravatar Dirk Hohndel
Sadly, there's an explicit change in the sources to of QtConnectivity that requires this workaround when running the build on a case sensitive file system. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: work around bug in Ubuntu 14.04 docker base imageGravatar Dirk Hohndel
Right now in the Ubuntu 14.04 base image for Docker the file /etc/apt/preferences.d/ubuntu-esm-infra-trusty doesn't exist. Subsequently, apt-get update enables ESM, but since we don't have a license to use that upgrades / installs from ESM fail. This workaround simply ensure that there is such a file pinning ESM to never be used. With that, the creation of our image should succeed again. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-28GitHub Actions: add two stage MXE container buildGravatar Dirk Hohndel
Based on ideas from Anton - both the basic building of containers in the first place as well as the workaround for the 6h build limit. Because GitHub Actions are limited to 6 hours we split the creation of the MXE container into two steps and push the intermediary container after stage 1 to docker hub. Right now each of the steps takes about 3.5 hours, so hopefully even with changes in the future this will continue to work. This commit also introduces use of docker hub instead of GitHub's own registry (since strangely right now GitHub actions cannot run containers from GitHub's private registry). In order for this to work, we need to have the docker credentials in secrets in GitHub. As a result, only people who can create branches in our repository can easily test changes to the container images. Others can modify the code to use a different docker hub account and provide those secrets in their own GitHub account. Not ideal, but of course we cannot allow every pull request to potentially overwrite docker images in our "official" docker hub account. Suggested-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-11-08scripts: update get-deps to allow clean buildGravatar jan Iversen
libssh2 depends on openssl, therefore it is important that openssl is build before libssh2. The old get-deps would cause errors in 2 situations: 1) In a clean build, make of libssh2 would fail 2) In a normal build, where openssl changed version, make of libssh2 would depend on old build. Signed-off-by: Jan Iversen <jan@casacondor.com>
2019-10-28Mobile: add circle around the side actionsGravatar Dirk Hohndel
That seems slightly more visually pleasing. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-28Mobile: make the action button widerGravatar Dirk Hohndel
This makes it hard to fat finger the side buttons. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-14GitHub Actions: first CI/CD build for Mac based on GitHub ActionsGravatar Dirk Hohndel
This feature is in beta right now and might change without notice, but instead of dealing with the broken Travis Mac builds, this does seem progress. The build artifact seems to work, but it's a bit more painful to get to. Go to https://github.com/Subsurface-divelog/subsurface/actions and click on the corresponding run - it's then in the top right corner under Artifacts. The one oddity is that after unzipping the file you need to manually make Contents/MacOS/Subsurface executable. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-14Desktop: update to Grantlee 5.1Gravatar Dirk Hohndel
Also make sure Grantlee still compiles with Qt 5.13 by cherry picking a commit that was added after the v5.1.0 release. In order to identify this commit as comming from the build automation we temporarily override the user name and email address. As a side effect this also makes this work on Travis. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-14Mobile: pick icons depending on themeGravatar Dirk Hohndel
QML has ways to style icons - and we use that for the main theme color, but it doesn't seem to work (anymore?) for the edit and save icons. Instead of tracking down what changed there, simply switch between icons with different foreground color, depending on theme. All the other icons seem to work well in all three themes. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-14Travis: test mobile build under Linux-Trusty-Qt-5.12Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-14Revert "Windows build: Changesto build using mxebased hidapi,libusb and ↵Gravatar Dirk Hohndel
grantlee" This reverts commit 60e63afb8219ca22001a4d1c5c0e6a7e27af89d5. I merged this to early without paying attention to the fact that this needed an updated build container as well. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: another kirigami hack to make toolbar workGravatar Dirk Hohndel
Without this the font size and positioning of the toolbar is broken. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: ensure consistent path when accessing arrow iconsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: add another Kirigami hack so we can fix the Back menu entryGravatar Dirk Hohndel
Kirigami isn't picking up our font for the Back entry in sub menus. Also, we still don't get a back button icon on Android. This will allow us to work around that. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: hack around missing icons in the toolbarGravatar Dirk Hohndel
This looks extremely fishy to me, but it does seem sufficient to get the forward and backward buttons to show up in the toolbar. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: hack around toolbar theme issueGravatar Dirk Hohndel
Whatever I try, the toolbar background is always based on the 'active' color set in qtquickcontrols2.conf, not on anything that I can set in QML code. So in an effort to brute-force the issue, this hardcodes the subsurfaceTheme value in the toolbar UI code of Kirigami. To make this easier, this (and one of the other hacks) is added to the existing kirigami.diff. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13build-system: update the mobile components scriptGravatar Dirk Hohndel
The hack to remove the action button caused situations where the action button didn't return. Let's skip that for now. All the other fixes appear to still be needed. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Mobile: update Kirigami to v5.62Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-13Windows build: Changesto build using mxebased hidapi,libusb and grantleeGravatar Paul Buxton
Remove hidapi from manually built components and use the mxe based one instead. Remove libzip as that is handled by mxe packages. Update version of grantlee used to build with qt 5.13.1. Also hide vscode files from git. [Dirk Hohndel: combined two commits, cleaned up the commit message and removed one now incorrect comment line from mxe-based-build.sh] Signed-off-by: Paul Buxton <paulbuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-05Android: switch to latest OpenSSLGravatar Dirk Hohndel
If we update all this, we might as well go to the latest. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-10-05builld-system: switch Android to Qt 5.13.1Gravatar Dirk Hohndel
This fixes the SSL issue with Android 5.x/Lollipop. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-23AppImage: Fix path of machine-id in dbus libraryGravatar Paul Buxton
When building dbus within the appimage, cmake picks up the installation path of various files dbus uses through the GNUInstallDirs package, however this doesn't work under the appimage build. So we replace the variable with the normal location of this file. Signed-off-by: Paul Buxton <paubuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-23AppImage: Fix missing libssl1.1Gravatar Paul Buxton
Add ssl to the AppImage build. Add helper script to fetch required dependancies. Update docker build container used. Signed-off-by: Paul Buxton <paubuxton.mail@googlemail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-05Travis: build Subsurface AppImage against Qt 5.12Gravatar Dirk Hohndel
For this we need our own hand crafted trusty container with Qt 5.12, including QtWebKit and an updated cmake and libdbus, as well as already build googlemaps plugin, grantlee and libgit2. At the same time stop uploading the Subsurface AppImage in the traditional trusty build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-05build-system: add -quick flag for build.shGravatar Dirk Hohndel
With this flag we assume that we don't need to rebuild grantlee and googlemaps. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-09-05build-system: add Dockerfile for Qt 5.12 on TrustyGravatar Dirk Hohndel
We'll use this to create a better AppImage on Travis. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>