aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Koying Browet <cbro@semperpax.com>2017-12-22 11:00:00 +0100
committerRechi <Rechi@users.noreply.github.com>2017-12-22 11:00:00 +0100
commitd32bd6656f0d7b2b77304d60202142ea278dfd3e (patch)
treee19d4e36154f0c8baf3c1791c278c6f796f28731
parentd2ebc59772a77fcc14392788c653d3b35b3a68ad (diff)
CHG: [droid] switch to clang & libc++
-rw-r--r--cmake/scripts/android/Install.cmake2
-rw-r--r--docs/README.android6
-rw-r--r--tools/android/packaging/Makefile.in4
-rw-r--r--tools/depends/configure.ac6
-rw-r--r--tools/depends/target/Toolchain.cmake.in2
5 files changed, 17 insertions, 3 deletions
diff --git a/cmake/scripts/android/Install.cmake b/cmake/scripts/android/Install.cmake
index bcffc39978..e1eaaa3d5b 100644
--- a/cmake/scripts/android/Install.cmake
+++ b/cmake/scripts/android/Install.cmake
@@ -137,6 +137,8 @@ foreach(target apk obb apk-unsigned apk-obb apk-obb-unsigned apk-noobb apk-clean
CC=${CMAKE_C_COMPILER}
CPU=${CPU}
ARCH=${ARCH}
+ HOST=${HOST}
+ TOOLCHAIN=${TOOLCHAIN}
PREFIX=${prefix}
DEPENDS_PATH=${DEPENDS_PATH}
NDKROOT=${NDKROOT}
diff --git a/docs/README.android b/docs/README.android
index 326c9c8631..0eb32bd75d 100644
--- a/docs/README.android
+++ b/docs/README.android
@@ -153,7 +153,7 @@ Building for arm architecture:
$ cd build/tools
$ ./make-standalone-toolchain.sh \
--install-dir=<android-toolchain-arm>/android-21 --platform=android-21 \
- --toolchain=arm-linux-androideabi-4.9
+ --toolchain=arm-linux-androideabi-4.9 --stl=libc++
Building for aarch64 architecture:
@@ -162,7 +162,7 @@ Building for aarch64 architecture:
$ cd build/tools
$ ./make-standalone-toolchain.sh \
--install-dir=<android-toolchain-aarch64>/android-21 --platform=android-21 \
- --toolchain=aarch64-linux-android-4.9
+ --toolchain=aarch64-linux-android-4.9 --stl=libc++
Building for x86 architecture:
@@ -171,7 +171,7 @@ Building for x86 architecture:
$ cd build/tools
$ ./make-standalone-toolchain.sh \
--install-dir=<android-toolchain-x86>/android-21 --platform=android-21 \
- --toolchain=x86-4.9 --arch=x86
+ --toolchain=x86-4.9 --arch=x86 --stl=libc++
Make sure to pick a toolchain for your desired architecture. If an error about
the used system is shown - please add proper --system parameter as mentioned
diff --git a/tools/android/packaging/Makefile.in b/tools/android/packaging/Makefile.in
index 11d73c30f0..af990bb593 100644
--- a/tools/android/packaging/Makefile.in
+++ b/tools/android/packaging/Makefile.in
@@ -41,6 +41,9 @@ else ifeq ($(findstring arm,$(CPU)),arm)
CPU=armeabi-v7a
endif
+# libc++
+STLLIB=$(TOOLCHAIN)/$(HOST)/lib/libc++_shared.so
+
#older ndk x86
GDBPATH=$(NDKROOT)/toolchains/$(ARCH)-$(GCC_VERSION)/prebuilt/gdbserver
@@ -144,6 +147,7 @@ libs: $(PREFIX)/lib/@APP_NAME_LC@/lib@APP_NAME_LC@.so
cd xbmc/obj/local/$(CPU)/; find . -name "*.so" -not -name "lib*.so" | sed "s/\.\///" | xargs -I@ mv @ lib@
cp -fp xbmc/obj/local/$(CPU)/*.so xbmc/lib/$(CPU)/
$(STRIP) --strip-unneeded xbmc/lib/$(CPU)/*.so
+ install -p $(STLLIB) ./xbmc/lib/$(CPU)/
install -p $(GDBPATH) ./xbmc/lib/$(CPU)/gdbserver
echo "set solib-search-path ./obj/local/$(CPU)" > ./xbmc/lib/$(CPU)/gdb.setup
echo "directory $(TOOLCHAIN)/sysroot/usr/include $(NDKROOT)/sources/android/native_app_glue" \
diff --git a/tools/depends/configure.ac b/tools/depends/configure.ac
index 39633fde1e..d5a694b442 100644
--- a/tools/depends/configure.ac
+++ b/tools/depends/configure.ac
@@ -168,6 +168,8 @@ case $host in
if test "x$use_cpu" = "xauto"; then
use_cpu="armeabi-v7a"
fi
+ platform_cc=clang
+ platform_cxx=clang++
use_sdk="${use_sdk:-android-24}"
use_ndk_api="${use_ndk_api:-21}"
deps_dir="$use_host-$use_ndk_api-$build_type"
@@ -187,6 +189,8 @@ case $host in
if test "x$use_cpu" = "xauto"; then
use_cpu="arm64-v8a"
fi
+ platform_cc=clang
+ platform_cxx=clang++
use_sdk="${use_sdk:-android-24}"
use_ndk_api="${use_ndk_api:-21}"
deps_dir="$use_host-$use_ndk_api-$build_type"
@@ -206,6 +210,8 @@ case $host in
if test "x$use_cpu" = "xauto"; then
use_cpu=$host_cpu
fi
+ platform_cc=clang
+ platform_cxx=clang++
use_sdk="${use_sdk:-android-24}"
use_ndk_api="${use_ndk_api:-21}"
deps_dir="$use_host-$use_ndk_api-$build_type"
diff --git a/tools/depends/target/Toolchain.cmake.in b/tools/depends/target/Toolchain.cmake.in
index 59db66b4e9..b26b230a5f 100644
--- a/tools/depends/target/Toolchain.cmake.in
+++ b/tools/depends/target/Toolchain.cmake.in
@@ -81,6 +81,8 @@ endif()
if(CORE_SYSTEM_NAME STREQUAL android)
set(NDKROOT @use_ndk_path@)
set(SDKROOT @use_sdk_path@)
+ set(TOOLCHAIN @use_toolchain@)
+ set(HOST @use_host@)
set(SDK_PLATFORM @use_sdk@)
string(REPLACE ":" ";" SDK_BUILDTOOLS_PATH "@build_tools_path@")
endif()