Commit graph

780 commits

Author SHA1 Message Date
Jan Mulder
6c872931d5 Android build: buildtools version is automatically detected
With commit 0d8fc7ef970e of qt-android-cmake, the buildtools version
is automatically detected. So do not try to pass it any more, as
this breaks the build.

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-06 21:53:02 +01:00
Dirk Hohndel
15c7ee5db0 MXE: respect an MXE build type already defined
And use that to have our Travis build still work with the existing MXE
build container as well as the even older, pre-compiled MXE binaries
used in the windows build.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-14 17:06:10 +08:00
Dirk Hohndel
cb89ee49a3 MXE: switch to i686-w64-mingw32.shared.posix.dw2
This allows us to build QtWebKit again.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13 20:43:13 -08:00
Dirk Hohndel
9da3988ec6 Android: pick the correct C++ runtime
Yet another fallout of the switch to the NDK toolchain.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13 17:17:54 +08:00
Dirk Hohndel
c608cfd643 Android: build for android-16
That's the minimum platform that we have used for a while now,
corresponding to Android 4.1 and newer (i.e., quite ancient).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13 16:45:29 +08:00
Dirk Hohndel
a58cd3eb13 Android: explicitly build with gcc
Our Android build currently fails with clang.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13 15:51:17 +08:00
Dirk Hohndel
1868bd38b6 Android: qt-android-cmake no longer ships a toolchain file
Instead use the one that comes as part of the NDK.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13 13:16:29 +08:00
Dirk Hohndel
651f63282f build-system: switch back to upstream qt-android-cmake
And in the process use our script to do the work.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-27 10:38:39 -04:00
Stefan Fuchs
45f4dac70a mxe-based-build.sh comments: Also build libftdi1
Add libftdi1 in comments in MXE build script.

[Dirk Hohndel: and mention that it is possible to build without it]

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-23 07:43:16 +01:00
Salvador Cuñat
70ffdd7624 make mdbtools build out-source tree
mdbver.h is created on the fly by configure script and placed in our
$BUILDDIR/include, while the compiler search for it in
$SOURCEDIR/include. This could probably be achieved fine-tunning
configure script but ... well, it works.

Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2018-10-15 06:35:14 -04:00
Dirk Hohndel
dc094c5757 MXE: enable building against userspace FTDI drivers again
This still doesn't seem to work as expected and needs more testing.
Also, it can be turned off via command line argument

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-07 14:00:45 -07:00
Dirk Hohndel
f05d917a37 MXE: use libgit2 from MXE
MXE has had a new enough libgit2 for a while now. No reason anymore to
build our own.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-07 14:00:45 -07:00
Dirk Hohndel
26de89364c Revert "Windows: build against user space FTDI library"
This reverts commit 53341c037d.

The commit isn't wrong, but it breaks Travis and I can't seem to get the
newer MXE build to work on Travis. So while I figure out how to work
around THAT, let's just revert this and come back to it once Travis is
ready.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-02 13:23:29 -07:00
Dirk Hohndel
53341c037d Windows: build against user space FTDI library
This needs more testing, but should provide an alternative to relying on
the Windows FTDI driver.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-09-30 08:28:16 -07:00
Dirk Hohndel
f0ecd1fbb7 Windows: enable BLE support
This currently requires the wip/win branch of qtconnectivity. Eventually
this should be merged into upstream Qt.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-09-30 08:28:16 -07:00
Robert C. Helling
43c9178bf7 Mac: Turn on automatic GPU switching
We are not OpenGL heavy so this saves battery life.

Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-09-28 07:34:50 -07:00
Dirk Hohndel
83079c92df build-system: fix appdata creation on OBS
Build systems that run from tar balls and not git fail to create valid
.appdata.xml This solves the problem for tar balls that we create for
OBS via our own make-package script. It doesn't solve the problem for
Arch or Gentoo who I believe take our tar files created via git archive.
One way to fix this would be to change the process by which I create
those tar files, I guess.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-09-20 10:02:54 -07:00
jan Iversen
5dd0981961 core/tests: remove QSettings from testgitstorage
update testgitstorage.cpp to use qPrefProxy and qPrefCloudStorage
remove core/prefs-macros.h since it is unused

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-25 11:49:47 -07:00
jan Iversen
ebc0e6d3f3 core/tests: merge Animations and add vars. to qPrefDisplay
Add class variable tooltip_position to qPrefDisplay
Add class variable lastDir to qPrefDisplay
qPrefDisplay is updated to use new qPrefPrivate functions
Adjust test cases incl. qml tests

qPrefAnimations only has 1 variable, that really is a display variable
Merge the variable into qPrefDisplay, to simplify setup (and avoid loading
extra page in qml).

correct theme to save in correct place, and make it a static
class variable

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-25 11:49:47 -07:00
jan Iversen
da4ced9bdf core: remove SettingsObjectWrapper.*
remove unused files SettingsObjectWrapper.*

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-15 16:11:39 -07:00
jan Iversen
4a7864444b core: create qPrefGeneral from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-14 09:09:06 -07:00
jan Iversen
881395318c core: create qPrefPartialPressureGas from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-14 07:12:41 -07:00
jan Iversen
3cd698361c core: create qPrefGeocoding from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-13 15:04:50 -07:00
jan Iversen
63fa532b15 core: create qPrefLanguage from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-13 11:49:32 -07:00
jan Iversen
2b11fd4cc8 core: create qPrefLocationService from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct prefs
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-12 11:30:19 -07:00
jan Iversen
b98ba9ba94 core: create qPrefTechnicalDetails from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-12 07:36:10 -07:00
jan Iversen
e673a3558e core: create qPrefUpdateManager from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-09 08:45:02 -07:00
jan Iversen
357510b9cd core: create qPrefDivePlanner from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-08 14:29:50 +02:00
Dirk Hohndel
289e1cc37e Android: whitespace change to build.sh
This indents the code that is only executed when we aren't in 'quick'
mode. git show -w will show that there is no code change in this commit.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05 20:39:27 -07:00
Dirk Hohndel
35ffd5f71e Android: add -quick flag to build.sh
This allows us to skip all the checking / building of dependency
libraries. This also allows us to pass extra arguments to the make
command by separating them from the arguments to build.sh with '--'.

