subsurface/packaging/android
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
..
patches Patch libusb for android custom open function 2015-08-20 22:52:21 -07:00
.gitignore Import subsurface-android build script 2015-03-09 12:53:01 -07:00
android-build-wrapper.sh Android build: switch to Qt 5.9.1 2017-06-30 17:21:07 -07:00
build.sh Enable building with standard Qt install path layout 2017-07-06 12:43:11 +09:00
README android: Correct README 2016-06-23 16:32:24 -07:00

Tool repo to crosscompile subsurface to android-arm
---------------------------------------------------

Dependencies:

1. android_sdk, android_ndk and Qt for android. See step 0.
2. cmake
3. ant
4. Java JDK
5. working adb is recommended
6. dependencies of libdivecomputer and subsurface -
   visit http://subsurface.hohndel.org/documentation/building/

Steps to install:

Step 0.
Grab..
Android ndk from: http://developer.android.com/tools/sdk/ndk/index.html
Android sdk from: http://developer.android.com/sdk/index.html#download
And QT for android from: http://qt-project.org/downloads

Step 1.
Extract and install these into known directories.
Have a look in the top of build.sh for where the cross build tool expects
them. By default thats is: ../../../android-ndk-r9d ../../../android-sdk-linux
and ../../../Qt/5.5 (or Qt/5.6)

Step 2.
Run bash build.sh in the terminal. By default it builds for arm but you
can pass x86 as first arg to build.sh to have it build for x86. Nice when
debugging in a fast emulator.
The script will download and build the whole dependency chain.

After this, subsurface will be built for android.

The output folder is subsurface-build-arm/android_build and your newly
created apk shows up as:
subsurface-build-arm/android_build/bin/QtApp-debug.apk

Where the x86 apk shows up when built for x86 is left as a exercise for the
reader.