Added script to build dependencies

This project requires presence of libusb, libftdi and libdivecomputer libraries
on the system. Hence, these are cross compiled for usage on android. The
generated static libraries can then be used for JNI interfacing.
This script assumes presence of libdivecomputer, libusb and libftdi submodules
in crossbuild folder.
To make, run the command as per target arch : bash build.sh [x86 / arm]

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Include crossbuilt libraries in android build

Android JNI interface requires usage of ndk-build. The added files use the
crossbuilt static libraries and makes them available for the JNI files.
Appropriate script is appended to build.sh so as to ndk-build and install the
application to android and start its Main activity.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Added required submodules

The project requires lbdivecomputer, libusb and libftdi as its dependencies.
These libraries need special tweaking to work on android. These are provided in
my forked repository.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Initial Testing of subsurface source files

A very naive attempt at compilation of subsurface files essential for making a
library. These files should be referenced by making a subsurface submodule.
Still there are loads of error shown on the screen.
Also, for building dependencies, appropriate commands are written in bashrc

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
More subsurface files and their modules

Almost all relevant subsurface files are now taken. This could be better
achieved by making a subsurface submodule. (Future)
For building these files, appropriate module addition for ndk-build and cross
compilation using ndk-standalone-toolchain is done.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Add getline on android

Android does not contain getline function. To overcome this trouble, an
implementation of getline is added. Appropriate changes are made in
jni/Android.mk and linux.c
The getline code is taken directly from android git repo.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
pw_gecos not available in struct pwd android

Hence, pw_name is used in its place.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
gettext.c containing trGettext implementation

As we integrate the application with android, this should use the android i18n
schemes to translate. Right now, it just returns back the same value given to
it.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
help.c as replacement of qthelper.c

qthelper contains some important helper codes. These were earlier using Qt
libraries. But help.c does not use any Qt and attempts to do all the work using
only C. This is a trial code and would most definitely contain huge errors. It
needs thorough testing soon.
For exif manipulation, we are using libexif. Hence it has been added to build.sh
and jni/Android.mk.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
divecomputer.c as replacement of divecomputer.cpp

Removing the Qt dependencies was necessary for android. Hence, as a replacement,
divecomputer.c was made. This is an initial version and needs thorough testing.

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>
Added subsurface and its android build mechanism

Rather than copy pasting all the files from subsurface, it would be better to
have a submodule which can stay updated with the main upstream. To build it on
android, necessary changes are made in the build script as well as the
Android,mk files

Signed-off-by: Venkatesh Shukla <venkatesh.shukla.eee11@iitbhu.ac.in>