This commit is easier to understand because it didn't increase the
indent in the large block of code that is now only executed if we aren't
in 'quick' mode. That will be fixed in the next commit that is
whitespace only.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05 20:39:21 -07:00
Dirk Hohndel
7b4d661ff2 iOS: quiet verbose warnings for libzip
And don't try to build manuals, regression tests and examples, while we are at
it.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05 17:54:01 -07:00
Dirk Hohndel
81ca29e688 Android: use our fork of qt-android-cmake
This tells androiddeployqt to look at the qml modules to find all
dependencies.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05 15:09:44 -07:00
Dirk Hohndel
32a630ece3 Android: build latest libzip
Small hacks needed, but otherwise this seems to work.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05 15:08:19 -07:00
Dirk Hohndel
d81a2c812b iOS: fix libzip build instructions
Recent libzip no longer supports autotools.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-04 15:07:04 -07:00
Dirk Hohndel
93983b7e4c Android: build libzip 1.1.3
Switching to GitHub as source for libzip means that we need to encode
the version number differently. Newer versions of libzip don't compile
cleanly on Android and this one seems new enough.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-04 14:32:16 -07:00
jan Iversen
54335e1ec6 core: create qPrefUnit from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-08-02 08:59:56 -07:00
jan Iversen
f4f798f8dd core: create qPrefProxy from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct prefs
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-30 07:43:22 -07:00
jan Iversen
e0f1817fdc core: create qPrefFacebook from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-27 12:36:20 -07:00
jan Iversen
0002cd2d20 core: create qPrefDiveComputer from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct diveComputer
- set function have set_<name>
- signal function have <name>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way
SettingsObjectWrapper handles it) secures the same storage name
is used. Having the set/get/load/sync functions grouped together
makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-25 08:35:04 -07:00
jan Iversen
4b68329c9d core: create qPrefCloudStorage from SettingsObjectWrapper
Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name> (from struct preferences>)
- signal function have <name>_changed (from struct preferences>)

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way SettingsObjectWrapper
handles it) secures the same storage name is used. Having the set/get/load/sync
functions grouped together makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production
Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-21 07:49:25 -07:00
jan Iversen
3c3729711c core: remove QSettings in qPref* and use a shared variable
Add qPrefPrivate class which contains one QSettings variable,
delete QSettings from qPref* class definitions

this secures there are only instance of QSettings
(QSettings needs to be in a QObject class to work)

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-18 10:40:08 -07:00
jan Iversen
3a314c3dec core: copy Animations from SettingsObjectWrapper to qPref as its own class
Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name in struct preferences>
- signal function have <name in struct preferences>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way SettingsObjectWrapper
handles it) secures the same storage name is used. Having the set/get/load/sync
functions grouped together makes it easier to get an overview.

REMARK: this commit only defines the class, it is not active in production
Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 19:07:49 +02:00
jan Iversen
fe38a768f2 ssrf: move functions from mobile-helper to mobile-main
Move few mobile only functions from mobile-helper to mobile-main

remove subsurface-mobile-helper

file structure is now subsurface-*-main.cpp + subsurface-helper.cpp

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-12 08:08:00 -07:00
Jocke
8106e533ef Match openssl versions
The versions for openSSL in variables.sh and get-dep-lib.sh needs to match or we end up recloning the repo on every build.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Jocke
2fa7d3566b Add comment to variables.sh
Add a comment to the variables.sh file so we don't forget to update
qt version in the qt-installer-nontineractive file as well.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-12 07:58:08 -07:00
Dirk Hohndel
dc2f0f8e48 Travis: build Android against Qt 5.11.1
Instead of dealing with the challenges of downloading and installing the
official package (which really prefers to be run interactively and
frequently caused Travis failures) we get the pre-packed bits from our
cache instead.  Less data to transfer, quicker install.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-09 22:20:18 -07:00
Dirk Hohndel
c62ce43ecf Android: update to use Qt5.11.1
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-09 16:01:29 -07:00
jan Iversen
e5dace2233 core: copy Display from SettingsObjectWrapper to qPref as its own class
copy Display from SettingsObjectWrapper to qPref as its own class
file. Update Display to use a common load/sync scheme.

Update set/get functions to follow common name scheme:
- get function have same name as in struct preferences
- set function have set_<name in struct preferences>
- signal function have <name in struct preferences>_changed

one class one .h/.cpp is the C++ idiom. Having load/sync of each
variable in 1 functions (in contrast to the distributed way SettingsObjectWrapper
handles it) secures the same storage name is used. Having the set/get/load/sync
functions grouped together makes it easier to get an overview.

REMARK: this commit are made to show the use of the low level LOADSYNC macros, which will
be used for special cases. This class is NOT linked into the live system.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-07 09:44:06 -07:00
Dirk Hohndel
e0bb8eab15 build-system/macOS: update the signing script
This really isn't useful for anyone but me as I create official binaries.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-06 22:16:47 -07:00
Dirk Hohndel
80bc47fa13 build-system/macOS: update make-package.sh to use macOS 10.11 as base version
Qt 5.11 no longer supports macOS 10.10.
Also use the new long path to identify the SDK.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-06 17:22:35 -07:00
Joakim Bygdell
5fc2e0f80f Shellcheck
Code cleanup using shellcheck.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-04 13:11:21 -07:00
Joakim Bygdell
b1de856595 Update android build env.
Update the scripts used to build subsurface-mobile for
andriod to use the variables file.
Removed checks for obsolete Qt versions.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-04 13:11:21 -07:00
Joakim Bygdell
e6e9470f81 Add build variables file
This adds a file that contains the variables used in
the android-build-wrapper and build scripts.
This gives a single location for setting which versions
of Qt, NDK and SDK we use when building the mobile app on linux.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-04 13:11:21 -07:00
Dirk Hohndel
63297562e6 iOS: find translations again
commit ec0511e824 ("ios: concentrate build dirs") moved the translations around
without updating the way they are accessed, causing our release 2.1.0 on iOS to
not be localized.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-03 14:58:00 -07:00
Dirk Hohndel
15cbbc8cf9 macOS: we don't need to bundle QtDBus
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-03 14:58:00 -07:00
Dirk Hohndel
5a22611c33 macOS: we no longer need libssh2
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-03 14:58:00 -07:00
jan Iversen
d02a03983d core: add qPref.h_and qPrefprivate.h
add 2 header files and 1 cpp file (qPrefPrivate does not have an implementation)

