aboutsummaryrefslogtreecommitdiffstats
path: root/packaging/android
AgeCommit message (Collapse)Author
2019-03-21CMake: use builtin method to not use BZip2Gravatar Rolf Eike Beer
Signed-off-by: Rolf Eike Beer <eike@sf-mail.de>
2019-03-05Android: factor out duplicate version string searchGravatar Rolf Eike Beer
Signed-off-by: Rolf Eike Beer <eike@sf-mail.de>
2019-03-05CMake: just tell CMake to not find HTTP_ParserGravatar Rolf Eike Beer
Signed-off-by: Rolf Eike Beer <eike@sf-mail.de>
2019-03-05simplify sed hacking of Qt CMake filesGravatar Rolf Eike Beer
Signed-off-by: Rolf Eike Beer <eike@sf-mail.de>
2019-02-01facebook: remove the featute from the code baseGravatar Lubomir I. Ivanov
Remove from: - unit tests - desktop widgets - preferences - core intergration - cmakefiles - build scripts - icons - docs Also remove the plugins and social network integration. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
2019-01-25Android: accept 'Release' argumentGravatar Dirk Hohndel
This is mostly an artifact of how I build release packages. Otherwise this likely isn't important. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2019-01-21Android: make sure we have the correct platforms installedGravatar Dirk Hohndel
This should fix the current Travis build failures for Android. It is odd how we have ANDROID_PLATFORM and ANDROID_PLATFORMS, buf for now all I care about is that the Travis build completes. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-30Android build: always reconfigure libdivecomputerGravatar Jan Mulder
This fix makes no difference from usage of this script in Travis context, as every build starts from a clean VM, but the very few developers that build for Android locally, and that want to use the new style docker container builds as well, things are broken. libdivecomputer has build artifacts in its source tree (and that source tree is shared between local and docker run). So it happens that libdivecomputer is configured locally, and afterwards fails to build in docker build as its already configured, but not for the docker image its now running in. The fix is simple. Always reconfigure libdivecomputer when using this script. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android: build both 32 and 64 bit binariesGravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-30Travis: Android build wrapper now runs inside our containerGravatar Dirk Hohndel
So we don't need the pre-built binaries anymore, and we don't need the travis_wait hack anymore for potentially slow downloads as that is all installed in the container already. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-30Android: update for Qt 5.12.0Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-30Android build: add explanation for huge hackGravatar Jan Mulder
This had to be embedded in the build process (or better, solved for real). Using Cmake, Clang, NDK 18b, Qt 5.12 beta 4, some Subsurface code does not compile. At this point in time, its fully unclear to me why we see the error as it is. Thing fail deep down in Qt and NDK headers on #include <cmath>. Error like "::signbit is not in the global namespace". The most logic reason is an improper order in which include paths are constructed in the build process. Any attempt to find the real reason failed. Even very similar command lines from a qmake build that succeed fail with a cmake style build. The very very dirty hack is commenting out some lines in NDK 18b: "./android-ndk-r18b/sources/cxx-stl/llvm-libc++/include/cmath Comment lines 313-325, and all build, links and runs with no errors related to this known at this point. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: always use -fPICGravatar Jan Mulder
make sure that all lib code is compiled with -fPIC as things will not link due to error "requires unsupported dynamic reloc R_ARM_REL32" (for arm build). Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: build openssl before libzipGravatar Jan Mulder
On very clean builds not using the wrapper script, the compile of libzip simply fails because it depend on openssl include files. Simply swap them around. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: fix openssl build, no_asmGravatar Jan Mulder
Mysteriously, openssl does not compile with clang with a sha256-armv4.S:2638:2: error: invalid instruction, did you mean: adr? The easiest way out is compiling without no_asm. This obviously lowers the bandwidth on the SSL link (as the asm code is there for performance reasons), but it has no visible performance loss in my tests. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: add arm64 target and compile with clangGravatar Jan Mulder
With a preparation done in the 4 commits before, now add the arm64 and use clang instead of gcc as compiler infrastructure. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: openssl, do not move source treeGravatar Jan Mulder
Very annoyingly, openssl is re-build and downloaded numerous times when doing partial builds. Reason for this, is that the original checked out git repo is moved away, and build in source (as openssl does ...). So, this simple change leaves the checked out repo in place, and copies the tree to build in. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: always install libzip.a in lib directoryGravatar Jan Mulder
A subtle one. When compiling for arm64, libzip is the only package we use in mobile that installs its product in lib64. There is no reason for this given the way our build process is. So, simply force the library to reside in lib, independent if we are building arm or arm64 architectures. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: do not hard code armv7Gravatar Jan Mulder
Simple cleanup. Do not hard code armv7 as we have QT_ARCH. This allows, in the future, for arm64 builds as well. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android build: set newer versions and parameterize ANDROID_PLATFORMGravatar Jan Mulder
Hard coding desired ANDROID_PLATFORM on multiple places is simply bad. Fix this. Further, set the variables to a much newer state. CAVEAT: this will likely break android build, so be careful on bisecting. All fixed in next, related commits. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-30Android: cleanup build wrapper scriptGravatar Dirk Hohndel
This way it can be run both to create the docker container or independently for a full build. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-30Android: allow running android-build-wrapper without buildingGravatar Dirk Hohndel
This way we can use it to fetch dependencies we need up front. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-12-06Android build: explicitly install using sdkmanagerGravatar Jan Mulder
Make sure all required Android SDK components are explicitly installed before starting the actual build. Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
2018-12-06Android build: buildtools version is automatically detectedGravatar Jan Mulder
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-11-13Android: pick the correct C++ runtimeGravatar Dirk Hohndel
Yet another fallout of the switch to the NDK toolchain. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13Android: build for android-16Gravatar Dirk Hohndel
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-13Android: explicitly build with gccGravatar Dirk Hohndel
Our Android build currently fails with clang. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-11-13Android: qt-android-cmake no longer ships a toolchain fileGravatar Dirk Hohndel
Instead use the one that comes as part of the NDK. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-10-27build-system: switch back to upstream qt-android-cmakeGravatar Dirk Hohndel
And in the process use our script to do the work. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05Android: whitespace change to build.shGravatar Dirk Hohndel
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-05Android: add -quick flag to build.shGravatar Dirk Hohndel
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-05Android: use our fork of qt-android-cmakeGravatar Dirk Hohndel
This tells androiddeployqt to look at the qml modules to find all dependencies. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-05Android: build latest libzipGravatar Dirk Hohndel
Small hacks needed, but otherwise this seems to work. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-08-04Android: build libzip 1.1.3Gravatar Dirk Hohndel
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-07-12Match openssl versionsGravatar Jocke
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-12Add comment to variables.shGravatar Jocke
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-09Travis: build Android against Qt 5.11.1Gravatar Dirk Hohndel
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-09Android: update to use Qt5.11.1Gravatar Dirk Hohndel
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2018-07-04ShellcheckGravatar Joakim Bygdell
Code cleanup using shellcheck. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
2018-07-04Update android build env.Gravatar Joakim Bygdell
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-04Add build variables fileGravatar Joakim Bygdell
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-03build-system: tell Travis to wait longer for downloadsGravatar Dirk Hohndel
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-06-22build-system: Only run autoreconf when neededGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-18build-system: added get-dep-lib to android/build.shGravatar jan Iversen
Integrated get-dep-lib in android/build.sh Signed-off-by: Jan Iversen <jani@apache.org>
2018-05-17android-build: Remove old libgit2 special handlingGravatar Anton Lundin
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-17android-build: Stop installing ant, we're using gradeGravatar Anton Lundin
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-17android-build: Simplify and correctGravatar Anton Lundin
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-17android-build: Build googlemaps plugin same way as othersGravatar Anton Lundin
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-17android-build: Use sed -i instead of home rolled variantGravatar Anton Lundin
Signed-off-by: Anton Lundin <glance@acc.umu.se>
2018-05-17android-build: Use subsurface source variableGravatar Anton Lundin
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>