summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
AgeCommit message (Collapse)Author
2017-09-04remove Marble from packaging and build scriptsGravatar Lubomir I. Ivanov
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> --- please note, that i have no way to test most of the scripts ATM.
2017-08-26cmake: try to find the Googlemaps plugin on LinuxGravatar Dirk Hohndel
Different flavors of Linux put this in different subdirectories. Just have cmake find the plugin for us. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-08-25Enable googlemaps plugin from build directory on LinuxGravatar Dirk Hohndel
With this change, when running Subsurface from the build directory, it should find a googlemaps plugin that was installed into the install_root. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-08-02Mac build: install googlemaps pluginGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29Mac install: add missing esri pluginGravatar Dirk Hohndel
Thanks to Lubomir for figuring what was missing! Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-28cmake: install QML components for Subsurface as wellGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-28cmake: only install Marble files when we use MarbleGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-28cmake: add the Quick, Location, QuickWidgets dependenciesGravatar Lubomir I. Ivanov
Applies only to DesktopExecutable for now. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-07-15Mac build: correctly deal with no printingGravatar Dirk Hohndel
Including working around a weird hack to install the Grantlee plugins. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30BLE: require Qt 5.6 and suggest Qt 5.9.1Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-24Enable BLE on AndroidGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-24Very early and likely quite broken BLE GATT codeGravatar Linus Torvalds
This is some very early and hacky code to be able to access BLE-enabled dive computers that use the GATT protocol to send packets back and forth (which seems to be pretty much all of them: a vendor-specific GATT service with a write characteristic and a notification characteristic for reading). For testing only. But it does successfully let me download dives from my EON Steel and my Scubapro G2. NOTE! There are several very hacky pieces in here, including just "knowing" that the write characteristic is the first one, and the notification characteristic is second. The code should actually check the properties rather than have those kinds of hardcoded assumptions. It also checks "vendor specific" by looking at the UUID string representation, and knowing that the standard ones start with zero. Crazily, there doesn't seem to be any normal way to test for this, although I guess that maybe the uuid.minimumSize() function could be used. There are other nasty corners. Don't complain, send me patches. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-11CMakeLists.txt: Remove SmartTrak import optionsGravatar Salvador Cuñat
Remove SmartTrak import options from Subsurface's CMakeLists,txt, as a first step to keep the importer apart from the main application.
2017-05-27Android build: rely on KEYSTORE environment for release buildGravatar Dirk Hohndel
With the gradle build it seems we automatically get a Debug build unless the keystore is defined. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-27Don't use the deprecated CMake variableGravatar Thiago Macieira
The *_VERSION_STRING variable has been deprecated in Qt since 5.1.0. Use the non-deprecated variable instead (which is not a string). Qt 5.9.0 has a bug in the deprecated variable. Since it's deprecated, it's probably not going to be fixed until 5.9.1. See https://bugreports.qt.io/browse/QTBUG-60936 Signed-off-by: Thiago Macieira <thiago@macieira.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-27Android build: Add BUILDTOOLS_REVISIONGravatar Jan Mulder
The used cmake toolkit for building the Android Subsurface-mobile app (qt-android-cmake) recently moved away from compiling with Ant in favor of Gradle. The most recent Android SDK will not support Ant any more. This calls for the addition of the Android SDK BUILDTOOLS_REVISION define to the cmake of Subsurface-mobile. Without this, the build will fail. The value has to be set to an existing directory in .../android-sdk/build-tools/ Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-04-01QML UI: we now depend on QuckControls2Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-01QML UI: Fully port dive edit to Kirigami2Gravatar Marco Martin
Completely adapt to the api changes of OverlaySheet in Kirigami2 in order to achieve the same look and behavior for the dive edits that had with kirigami1 Port most components to QtQuickContrls2, except comboboxes in the dive edit sheet that will need a new control type Signed-off-by: Marco Martin <notmart@gmail.com>
2017-03-24Fix double to int truncation in C++ codeGravatar Jeremie Guichard
Wfloat-conversion enabled for C++ part of the code Fix warnings raised by the flag using lrint Original issue reported on the mailing list: The ascent/descent rates are sometimes not what is expected. E.g. setting the ascent rate to 10m/min results in an actual ascent rate of 9m/min. This is due to truncating the ascent rate preference, then effectively rounding up the time to reach each stop to 2s intervals. The result being that setting the ascent rate to 10m/min results in 20s to ascend 3m (9m/min), when it should be exactly 18s. Reported-by: John Smith <noseygit@hotmail.com> Reported-by: Rick Walsh <rickmwalsh@gmail.com> Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
2017-03-09Fix potential double/float to int rounding errorsGravatar Jeremie Guichard
Not using lrint(f) when converting double/float to int creates rounding errors. This error was detected by TestParse::testParseDM4 failure on Windows. It was creating rounding inconsistencies on Linux too, see change in TestDiveDM4.xml. Enable -Wfloat-conversion for gcc version greater than 4.9.0 Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
2017-02-25Move CMake variables printing into a utility macroGravatar Jeremie Guichard
Added cmake_variables_helper.cmake providing 2 helpers - print_variable - print_all_variables Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
2017-02-24Use SUBSURFACE_TEST_DATA definition to point to test data dirGravatar Jeremie Guichard
Update tests with a (compile time) option SUBSURFACE_TEST_DATA, pointing to test data base path. It is needed for cross compilation cases. SUBSURFACE_TEST_DATA is set to SUBSURFACE_SOURCE by default, or configurable via cmake option -DSUBSURFACE_TEST_DATA="...". Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
2017-02-03Fix build breakage with earlier Qt versionsGravatar Dirk Hohndel
In order to get the translations right for Windows we now explicitly pull in a lot more translation files - some of which don't exist in earlier Qt versions. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-22QML UI: allow building Subsurface-mobile on desktopGravatar Dirk Hohndel
Since we manually track Kirigami we need to compile the desktopicon.cpp file when not building on Android or iOS. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-21Revert "QML UI: build against latest Kirigami"Gravatar Dirk Hohndel
This reverts commit a842e44b685dbb7e34df317a8beacff747cee6bd.
2017-01-16build.sh: if new enough libgit2 is installed, use itGravatar Dirk Hohndel
Right now this is only designed for Linux where current distros all should have a new enough libgit2 (and our instructions tell people to install this with system tools, so we should also use it). Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-03CMake dependency fixGravatar Dirk Hohndel
With this the auto generated headers should be ready before filtermodels.cpp needs them Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-01CMake: more changes to a simple conditionalGravatar Dirk Hohndel
It seems the CMake versions on Linux and Mac disagree about what might be the correct way to use parenthesis in a mixed AND/OR conditional. This may seem overkill, but it made both CMake versions happy. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-01Mac build: make std C++ lib hack catch more situationsGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-01-01Mac build: hack to get the correct std C++ lib on LionGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-12-30Start transition from QWebKit to QWebEngineGravatar Robert C. Helling
This removes all references to WebKit if cmake option USE_WEBKIT is enabled. For the user manual it changes it to WebEngine (seems to work for me). Similar for the Facebook connection (minus a reference to a cookie jar). This I could not test at the moment, as I wrote this on a train. Printing does not work, it is a null operation at the moment. Currently, large parts of of the printing code are commented out as there is no direct way to access page elements in WebEngine. It seems this needs to be done via Javascript (with a callback invoked). There is new functionality in WebEngine to render a view to a PDF file but this needs more work (and probably some thoughts towards page breaks). Signed-off-by: Robert C. Helling <helling@atdotde.de>
2016-12-27QML UI: build against latest KirigamiGravatar Dirk Hohndel
But of course this doesn't work, yet. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-09-22Add commented out hack to dump all CMake variablesGravatar Dirk Hohndel
I use this all the time when debugging CMake issues. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-09-22Fix building of Facebook supportGravatar Dirk Hohndel
No idea when this got broken. Fix seems like a hack as that variable should get set in the plugin CMakeLists.txt. But it seems to work, so "whatever". Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-09-22Revert "Add a simple cp2130 libusb driver"Gravatar Dirk Hohndel
This reverts commit 93ef223a3131db838abc7c390ddce3fae8be5f7c.
2016-09-18Add a simple cp2130 libusb driverGravatar Anton Lundin
This adds a simple cp2130 userspace driver. Its probably unusable in the real world but its a great base to build upon. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-28Android build: don't try to bundle libssh2, eitherGravatar Dirk Hohndel
Since we don't link against it, no need to bundle it. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-24Android build: try to create APK that works on Android 7.0Gravatar Dirk Hohndel
It appears that instead of statically linking against ssl/crypto/ssh2, you instead have to dynamically link against it and then bundle the library in the APK. The documentation is not 100% clear and I don't have an Android Nougat device to test this with, so for now this is an attempt. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-18Don't build Kirigami as a libraryGravatar Dirk Hohndel
Just link it directly into Subsurface-mobile. That's what we already do with the qmake file for iOS, now the cmake based builds do the same. This should remove a lot of issues. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-14Don't build kirigami in the source treeGravatar Dirk Hohndel
Instead build it in its own build tree, where it belongs. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-14Use kirigami built in static modeGravatar Marco Martin
Now kirigami needs to be built with a C++ plugin. In cases of mobile operating systems such as iOS (and in a lesser measuse, Android) having a proper plugin loaded at runtime may be difficult, so statically link it together with all of its qml files compiled as a qresource inside the static library. Signed-off-by: Marco Martin <notmart@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-07-23Fix build (link) on openSUSE builds (maybe due to recent cmake version)Gravatar Guillaume GARDET
Signed-off-by: Guillaume GARDET <guillaume.gardet@free.fr> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-06-23Remove unused cmake flagGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-06-23Build Subsurface c++ as c++11 codeGravatar Anton Lundin
With Qt 5.7, they started to require c++11 support, and in 5.6.1 some nullptr's showed up in QtAndroidExtras/qandroidfunctions.h, so now we need to compile our c++ code with c++11 support in our compiler. As Thiago pointed out, this effectively "downgrades" GCC 6 from c++14 support to c++11. Signed-off-by: Anton Lundin <glance@acc.umu.se> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-04-04Move subsurface-core to core and qt-mobile to mobile-widgetsGravatar Dirk Hohndel
Having subsurface-core as a directory name really messes with autocomplete and is obviously redundant. Simmilarly, qt-mobile caused an autocomplete conflict and also was inconsistent with the desktop-widget name for the directory containing the "other" UI. And while cleaning up the resulting change in the path name for include files, I decided to clean up those even more to make them consistent overall. This could have been handled in more commits, but since this requires a make clean before the build, it seemed more sensible to do it all in one. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-03-16Debug reminder: how to get more verbose details out of cmakeGravatar Jeroen Massar
Signed-off-by: Jeroen Massar <jeroen@massar.ch> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-03-05Android build: automate setting the right version numberGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-01-08Correctly handle SubsurfaceMobileGravatar Tomaz Canabrava
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-01-08Untangle Library LinkageGravatar Tomaz Canabrava
with the adittion of gpslistmodel/location, the libraries qt-models had a direct dependency on subsurface-core, and subsurface-core had a direct dependency on qt-models, this is bad. Moving a bit of code around I'v managed to clean this out, and also to clear a bit of uneeded code (GpsTracker and gpsTracker where basically the same thing.) Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-01-07Create GpsListModel in order to be able to display GPS fixesGravatar Dirk Hohndel
This will allow us to visualize the GPS fixes that are currently stored in the QML UI. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>