The rewrite/consoliadation of SettingsObjectWrapper, qmlmanager, qmlpref and planner
needs a place to put common private parts (qPrefPrivate) and 1 common class (qPref).

Signed-off-by: Jan Iversen <jani@apache.org>
2018-07-04 05:32:30 +08:00
Dirk Hohndel
d6b043cd37 build-system: tell Travis to wait longer for downloads
But simply ignore when building outside of Travis.
Of course since we are building Android in a container, we need to first pass
the environment variable to the container...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-03 14:24:18 -07:00
Dirk Hohndel
d35c3c0fbf build-system: detect libdivecomputer changes in MXE build
Automatically trigger a rebuild of libdivecomputer if it has changed
since the last build.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-06-25 20:21:13 +08:00
Anton Lundin
d853c477b7 build-system: Only run autoreconf when needed
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-06-22 02:47:58 -07:00
jan Iversen
ff88e7ee99 mobile: remove MapWidget from mobile-resources.qrc
remove MapWidget entries from mobile-resources.qrc, and
reference map-widget.qrc in Subsurface-mobile.pro for iOS

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-21 20:27:58 -07:00
jan Iversen
38bf351cc1 mobile/ios: correct whitespaces to coding standard
correct whitespaces to coding standard
in translations.qrc, qml.qrc and deployment.pri

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-21 04:25:21 +09:00
jan Iversen
d0e9f62624 mobile: add qmlprefs class
add class to cmake and pro
register class

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-15 14:12:14 -07:00
jan Iversen
abc3125b8e ios: add -all to build.sh
-all will build debug and release for the choosen architectures
armv7,arm64,x86_64 without extra parameter and only
x86_64 with -simulator

Use -all to prebuild all 6 variants we support.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-11 09:45:12 -07:00
jan Iversen
ec0511e824 ios: concentrate build dirs
update build.sh to make all builds in build-ios
to keep the git dir as clean as possible

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-09 17:18:41 +02:00
jan Iversen
fe7655155f ios: share clones with desktop
Change src dir for clones to subsurface/.. in order to share with
desktop

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-09 17:18:41 +02:00
jan Iversen
aab8f0dcf6 profile: make profile self contained
move qmlprofile.* to profile dir, to keep all parts of the
widget in one place.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-09 17:16:53 +02:00
jan Iversen
64c0881e9f mobile: decoupled ssrf.qrc and mobile.qrc
remove /subsurface.qrc from .pro
copy missing mapwidget icon references to mobile-resources.pro

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-08 17:04:43 +02:00
jan Iversen
771bd4bce4 iOS: move get-dep-lib outside ARCH loop
Fetch all 3rd party libs before entering ARCH loop

Signed-off-by: Jan Iversen <jani@apache.org>
2018-06-07 18:43:17 +02:00
Berthold Stoeger
36b9e5e31e Cleanup: fold core/helpers.h into core/qthelper.h
helpers.h included qthelper.h and all functions declared in helpers.h
were defined in qthelper.h. Therefore fold the former into the latter,
since the split seems completely arbitrary.

While doing so, change the return-type of get_dc_nichname from
"const QString" to "QString".

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-06-04 08:50:10 -07:00
jan Iversen
a658f80e27 iOS: updated launchscreen so it is more centered.
The text and icon was so low, that the page started to scroll on
an iPhone (at least on a model 6s).

Anchored Text to top, and icon to text.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-24 10:19:08 -07:00
jan Iversen
46ff506096 build-system: iOS only turn off specific warnings
Turning off all warnings (-w) was too radical.

Only turning off specific warnings.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-21 07:26:56 -07:00
jan Iversen
d7e31ebbcd iOS: get rid of ios/Subsurface-mobile
Having a split between ios and ios/Subsurface-mobile is just confusing
and without a practical reason

Move files from ios/Subsurface-mobile to ios and update .gitignore

Signed-off-by: Jan Iversen <jani@apache.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-20 11:35:28 -07:00
jan Iversen
16555e663b iOS: remove duplicate of deployment.pri
one deployment.pri is enough

Signed-off-by: Jan Iversen <jani@apache.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-20 11:35:28 -07:00
Dirk Hohndel
dce7e46766 Mac: don't try to copy libraries we got from Homebrew
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-19 21:22:31 -07:00
jan Iversen
95bfd3af29 iOS, supress warnings.
Changed .pro file to supress warnings
clang does not allow all of the issued warnings to be
supressed with -Wno-foo, so instead doing -w

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-19 14:05:23 -07:00
jan Iversen
090eb1ee34 iOS, remove linker warnings (version mismatch).
The Qt libraries are compiled as iOS 10.0, we link
as iOS 8.0, this is a problem waiting to happen. First
time we use a Qt function that uses a iOS 10.0 specific
function the app will crash.

Bumping iOS minimum version from 8.0 to 10.0
Removing the 76x icon, which are not valid from 10.0 and forward

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-19 14:05:23 -07:00
jan Iversen
ffdaba6c84 build-system: added get-dep-lib to android/build.sh
Integrated get-dep-lib in android/build.sh

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-18 16:58:16 -07:00
jan Iversen
77b9a62f7f iOS: added get-dep-lib to build.sh
Removed all 3rd party download/clone, and used common
get-dep-lib instead

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-17 11:16:50 -07:00
Anton Lundin
a2065334bb android-build: Remove old libgit2 special handling
And replace it with something that works on a modern cmake.

The upside with using the right linker, we get the symbols resolved
correctly so we don't need to regex the code.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
Anton Lundin
75205240df android-build: Stop installing ant, we're using grade
Since about a year ago qt-android-cmake shifted to using gradle instead
of ant, and the android sdk's stopped supporting ant to.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
Anton Lundin
05e6c2dfaa android-build: Simplify and correct
This simplifies the code and uses correct quoting for variables.

