summaryrefslogtreecommitdiff
path: root/platform/android
diff options
context:
space:
mode:
authorJohn Firebaugh <john.firebaugh@gmail.com>2015-12-16 14:05:23 -0800
committerJohn Firebaugh <john.firebaugh@gmail.com>2015-12-16 17:49:22 -0800
commit7a4e7376e1422964cb7a456f772104e28003f4d2 (patch)
treed5f2c11bf309f94a7e595f785f66ed02454e4e79 /platform/android
parenta903d2eef022518ad579312555bf82272093e01a (diff)
downloadqtlocation-mapboxgl-7a4e7376e1422964cb7a456f772104e28003f4d2.tar.gz
Move platform scripts into platforms
Diffstat (limited to 'platform/android')
-rw-r--r--platform/android/scripts/configure.sh15
-rw-r--r--platform/android/scripts/defaults.mk11
-rwxr-xr-xplatform/android/scripts/install.sh13
-rwxr-xr-xplatform/android/scripts/run.sh56
-rwxr-xr-xplatform/android/scripts/toolchain.sh26
5 files changed, 121 insertions, 0 deletions
diff --git a/platform/android/scripts/configure.sh b/platform/android/scripts/configure.sh
new file mode 100644
index 0000000000..2e3e7b9d7c
--- /dev/null
+++ b/platform/android/scripts/configure.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+
+BOOST_VERSION=1.59.0
+LIBPNG_VERSION=1.6.18
+JPEG_VERSION=v9a
+SQLITE_VERSION=3.9.1
+LIBUV_VERSION=1.7.5
+ZLIB_VERSION=system
+NUNICODE_VERSION=1.6
+LIBZIP_VERSION=0.11.2
+GEOJSONVT_VERSION=3.1.0
+VARIANT_VERSION=1.0
+RAPIDJSON_VERSION=1.0.2
+
+export MASON_ANDROID_ABI=${MASON_PLATFORM_VERSION}
diff --git a/platform/android/scripts/defaults.mk b/platform/android/scripts/defaults.mk
new file mode 100644
index 0000000000..d5e87c6796
--- /dev/null
+++ b/platform/android/scripts/defaults.mk
@@ -0,0 +1,11 @@
+HEADLESS ?= none
+PLATFORM ?= android
+ASSET ?= zip
+HTTP ?= android
+CACHE ?= sqlite
+
+GYP_FLAVOR_SUFFIX=-android
+
+HOST_VERSION ?= arm-v7
+
+ENV = $(shell MASON_ANDROID_ABI=$(HOST_VERSION) ./platform/android/scripts/toolchain.sh)
diff --git a/platform/android/scripts/install.sh b/platform/android/scripts/install.sh
new file mode 100755
index 0000000000..e99c3dc75e
--- /dev/null
+++ b/platform/android/scripts/install.sh
@@ -0,0 +1,13 @@
+#!/usr/bin/env bash
+
+set -e
+set -o pipefail
+
+mapbox_time "checkout_mason" \
+git submodule update --init .mason
+
+export MASON_PLATFORM=android
+export MASON_ANDROID_ABI=${ANDROID_ABI}
+
+mapbox_time "android_toolchain" \
+./platform/android/scripts/toolchain.sh
diff --git a/platform/android/scripts/run.sh b/platform/android/scripts/run.sh
new file mode 100755
index 0000000000..9e87298fe9
--- /dev/null
+++ b/platform/android/scripts/run.sh
@@ -0,0 +1,56 @@
+#!/usr/bin/env bash
+
+set -e
+set -o pipefail
+
+# Add Mason to PATH
+export PATH="`pwd`/.mason:${PATH}" MASON_DIR="`pwd`/.mason"
+export MASON_PLATFORM=android
+export MASON_ANDROID_ABI=${ANDROID_ABI}
+
+################################################################################
+# Build
+################################################################################
+
+mkdir -p ./platform/android/MapboxGLAndroidSDKTestApp/src/main/res/raw
+echo "${MAPBOX_ACCESS_TOKEN}" > ./platform/android/MapboxGLAndroidSDKTestApp/src/main/res/raw/token.txt
+
+mapbox_time "compile_library" \
+make android-lib HOST_VERSION=${ANDROID_ABI} -j${JOBS} BUILDTYPE=${BUILDTYPE}
+
+mapbox_time "build_apk" \
+make android HOST_VERSION=${ANDROID_ABI} -j${JOBS} BUILDTYPE=${BUILDTYPE}
+
+################################################################################
+# Deploy
+################################################################################
+
+if [ ! -z "${AWS_ACCESS_KEY_ID}" ] && [ ! -z "${AWS_SECRET_ACCESS_KEY}" ] ; then
+ # Install and add awscli to PATH for uploading the results
+ mapbox_time "install_awscli" \
+ pip install --user awscli
+ export PATH="`python -m site --user-base`/bin:${PATH}"
+
+ mapbox_time_start "deploy_results"
+ echo "Deploying results..."
+
+ S3_PREFIX=s3://mapbox/mapbox-gl-native/android/build/${TRAVIS_JOB_NUMBER}
+ APK_OUTPUTS=./platform/android/MapboxGLAndroidSDKTestApp/build/outputs/apk
+ JNILIB=`mason env JNIDIR`
+
+ # ARM64 does not build APK for now
+ if [ ${JNIDIR} != "arm64-v8a" ] ; then
+ # Upload either the debug or the release build
+ if [ ${BUILDTYPE} == "Debug" ] ; then
+ aws s3 cp \
+ ${APK_OUTPUTS}/MapboxGLAndroidSDKTestApp-${JNILIB}-debug.apk \
+ ${S3_PREFIX}/MapboxGLAndroidSDKTestApp-debug.apk
+ elif [ ${BUILDTYPE} == "Release" ] ; then
+ aws s3 cp \
+ ${APK_OUTPUTS}/MapboxGLAndroidSDKTestApp-${JNILIB}-release-unsigned.apk \
+ ${S3_PREFIX}/MapboxGLAndroidSDKTestApp-release-unsigned.apk
+ fi
+ fi
+
+ mapbox_time_finish
+fi
diff --git a/platform/android/scripts/toolchain.sh b/platform/android/scripts/toolchain.sh
new file mode 100755
index 0000000000..67cd0aa476
--- /dev/null
+++ b/platform/android/scripts/toolchain.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env bash
+
+set -e
+set -o pipefail
+
+export MASON_PLATFORM=android
+export MASON_ANDROID_ABI=${MASON_ANDROID_ABI:-arm-v7}
+export PATH="`pwd`/.mason:${PATH}"
+export MASON_DIR="`pwd`/.mason"
+
+export PATH=`mason env PATH`
+
+echo MASON_PLATFORM=\"${MASON_PLATFORM}\"
+echo MASON_ANDROID_ABI=\"${MASON_ANDROID_ABI}\"
+echo CXX=\"`which $(mason env CXX)`\"
+echo CC=\"`which $(mason env CC)`\"
+echo LD=\"`which $(mason env LD)`\"
+echo LINK=\"`which $(mason env CXX)`\"
+echo AR=\"`which $(mason env AR)`\"
+echo RANLIB=\"`which $(mason env RANLIB)`\"
+echo STRIP=\"`which $(mason env STRIP)`\"
+echo LDFLAGS=\"`mason env LDFLAGS` \${LDFLAGS:-}\"
+echo CFLAGS=\"`mason env CFLAGS` \${CFLAGS:-}\"
+echo CXXFLAGS=\"`mason env CXXFLAGS` \${CXXFLAGS:-}\"
+echo CPPFLAGS=\"`mason env CPPFLAGS` \${CPPFLAGS:-}\"
+echo JNIDIR=\"`mason env JNIDIR`\"