This also fixes the sha1-stampfile handling so that we don't build
libdivecomputer every time.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
Anton Lundin
a8c47cb75d android-build: Build googlemaps plugin same way as others
This reworks the googlemaps build to be more like the other builds, with
the same pattern and way of detecting what we need to do, and when we
need to rebuild it.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
Anton Lundin
d12e842c68 android-build: Use sed -i instead of home rolled variant
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
Anton Lundin
fa95a7c56a android-build: Use subsurface source variable
We already have a variable pointing to the source dir for subsurface, so
use it.

This way we can build out of tree, in any directory.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17 07:36:44 -07:00
jan Iversen
facb524585 iOS, update Info.plist.in note
Info.plist is no longer generated by qmake but by build.sh,
and it is more interesting to highlight the fact that it is
open software

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-17 07:29:49 -07:00
jan Iversen
b39e7ac281 iOS: update weigth... weight to avoid warning
Seems the pro file was forgotten with the rename of weightsysteminfomodel.h

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-11 07:37:18 -07:00
jan Iversen
8341165999 iOS: corrected ^space to tab
Corrected to use correct code style.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-11 07:23:08 -07:00
Dirk Hohndel
2c29cc96a3 Whitespace
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-10 20:46:02 -07:00
jan Iversen
1d5d7d0c47 iOS: cleaned/bumped versions
Made versioning identical to scripts/build.sh

Having the same version of 3rd party libraries across platforms
secures a more stable product.

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-10 20:43:22 -07:00
jan Iversen
6019688b98 iOS: removed local build of libxml2
script/build.sh uses the builtin libxml2 and do not build locally,
    updated build.sh and Subsurface-mobile.pro to to the same.

    sadly enough xslt is not distributed for iOS so it must be built.

    Apart from simplifying the script it saves build time

    Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-10 20:43:22 -07:00
jan Iversen
5aa5398624 iOS: removed local build of sqllite3
script/build.sh uses the builtin sqllite3 and do not build locally,
updated build.sh and Subsurface-mobile.pro to to the same.

Apart from simplifying the script it saves build time

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-10 20:43:22 -07:00
jan Iversen
a0030a488a iOS: build.sh does not run configure for libdivecomputer
In a "virgin" repo incl. libdivecomputer, starting by running
ios/build.sh caused an error in libdivecomputer,
because autoreconf was never run.

Changed build.sh to check if libdivecomputer/configure exist, if
not run autoreconf

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-10 20:43:22 -07:00
jan Iversen
ff15d48f69 iOS: Allow change of bundle identifier
This patch allows users to set a bundle identifier,
without opening Xcode (set as env. variable).

If the env. variable is not set (like e.g. on Travis) it defaults
to org....

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-10 20:40:45 -07:00
Murillo Bernardes
7d6a48b59f iOS: use recommended variable for bundle ID
We used to hard-code the bundle ID which meant that developers always had to
manually override the bundle ID in order to be able to sign the iOS app for
local testing.  With this change, the official builds will continue to work
without manually opening the project in Xcode, yet other developers will use
the Apple-recommended format in order to set their own bundle ID.

This is based on a suggestion by Murillo Bernardes.

See #1246

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-10 08:19:33 -07:00
jan Iversen
161e5e94fc iOS: update build script
Use git repos and checkout corresponding tags where possible.
Use more reliable servers to download source from.

[Dirk Hohndel: refactored Jan's original commit in #1241]

Signed-off-by: Jan Iversen <jani@apache.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-09 14:40:31 +02:00
jan Iversen
a351393739 iOS: update build instractions
Updated INSTALL to point at packaging/ios/README
Updated README to 'facts'
Deleted ios_build_instructions as they are covered in README

[Dirk Hohndel: refactored Jan's original commit in #1241]

Signed-off-by: Jan Iversen <jani@apache.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-05-09 14:40:31 +02:00
jan Iversen
c9cb95ba99 iOS, set lowest deployment target to 8.0
Define deployment target, instead of using user default.

iOS 8.0 is the oldest supported platform

Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-09 06:28:25 +02:00
Dirk Hohndel
9ef90daf77 Ubuntu build script update
Make sure we list the currently supported releases.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-29 15:49:04 -07:00
Dirk Hohndel
ddd5ec7f56 Android: fix error in build script
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-27 14:49:15 -07:00
Dirk Hohndel
b9e57dbeab iOS: fix typo in build script
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-27 11:54:01 -07:00
Dirk Hohndel
1dfac4cb74 Android: rebuild libdivecomputer if SHA changes
Just like we already do for iOS.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-27 11:52:48 -07:00
Dirk Hohndel
2137b21e1b iOS: allow building for the simulator & switch debug/release builds
It makes sense to be able to control this with command line options.
On Travis this avoids the signing problem and makes the build much faster.
Still should be enough to catch iOS breakage.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-24 15:47:25 -07:00
Dirk Hohndel
2cba24fa1a iOS: don't show all the libgit2 warnings
We aren't concerned about the code quality of libgit2 and with these warnings
the build log overflows.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-24 15:45:35 -07:00
Dirk Hohndel
09edf25366 iOS: build Release by default
And add -debug option to build.sh for debug builds.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-23 09:28:41 -07:00
Dirk Hohndel
f28266bb19 iOS: fix info.plist
Xcode happily accepted the incorrect plist syntax for a boolean and the app
did the right thing when installed locally - but once you upload to the
iTunes store the error causes that to fail.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-14 21:05:49 -07:00
Dirk Hohndel
27b921fb1d iOS: make logfile accessible to user
By creating it in the Documents path and setting the two magic keys,
iOS will make the log file available to the user.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-13 17:07:43 -07:00
Dirk Hohndel
f693678235 iOS: create our own OS support file
Up until now we just reused the macos.c file for convenience, hard coding a
specific file path that may or may not work on iOS.  Instead get the preferred
path from Qt and for this we need to be able to call into Qt, so this needs to
be a C++ file.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-13 17:07:43 -07:00
Dirk Hohndel
a529381af2 iOS: fix build script
The code for building libxml2 and libxslt was broken.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-04-13 17:07:43 -07:00
Berthold Stoeger
5afe1a53d8 Cleanup: Move *_loc formatting functions into new format.cpp file
qthelper.cpp is already quite voluminous. Move the recently
introduced localized versions of (v)snprintf() and put_format()
into their own translation unit.

Moreover, adopt C-style semantics for asprintf_loc(). This function
will be used to remove fixed-size buffers in core/plannernotes.c.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-04-09 11:29:43 -07:00
Murillo Bernardes
b257b7a027 ios: Link to static googlemaps library
Signed-off-by: Murillo Bernardes <mfbernardes@gmail.com>
2018-04-06 10:31:07 -07:00
Murillo Bernardes
882120ba65 ios: remove googlemaps unecessary multiple builds
googlemaps archive is a fat file already, containing
armv7, arm64 and x86-64, so no need to build it
multiple times.

Signed-off-by: Murillo Bernardes <mfbernardes@gmail.com>
2018-04-06 10:31:07 -07:00
Stefan Fuchs
02dcd219cf MXE Windows build script: Chance MXE make call in comment
In the comment/instruction how to build MXE add "libssh2" and "curl"
to the make call. This seems to be needed in newer versions of MXE.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-26 05:34:00 +03:00
Stefan Fuchs
bb922e8db2 MXE Windows build script: Do right build flavor also for googlemaps
Do the right build flavor also for the googlemaps plugin.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2018-03-26 05:34:00 +03:00
Dirk Hohndel
9e457e092c iOS: add MapLocationModel and corresponding helper
Thanks to Murillo Bernardes for reminding me to add the .h files as well.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22 07:34:46 -07:00
Dirk Hohndel
ce8cad615a iOS: build googlemaps
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-22 07:33:54 -07:00
Dirk Hohndel
0c91a1b8d2 Android build: switch to Qt 5.10.1
That's what we now use for the official binaries as well.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19 12:08:06 -07:00
Dirk Hohndel
6c3cd24ef8 Android/iOS build: get libxml2 and libxslt from GitHub
The xmlsoft.org links sometimes time out. Sadly, GitHub API gives us an
oddly named top level directory in the tar file, so lets strip that and
replace it with the "usual" name.

Also, for the "raw" tar files from GitHub we need to run autoreconf
ourselves.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-03-19 12:03:22 -07:00
Lubomir I. Ivanov
cdba35530b android/build.sh: build the googlemaps plugin
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2018-03-11 11:40:12 -07:00
Berthold Stoeger
cd5e17cf79 Cleanup: Unify qthelper.h and qthelperfromc.h
Since all qt-helpers are defined in qthelper.cpp, there seems to be
no reason to have two include files. By unifying the two files,
duplication and inconsistencies are removed. The C++-only part is
simply compiled away with #ifdefs.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2018-02-26 19:06:02 +02:00
Salvador Cuñat
f6cee2ca7e smtk-import: add windows building to travis-ci
Prepare the building script to suport travis or set other automated
builds, while keeping other options to manual builds.

In before_install script, create needed directories, and dowload
mdbtools sources.

Add smtk2ssrf build script to travisbuild.sh

Signed-off-by: Salvador Cuñat <salvador.cunat@gmail.com>
2018-02-24 13:42:01 -08:00
Jan Mulder
7e0e87cf78 Android build: use Qt 5.9.3
At least, now the Travis builds use the same Qt version as the
production builds from Dirk that go to the AppStores.

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-02-24 11:37:56 -08:00
Dirk Hohndel
23ac269a0a iOS build: add new file to qmake build
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-02-12 12:23:56 -08:00
Dirk Hohndel
4e2e48a8fb iOS build: install sqlite3.pc
Otherwise this gets rebuilt every time.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-02-12 12:23:40 -08:00
Dirk Hohndel
1c87925ab0 iOS build: remove desktop only models
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-02-12 12:23:18 -08:00
Dirk Hohndel
8d42d804ed iOS build: automatically build matching libdc
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-02-12 12:22:55 -08:00
Robert C. Helling
a15d0ec525 Preserve wiki pages about headless Subsurface from trac wiki
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2018-01-19 15:25:37 +01:00
Dirk Hohndel
b03c5a98d4 A few more updates to Copyright notices
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-30 08:25:13 -08:00
Dirk Hohndel
702ec37145 Android build: make androiddeployqt less verbose
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-26 12:32:33 -08:00
Dirk Hohndel
f4c1cef73b Android build: work around odd bug with cmake 3.10
For some reason it suddenly cannot figure out which build program
to use. This seems like a weird hack, but works.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-26 09:27:02 -08:00
Dirk Hohndel
4346aaa333 Android build: no point making the docs
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-26 09:24:35 -08:00
Dirk Hohndel
5eec251be8 Travis: hack around Android build failuers
For some reason accepting the licenses for the SDK appears to fail.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-24 13:50:59 -08:00
Dirk Hohndel
9df88f0145 Android build: reorder downloading Qt vs SDK
Since it's the SDK where things are failing, doing it this way makes the
turnaround time of my attempts to fix this faster. And in the larger
scheme of things, the order is irrelevant.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-24 13:50:59 -08:00
Stefan Fuchs
a11622623a Remove unused divesitepicturemodel from qt-models
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-12-13 05:48:20 -08:00
Dirk Hohndel
03e14fa2c3 Cleanup: constructLocationTags isn't used in Subsurface-mobile
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-08 16:29:49 +01:00
Dirk Hohndel
ef8b2e6bb7 Cleanup: rename file to avoid confusion
Depending on the tooling, both divesite.c and divesite.cpp would compile
into divesite.o.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-08 16:29:49 +01:00
Dirk Hohndel
7388a8120a Android build: fix android-build-wrapper.sh
I clearly had forgotten to update the Android specific scripts when
adding the libdivecomputer submodule.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-06 20:47:20 -08:00
Dirk Hohndel
9434c36b7f Android build: build the libdivecomputer submodule
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-06 19:02:58 -08:00
Dirk Hohndel
14348a8d9a iOS build: next attempt to sort versions
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-06 06:46:10 -06:00
Dirk Hohndel
afc1847591 iOS build: more robust way to determine Qt version
Suggested-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-05 20:05:16 -08:00
Dirk Hohndel
472592fe85 libdc: update MXE build
If the submodule isn't initialized, run git submodule init before
running submodule update. Also, ensure that the autotools are set up.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-04 15:07:23 -08:00
Dirk Hohndel
ee0341fd97 Enable building BLE dive computers on iOS
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-04 13:54:07 -08:00
Dirk Hohndel
31641c19bf libdc: fix iOS build script
Mis-counted directories and missed the submodule init call.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-04 12:53:43 -08:00
Dirk Hohndel
0ce44b8ed1 libdc: update the iOS build script for submodule
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-03 14:12:06 -08:00
Dirk Hohndel
25041be08c libdc: update the MXE build script for submodule
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-03 14:12:06 -08:00
Murillo Bernardes
f6d13374bd iOS: Enable location updates
Add Info.plist entries to enable location updates even in background.

Signed-off-by: Murillo Bernardes <mfbernardes@gmail.com>
2017-12-03 08:19:00 -08:00
Dirk Hohndel
2c9beec775 iOS build: clean up the launch screen
This contained left-overs from failed attempts to make it work.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-12-02 12:30:54 -08:00
Dirk Hohndel
625298a7b8 iOS build: add icon to launch screen
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 22:32:03 -08:00
Dirk Hohndel
87e05f4db8 iOS build: add option to build.sh to only update version
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:53:11 -08:00
Dirk Hohndel
31c005fa06 iOS build: enable BLE support in the code
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:52:09 -08:00
Dirk Hohndel
16607a66c4 iOS buils: new Launch xib
This still doesn't actually SHOW the logo...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:49:59 -08:00
Dirk Hohndel
38789f5a01 iOS build: add required explanation of BLE access permission
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:49:42 -08:00
Dirk Hohndel
c1bc77d086 iOS build: add iTunes artwork
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:49:01 -08:00
Dirk Hohndel
bca858a5d9 iOS build: call qmake in build.sh
This way we can avoid having to use Qt Creator (in preparation for
eventually testing the iOS build in Travis CI).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 21:48:15 -08:00
Dirk Hohndel
18d044d9dc iOS build: update icons
Latest xcode requires more and different(?) icons.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 14:56:39 -08:00
Dirk Hohndel
016b73872f iOS build: add a couple more imports to the build
The build process uses the dummy.qml file to determine which QML modules
to package. This ensures that Subsurface-mobile includes all its
dependencies.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 14:56:39 -08:00
Dirk Hohndel
252fc94c67 iOS build: use libgit2 0.26.0
Just like on all the other platforms.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 14:56:39 -08:00
Dirk Hohndel
6d5144451d iOS build: only use annotated tags for version
This avoids picking the continuous tag.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-29 14:56:39 -08:00
Miika Turkia
8f16ae6289 Move Divinglog DB import into its own file
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-29 01:22:17 +01:00
Miika Turkia
c2342304db Move Cobalt DB import to its own file
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-29 01:22:17 +01:00
Miika Turkia
4325ae8d24 Move Shearwater DB import into its own file
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-29 01:22:17 +01:00
Miika Turkia
1a9484207b Move Suunto DB import into its own file
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-29 01:22:17 +01:00
Dirk Hohndel
a3754ecada iOS build fix
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-27 21:06:57 -08:00
Miika Turkia
1c6e189c2b Move Suunto DB imports into parse-db.c
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-27 13:42:10 -08:00
Miika Turkia
02c80a60b0 Refactore parse-xml.c into parse.c and parse-xml.c
This should help us to move parsing that is not XML related to other
files, hopefully making the code cleaner.

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-11-27 13:42:10 -08:00
Anton Lundin
c92a86f898 android: Don't re-clone subsurface in android-build-wrapper.sh
Just use the source tree you where called from instead.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
65b825286c android: Correct path to Qt binaries
Back in 6451adfec1, the path to the qt
binaries was changed. The current binaries are back on the old urls, so
this reverts half of 6451adfec1.

The other half is still true.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
9dd87bac03 android: Remove unneeded extra argument parsing
This is handled by build.sh, which handles it correctly for running with
set -u.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
f3924aea29 android: Install android sdk on a different way
This way we can auto-accept all the licenses.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
3f4f160552 android: Terminate build.sh on unknown arguments
Previous code ended up in a eternal loop on unknown arguments.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
f9c85fa755 android: Ensure rm exits zero
This is to comply with set -e

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
cfa241036c android: Remove unset variable VERSION
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
e87a9e1454 android: Increase BUILDNR with zero exit status
This increases BUILDNR in a way that keeps exit status as zero, so the
script doesn't abort due to set -e.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
aa7208049f android: Allow Qt install in headless mode
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-11-16 10:23:00 -08:00
Anton Lundin
49d46255fd android: make android-build-wrapper.sh executable 2017-11-16 10:23:00 -08:00
Lubomir I. Ivanov
bd9dad7371 MXE: move the objcopy calls to cmakelists.txt
The objcopy calls to strip the debug symbols out of
subsurface.exe need to happen before the installer is
created (staged).

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-11-15 12:28:51 +01:00
Lubomir I. Ivanov
7552690afa MXE: experiment with creating a RelWithDebInfo build
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-11-13 20:43:35 -08:00
Dirk Hohndel
4d04f74312 Travis: also build an MXE/Windows installer
In the process, simplify our dependency a bit by no longer building
against libssh2 (we don't support ssh based authentication for git
on Windows) and libcurl (since it's proxy implementation doesn't appear
to actually work on Windows, anyway).

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-11-11 17:48:57 -08:00
Stefan Fuchs
76286c4ece Rename README to README.md in some scripts, makefiles,...
Was needed after the file itself was renamed.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-11-04 10:55:11 -07:00
Miika Turkia
455559f5c5 Include qml-module-qtquick2
Ubuntu and Debian require package qml-module-qtquick2 to be installed.

Fixes #720

Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
2017-10-22 19:36:02 -04:00
Dirk Hohndel
a68743ba15 Remove last hints of Marble
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-20 21:23:18 -04:00
Guillaume GARDET
3089a2d3a7 Update subsurfacedaily.spec to enhance debug 2017-10-20 14:25:09 -04:00
Guillaume GARDET
e01963ca02 Sync subsurfacedaily.spec with current OBS file 2017-10-20 14:25:09 -04:00
Dirk Hohndel
cbf5d788e0 Update Ubuntu/Debian packaging
Part of this is based on code from Miika Turkia.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-16 04:54:53 -07:00
Dirk Hohndel
303e7c4982 iOS build: update dummy.qml to match all the imports
I don't think we need all the versions, but it shouldn't hurt.
Now they are alphabetical, that should make it easier.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-14 07:47:03 -04:00
Dirk Hohndel
38243be44d iOS build: add include path for Kirigami
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-14 04:15:17 -07:00
Dirk Hohndel
f1baa575e6 iOS build: we don't use ssh and can't use OpenSSL
On iOS we don't need to enable ssh-based git access - and we can
no longer build against OpenSSL (instead use the platform SSL libraries.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-11 05:45:12 -07:00
Dirk Hohndel
37737c4381 Mac build: update the signing script
Which admittedly is mostly useful for me...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-09 21:00:06 -07:00
Dirk Hohndel
e0cc9b9c4c Mac build: these problems have long been solved
And the Readme is therefore confusing.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-09 20:59:37 -07:00
Dirk Hohndel
3f75059a77 Add connectionlistmodel.cpp/h to iOS qmake file
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-10-07 10:06:47 -07:00
Stefan Fuchs
f0de9e77b8 Windows NSI installer: Remove qml folder on uninstall
Do remove also the (new) qml folder on uninstall.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-24 22:20:23 +03:00
Miika Turkia
10216f5e3e Add required qml modules to Ubuntu packaging
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-23 00:59:14 -04:00
Dirk Hohndel
2d2bb95482 Mac packaging: add option to make bundle without creating DMG
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-09-17 09:54:04 -07:00
Stefan Fuchs
803e98befe MXE build script: Mention googlemaps plugin in comments
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-15 08:58:19 -07:00
Stefan Fuchs
26d9944013 MXE build script: Remove hint to use old MXE version
Meanwhile (after removing marble) it seems to be a good choice to use
latest MXE version with currently Qt 5.9.1.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-09-15 08:58:19 -07:00
Lubomir I. Ivanov
2b40e15713 remove Marble from packaging and build scripts
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>

---
please note, that i have no way to test most of the scripts ATM.
2017-09-04 07:46:35 -07:00
Dirk Hohndel
0bb93c76fd Mac build: fix package creation
libssh2.1 is a dependency of libgit2, not of the main executable.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-08-20 20:45:36 -07:00
Dirk Hohndel
e808c92bb6 MXE build: build the googlemaps plugin
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-08-02 23:07:47 -07:00
Lubomir I. Ivanov
e05abca7e0 mxe-based-build.sh: copy a googlemaps plugin instead of esri
This would work only if the folder:
$BASEDIR/"$MXEDIR"/usr/i686-w64-mingw32.shared/qt5/plugins/geoservices
contains such a file.

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2017-08-02 23:39:10 +03:00
Dirk Hohndel
ada477eda4 MXE build: don't use host cmake
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-08-01 02:53:17 -07:00
Dirk Hohndel
eb584db8ff Revert "MXE build: drop all WebKit dependencies"
This reverts commit 916d4b8cce.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-31 09:40:11 -07:00
Dirk Hohndel
916d4b8cce MXE build: drop all WebKit dependencies
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 21:13:28 -07:00
Dirk Hohndel
04f8eee46c MXE build: copy the QML modules we need
And include them in the installer.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 20:43:26 -07:00
Dirk Hohndel
0021f24eef MXE build: better logical grouping
This just makes more sense in which variables go with which code.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 13:41:35 -07:00
Dirk Hohndel
26879bffcc MXE build: include QtLocation DLL
Another one that otherwise gets missed.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 13:25:41 -07:00
Dirk Hohndel
4c0cac067c MXE build: install esri plugin
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 13:25:41 -07:00
Dirk Hohndel
ed8f8fba17 MXE build: remove Marble
Also, don't package the data directory (which held marble data) anymore.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 10:55:33 -07:00
Jan Mulder
3382f92843 Use same libgit2 on Android
Just to be sure. Use the same version on Android build of libgit2
as used in the scripts/build.sh script.

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-29 08:30:08 -07:00
Dirk Hohndel
7e52d11249 Mac build: adjust sign script
Add QtLocation and QtQuickWidgets.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 08:18:41 -07:00
Dirk Hohndel
fcfa05b134 Mac bundle: no more Marble
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-29 07:55:25 -07:00
Dirk Hohndel
f940104a33 iOS build: add BLE support files
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-19 06:21:23 -07:00
Jan Mulder
5c7ac7e7d1 Android compile fix
Forgotten slash broke my Andorid build (with Qt from source).

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-07-19 01:08:03 +09:00
Dirk Hohndel
9beb445d44 iOS build: update dummy file to include Controls 2 Material
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-17 20:32:04 -07:00
Dirk Hohndel
071e3f9933 iOS build: allow building against Qt 5.9.1 and later
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-17 16:49:02 -07:00
Dirk Hohndel
25cf741f70 iOS build: add bluetooth capability to Info.plist
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-17 14:26:02 -07:00
Alex Blasche
868fb9d5a9 Enable building with standard Qt install path layout
In general this patch enables building of subsurface without being
forced to use the official Qt binary packages. This is particularly helpful
when having to debug Qt internals or having to deal with custom patches
on top of the official Qt releases.

The architecture dependent file path layout is only employed by official
Qt binary packages. They are the result of a reordering at package
generation time. If Qt was build for a single architecture, the standard
layout does not add the architecture specific top level patch for the resulting
binaries.

Signed-off-by: Alex Blasche <alexander.blasche@qt.io>
2017-07-06 12:43:11 +09:00
Alex Blasche
db8200a9c3 Remove obsolete QT5_ANDROID_BIN
Signed-off-by: Alex Blasche <alexander.blasche@qt.io>
2017-07-06 12:43:11 +09:00
Dirk Hohndel
40d85b5d63 Fix the failing bundle signature on Mac
So THAT was why we had moved the plugins...

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03 22:36:39 -07:00
Robert C. Helling
bdd1a35c01 Add new sources to ios .pro file
Signed-off-by: Robert C. Helling <helling@atdotde.de>
2017-07-04 06:12:09 +09:00
Dirk Hohndel
7a6cc12da2 Mac packaging - don't move Grantlee plugins
I don't know why we moved them from the 5.0 subdirectory, but that
seems to break things now. Odd.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-03 13:30:10 -07:00
Dirk Hohndel
20254a43c0 Mac packaging: don't lose minimum version
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04 03:56:51 +09:00
Dirk Hohndel
6bba524288 Mac package build: adjust handling of libgit2
Apparently it now is a different dependency that causes problems.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04 01:45:55 +09:00
Dirk Hohndel
9c0cc53175 Mac package build: remove obsolete hack
And also add some additional comments.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-04 01:45:55 +09:00
Dirk Hohndel
339f128cdc MXE cross build: allow to specify mxe directory
This should make it easier to test different mxe versions.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-07-02 18:56:18 -07:00
Dirk Hohndel
6451adfec1 Android build: switch to Qt 5.9.1
It seems that the Qt team deviated from their previous practice to keep
the Qt/x.y directory structure the same for all minor releases - so now
it is indeed Qt/5.9.1
Oh well.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-30 17:21:07 -07:00
Dirk Hohndel
ba2b5d8505 Add en_US translation for plurals
This way in the en_US locale we no longer get shown the odd "dive(s)"
and instead get correct singular and plural forms.

Most of the patch is just a reindentation as it removes the if clause
that used to do the special case of NOT loading a translation for the
en_US case.

Right now we start with a trivial en_US translation file. My guess is
that this will be overwritten once we do the next round of "new strings,
new translations".

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-22 04:19:23 -07:00
Dirk Hohndel
05435d64aa Android build: work around odd build problem with missing rand()
I don't quite understand why this isn't correctly substituted to lrand48()
by the header file, but patching it in the source is easy enough.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-21 21:19:23 -07:00
Dirk Hohndel
f0c903203f Android build: match versions between wrapper and build script
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-21 21:04:04 -07:00
Anton Lundin
d97055d47c Upgrade 3pp for android and testing
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2017-06-21 18:43:15 -07:00
Salvador Cuñat
49cbfdd72d smtk2ssrf-mxe-build.sh: add a flag for git repo
Previous script would fail on git folders that pull from more than one
repo. That's not a general case, but pretty usual for developers
pulling/pushing to github.
BTW in this cases, a lind git pull doesn't ensure we are pulling from
the right repo.
When run without flag, default to pull --rebase.

At the same time introduce a tiny func to return a message and bail out
after some command failures.
2017-06-11 14:00:02 -07:00
Salvador Cuñat
22612831bb smtk-import: Add mxe cross-building script
Add to packaging/windows an script to build an installer for the
importer tool.
2017-06-11 13:50:30 -07:00
Salvador Cuñat
b012258617 smtk-import: add cmake modules and .nsi skeleton
Needed to crossbuild to windows.
The cmake modules are just clones from those under
subsurface/cmake/Modules, tweaked to build smtk-import for windows.
2017-06-11 13:50:30 -07:00
Robert C. Helling
ec34ebfb04 Enable BT for iOS build
and add some new source files to .pro file

Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-06-01 14:33:41 -07:00
Dirk Hohndel
2a71559045 Android build script: use interactive SDK install
And then manually fix the license as that doesn't appear to work correctly
in the tool.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-31 10:16:29 -07:00
Dirk Hohndel
4e16bd7dce Android build script: update for Qt 5.9
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-31 10:16:29 -07:00
Dirk Hohndel
01d610b383 Update Android build scripts
- prepare for Qt 5.9
- remove references to ANT
- adjust to changed location of the resulting apk

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-05-27 17:41:28 -07:00
Jan Mulder
1df4b6c11b Android build: Add BUILDTOOLS_REVISION
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-05-27 07:09:27 -07:00
Stefan Fuchs
d82f8cbd3f Change protocoll for any git clone from Github to https
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-04-16 07:41:24 -07:00
Stefan Fuchs
d661189b54 Change remotes for git clone for libdc, marble and Subsurface to Github
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-04-16 07:41:24 -07:00
Dirk Hohndel
5641d6d490 QML UI: need major.minor versions, apparently
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-12 20:33:27 -07:00
Dirk Hohndel
35e48a490b QML UI: fix iOS build script
Syntax for one of the libdivecomputer configure options was wrong.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-07 17:07:55 -07:00
Dirk Hohndel
c443576181 QML UI: enable embed code for iOS
This should help us with better iOS apps as it allows Apple to run
llvm against our code to improve performance.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-07 17:07:21 -07:00
Dirk Hohndel
924370c0e4 QML UI: modify dummy.qml to bring the correct plugins
Our qmake based build for iOS still requires the dummy.qml to trigger
inclusion of the correct plugins in the iOS app.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-07 17:06:11 -07:00
Dirk Hohndel
8a53cf8e64 QML UI: update qmake file to include Controls.2
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-06 21:29:09 -07:00
Stefan Fuchs
b5f203c888 mxe_build.sh - Rebuild everyth. when switching between debug and release
When switching between debug and release MXE build one needs to rebuild
everything.

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-04-01 08:08:16 -07:00
Stefan Fuchs
12c5a3db69 Fix mxe-build script to copy correct plugin DLLs for debug and release
For the plugin DDLs:
Debug: Only copy *d.DLLs
Release: Only copy *.DLLs

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-04-01 08:08:16 -07:00
Stefan Fuchs
0b59954709 Improve mxe-based-build.sh for debug builds
Give a hint how to enable build of debug Qt5 DLLs when building MXE.
Take care about the "d"/"xxxd.dll" suffix for DLLs.
Copy libastro.dll from marble to correct loation as well (nevertheless we don't use it)

Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
2017-03-26 21:55:13 -07:00
Jan Mulder
ed3f5a6240 Android build: extend comment for Qt5.8
Just an update of comment. The stange issue with Qt5.7.1 is
still present in Qt5.8. Extend the comment accordingly.

Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2017-03-20 21:39:00 -07:00
Jeremie Guichard
2e53faa8b4 Add missing dependencies for Windows run of tests
Qt plugins and some other dependencies cannot be copied
by CMake install targets. They need to be manually deployed
to staging_tests directory too.

Signed-off-by: Jeremie Guichard <djebrest@gmail.com>
2017-03-11 08:05:22 -08:00
Cristian Ionescu-Idbohrn
e8923a9bad Simplify some tests
Because `[ "$foo" != "" ] is equivalent to `[ "$foo" ]'
in all POSIX shells.

Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-02-09 21:31:11 -08:00