[Libreoffice-commits] online.git: android/app android/lib android/README configure.ac
Jan Holesovsky (via logerrit)
logerrit at kemper.freedesktop.org
Mon Dec 30 13:24:49 UTC 2019
android/README | 11 +++
android/app/appSettings.gradle.in | 1
android/app/build.gradle | 7 +-
android/lib/build.gradle | 7 +-
android/lib/libSettings.gradle.in | 1
android/lib/src/main/cpp/CMakeLists.txt.in | 87 ++++++++++++++++------------
configure.ac | 89 +++++++++++++++++++++++++----
7 files changed, 149 insertions(+), 54 deletions(-)
New commits:
commit d556760c2f7ca731c428c4c8fa081ed7a1dfbb4b
Author: Jan Holesovsky <kendy at collabora.com>
AuthorDate: Mon Nov 25 21:34:21 2019 +0100
Commit: Jan Holesovsky <kendy at collabora.com>
CommitDate: Mon Dec 30 14:24:30 2019 +0100
android: Implement (optional) support for both 32bit and 64bit build.
This adds possiblity to specify additional build trees for LibreOffice
and POCO that contain the 64bit version, like:
--with-lo-builddir=/local/libreoffice/master-android-release:/local/libreoffice/master-android-release-64bit \
--with-poco-includes=/opt/poco-android/include:/opt/poco-android-64bit/include \
--with-poco-libs=/opt/poco-android/lib:/opt/poco-android-64bit/lib \
which triggers both 32bit and 64bit build.
It should be still possible to build just 32bit when used without the
semicolons - which is useful for the normal development.
Change-Id: I99145e57f0cc15f022c05d09f8c4ab275880d44b
Reviewed-on: https://gerrit.libreoffice.org/c/online/+/84312
Reviewed-by: Jan Holesovsky <kendy at collabora.com>
Tested-by: Jan Holesovsky <kendy at collabora.com>
diff --git a/android/README b/android/README
index 4606ef3a3..339593151 100644
--- a/android/README
+++ b/android/README
@@ -82,6 +82,17 @@ build the native parts on Windows.
+ Open this 'android' subdir as a project
+ Build from Android Studio (Build -> Make Project)
+== Building 32bit + 64bit combined .apk ==
+
+ + you need to build both a 32bit (armeabi-v7a) and 64bit (arm64-v8a) core
+ + you need to build both a 32bit and 64bit POCO
+ + and then provide paths to both to the ./configure, separated by a colon ':',
+ like:
+
+ --with-lo-builddir=/local/libreoffice/master-android-release:/local/libreoffice/master-android-release-64bit \
+ --with-poco-includes=/opt/poco-android/include:/opt/poco-android-64bit/include \
+ --with-poco-libs=/opt/poco-android/lib:/opt/poco-android-64bit/lib \
+
== Debugging ==
To debug the native code in Android Studio, you need the debugging symbols and
diff --git a/android/app/appSettings.gradle.in b/android/app/appSettings.gradle.in
index 4ce26c221..a4e89c24f 100644
--- a/android/app/appSettings.gradle.in
+++ b/android/app/appSettings.gradle.in
@@ -6,6 +6,7 @@ ext {
liboInfoURL = '@INFO_URL@'
liboLauncherIcon = '@mipmap/@APP_IC_LAUNCHER@'
liboHasBranding = '@APP_HAS_BRANDING@'
+ liboAndroidAbi = '@ANDROID_ABI@'
}
android.defaultConfig {
applicationId '@ANDROID_PACKAGE_NAME@'
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 2a8c7e2e1..ae84e6495 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -20,8 +20,8 @@ android {
manifestPlaceholders = [ appIcon: "${liboLauncherIcon}" ]
buildConfigField "boolean", "APP_HAS_BRANDING", "${liboHasBranding}"
ndk {
- //abiFilters "x86", "armeabi-v7a", "armeabi"
- abiFilters "armeabi-v7a"
+ abiFilters = []
+ abiFilters.addAll("${liboAndroidAbi}".split(' ').collect{it as String})
}
applicationIdSuffix '.debug'
versionNameSuffix '-debug'
@@ -34,7 +34,8 @@ android {
manifestPlaceholders = [ appIcon: "${liboLauncherIcon}" ]
buildConfigField "boolean", "APP_HAS_BRANDING", "${liboHasBranding}"
ndk {
- abiFilters "armeabi-v7a"
+ abiFilters = []
+ abiFilters.addAll("${liboAndroidAbi}".split(' ').collect{it as String})
}
minifyEnabled false // FIXME disabled before we get a good proguardRules for callFakeWebsocketOnMessage calling from C++
shrinkResources false // FIXME cannot be enabled when minifyEnabled is turned off
diff --git a/android/lib/build.gradle b/android/lib/build.gradle
index 997bdfd23..c9e953e0c 100644
--- a/android/lib/build.gradle
+++ b/android/lib/build.gradle
@@ -22,15 +22,16 @@ android {
debug {
buildConfigField "String", "GIT_COMMIT", "\"${liboGitFullCommit}\""
ndk {
- //abiFilters "x86", "armeabi-v7a", "armeabi"
- abiFilters "armeabi-v7a"
+ abiFilters = []
+ abiFilters.addAll("${liboAndroidAbi}".split(' ').collect{it as String})
}
debuggable true
}
release {
buildConfigField "String", "GIT_COMMIT", "\"${liboGitFullCommit}\""
ndk {
- abiFilters "armeabi-v7a"
+ abiFilters = []
+ abiFilters.addAll("${liboAndroidAbi}".split(' ').collect{it as String})
}
minifyEnabled false // FIXME disabled before we get a good proguardRules for callFakeWebsocketOnMessage calling from C++
shrinkResources false // FIXME cannot be enabled when minifyEnabled is turned off
diff --git a/android/lib/libSettings.gradle.in b/android/lib/libSettings.gradle.in
index bd40967c3..d492e0389 100644
--- a/android/lib/libSettings.gradle.in
+++ b/android/lib/libSettings.gradle.in
@@ -9,4 +9,5 @@ ext {
liboVersionMinor = '@LOOLWSD_VERSION_MAJOR@'
liboGitFullCommit = '@LOOLWSD_VERSION_HASH@'
liboApplicationId = '@ANDROID_PACKAGE_NAME@'
+ liboAndroidAbi = '@ANDROID_ABI@'
}
diff --git a/android/lib/src/main/cpp/CMakeLists.txt.in b/android/lib/src/main/cpp/CMakeLists.txt.in
index cb1f31c8d..2d5dc09e1 100644
--- a/android/lib/src/main/cpp/CMakeLists.txt.in
+++ b/android/lib/src/main/cpp/CMakeLists.txt.in
@@ -23,6 +23,19 @@ add_library(androidapp SHARED
target_compile_definitions(androidapp PRIVATE LOOLWSD_CONFIGDIR="/etc/loolwsd") # TODO somewhere in assets maybe?
+# According to the ABI, we need to use different source trees
+if(${ANDROID_ABI} STREQUAL "armeabi-v7a")
+ set(LOBUILDDIR_ABI @LOBUILDDIR@)
+ set(POCOINCLUDE_ABI ${POCOINCLUDE_ABI})
+ set(POCOLIB_ABI @POCOLIB@)
+elseif(${ANDROID_ABI} STREQUAL "arm64-v8a")
+ set(LOBUILDDIR_ABI @LOBUILDDIR_ARM64_V8A@)
+ set(POCOINCLUDE_ABI @POCOINCLUDE_ARM64_V8A@)
+ set(POCOLIB_ABI @POCOLIB_ARM64_V8A@)
+else()
+ MESSAGE(FATAL_ERROR "Cannot build for ABI ${ANDROID_ABI}, please add support for that.")
+endif()
+
target_include_directories(androidapp PRIVATE
. # path to androidapp.h
../../../../.. # path to config.h
@@ -30,51 +43,51 @@ target_include_directories(androidapp PRIVATE
../../../../../kit
../../../../../net
../../../../../wsd
- @POCOINCLUDE@ # POCO
- @LIBPNG_INCLUDES@ # libpng
- @LOKIT_PATH@ # LibreOfficeKit
+ ${POCOINCLUDE_ABI} # POCO
+ ${LOBUILDDIR_ABI}/workdir/UnpackedTarball/libpng # libpng
+ ${LOBUILDDIR_ABI}/include # LibreOfficeKit
)
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}/liblo-native-code.so"
COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libfreebl3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libfreebl3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libfreebl3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libfreebl3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libnspr4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libnspr4.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libnspr4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libnspr4.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libnss3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libnss3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libnss3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libnss3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libnssckbi.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libnssckbi.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libnssckbi.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libnssckbi.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libnssdbm3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libnssdbm3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libnssdbm3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libnssdbm3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libnssutil3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libnssutil3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libnssutil3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libnssutil3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libplc4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libplc4.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libplc4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libplc4.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libplds4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libplds4.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libplds4.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libplds4.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libsmime3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libsmime3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libsmime3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libsmime3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libsoftokn3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libsoftokn3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libsoftokn3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libsoftokn3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libsqlite3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libsqlite3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libsqlite3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libsqlite3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/instdir/program/libssl3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/instdir/program/libssl3.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/instdir/program/libssl3.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/instdir/program/libssl3.so
- COMMAND ${CMAKE_COMMAND} -E copy @LOBUILDDIR@/android/source/jniLibs/${ANDROID_ABI}/liblo-native-code.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
- DEPENDS @LOBUILDDIR@/android/source/jniLibs/${ANDROID_ABI}/liblo-native-code.so
+ COMMAND ${CMAKE_COMMAND} -E copy ${LOBUILDDIR_ABI}/android/source/jniLibs/${ANDROID_ABI}/liblo-native-code.so "${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}"
+ DEPENDS ${LOBUILDDIR_ABI}/android/source/jniLibs/${ANDROID_ABI}/liblo-native-code.so
COMMENT "Copied liblo-native-code.so and its dependencies to the tree."
)
@@ -85,13 +98,13 @@ add_custom_target(copy_native_code DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/lib/${AN
target_link_libraries(androidapp
android
log
- @LIBPNG_LIBS@/liblibpng.a
- @POCOLIB@/libPocoEncodings at POCODEBUG@.a
- @POCOLIB@/libPocoNet at POCODEBUG@.a
- @POCOLIB@/libPocoRedis at POCODEBUG@.a
- @POCOLIB@/libPocoUtil at POCODEBUG@.a
- @POCOLIB@/libPocoXML at POCODEBUG@.a
- @POCOLIB@/libPocoJSON at POCODEBUG@.a
- @POCOLIB@/libPocoFoundation at POCODEBUG@.a
+ ${LOBUILDDIR_ABI}/workdir/LinkTarget/StaticLibrary/liblibpng.a
+ ${POCOLIB_ABI}/libPocoEncodings at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoNet at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoRedis at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoUtil at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoXML at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoJSON at POCODEBUG@.a
+ ${POCOLIB_ABI}/libPocoFoundation at POCODEBUG@.a
"${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}/liblo-native-code.so"
)
diff --git a/configure.ac b/configure.ac
index 4109b14fc..9b1b50a91 100644
--- a/configure.ac
+++ b/configure.ac
@@ -175,7 +175,10 @@ AC_ARG_WITH([lo-builddir],
In case of macOS, you MUST manually edit the ios/Mobile.xcodeproj/project.pbxproj
file and change the references to "../ios-device" to refer to the corresponding
LibreOffice core source directory (which typically would be the same as the build
- directory you specify with this option).]))
+ directory you specify with this option).
+ In case of Android, you can provide 2 builddirs
+ separated by a colon ':' - the first is for
+ armeabi-v7a, the second is for arm64-v8a]))
AC_ARG_WITH([logfile],
AS_HELP_STRING([--with-logfile=<path>],
@@ -183,19 +186,25 @@ AC_ARG_WITH([logfile],
AC_ARG_WITH([poco-includes],
AS_HELP_STRING([--with-poco-includes=<path>],
- [Path to the "include" directory with the Poco headers]))
+ [Path to the "include" directory with the Poco
+ headers. If you are building for Android 64bit,
+ you need two, separated by a colon ':'.]))
AC_ARG_WITH([poco-libs],
AS_HELP_STRING([--with-poco-libs=<path>],
- [Path to the "lib" directory with the Poco libraries]))
+ [Path to the "lib" directory with the Poco
+ libraries. If you are building for Android 64bit,
+ you need two, separated by a colon ':'.]))
AC_ARG_WITH([libpng-includes],
AS_HELP_STRING([--with-libpng-includes=<path>],
- [Path to the "include" directory with the libpng headers]))
+ [Path to the "include" directory with the libpng
+ headers. Not used on Android.]))
AC_ARG_WITH([libpng-libs],
AS_HELP_STRING([--with-libpng-libs=<path>],
- [Path to the "lib" directory with the libpng libraries]))
+ [Path to the "lib" directory with the libpng
+ libraries. Not used on Android.]))
AC_ARG_WITH([cppunit-includes],
AS_HELP_STRING([--with-cppunit-includes=<path>],
@@ -303,8 +312,12 @@ fi
# to the Mac.
# Android: We need these to setup the CMakeLists.txt properly.
LOBUILDDIR=
+ANDROID_ABI="armeabi-v7a"
+LOBUILDDIR_ARM64_V8A=
POCOINCLUDE=
+POCOINCLUDE_ARM64_V8A=
POCOLIB=
+POCOLIB_ARM64_V8A=
POCODEBUG=
if test \( "$enable_iosapp" = "yes" -a `uname -s` = "Darwin" \) -o \( "$enable_androidapp" = "yes" \); then
AC_MSG_CHECKING([for LibreOffice build tree to build against])
@@ -313,6 +326,23 @@ if test \( "$enable_iosapp" = "yes" -a `uname -s` = "Darwin" \) -o \( "$enable_a
fi
LOBUILDDIR="$with_lo_builddir"
+ if test "$enable_androidapp" = "yes" ; then
+ if echo "$LOBUILDDIR" | grep -qs ':' ; then
+ ANDROID_ABI="armeabi-v7a arm64-v8a"
+ LOBUILDDIR=`echo $with_lo_builddir | sed 's/:.*//'`
+ LOBUILDDIR_ARM64_V8A=`echo $with_lo_builddir | sed 's/^.*://'`
+ fi
+
+ # Sanity check, just a random object file in the LibreOffice build tree - 64bit
+ if test "$ANDROID_ABI" != "armeabi-v7a" ; then
+ if test -f "$LOBUILDDIR_ARM64_V8A/workdir/LinkTarget/StaticLibrary/liblibpng.a" ; then
+ AC_MSG_RESULT([$LOBUILDDIR_ARM64_V8A])
+ else
+ AC_MSG_ERROR([This is not a LibreOffice 64bit core build directory: $LOBUILDDIR_ARM64_V8A])
+ fi
+ fi
+ fi
+
# Sanity check, just a random object file in the LibreOffice build tree
if test \( "$enable_iosapp" = "yes" -a -f "$LOBUILDDIR/workdir/CxxObject/vcl/ios/iosinst.o" \) -o \( "$enable_androidapp" = "yes" -a -f "$LOBUILDDIR/workdir/LinkTarget/StaticLibrary/liblibpng.a" \); then
AC_MSG_RESULT([$LOBUILDDIR])
@@ -326,6 +356,22 @@ if test \( "$enable_iosapp" = "yes" -a `uname -s` = "Darwin" \) -o \( "$enable_a
fi
POCOINCLUDE="$with_poco_includes"
+ if test "$enable_androidapp" = "yes" ; then
+ if echo "$POCOINCLUDE" | grep -qs ':' ; then
+ POCOINCLUDE=`echo $with_poco_includes | sed 's/:.*//'`
+ POCOINCLUDE_ARM64_V8A=`echo $with_poco_includes | sed 's/^.*://'`
+ fi
+
+ # Sanity check - 64bit
+ if test "$ANDROID_ABI" != "armeabi-v7a" ; then
+ if test -f "$POCOINCLUDE_ARM64_V8A/Poco/Poco.h"; then
+ AC_MSG_RESULT([$POCOINCLUDE_ARM64_V8A])
+ else
+ AC_MSG_ERROR([This is not a Poco 64bit include directory: $POCOINCLUDE_ARM64_V8A])
+ fi
+ fi
+ fi
+
# Sanity check
if test -f "$POCOINCLUDE/Poco/Poco.h"; then
AC_MSG_RESULT([$POCOINCLUDE])
@@ -339,6 +385,22 @@ if test \( "$enable_iosapp" = "yes" -a `uname -s` = "Darwin" \) -o \( "$enable_a
fi
POCOLIB="$with_poco_libs"
+ if test "$enable_androidapp" = "yes" ; then
+ if echo "$POCOLIB" | grep -qs ':' ; then
+ POCOLIB=`echo $with_poco_libs | sed 's/:.*//'`
+ POCOLIB_ARM64_V8A=`echo $with_poco_libs | sed 's/^.*://'`
+ fi
+
+ # Sanity check - 64bit
+ if test "$ANDROID_ABI" != "armeabi-v7a" ; then
+ if test -f "$POCOLIB_ARM64_V8A/libPocoFoundation.a"; then
+ AC_MSG_RESULT([$POCOLIB_ARM64_V8A])
+ else
+ AC_MSG_ERROR([This is not a Poco 64bit lib directory: $POCOLIB_ARM64_V8A])
+ fi
+ fi
+ fi
+
# Sanity check
if test -f "$POCOLIB/libPocoFoundation.a"; then
AC_MSG_RESULT([$POCOLIB])
@@ -351,21 +413,26 @@ if test \( "$enable_iosapp" = "yes" -a `uname -s` = "Darwin" \) -o \( "$enable_a
fi
fi
AC_SUBST(LOBUILDDIR)
+AC_SUBST(ANDROID_ABI)
+AC_SUBST(LOBUILDDIR_ARM64_V8A)
AC_SUBST(POCOINCLUDE)
+AC_SUBST(POCOINCLUDE_ARM64_V8A)
AC_SUBST(POCOLIB)
+AC_SUBST(POCOLIB_ARM64_V8A)
AC_SUBST(POCODEBUG)
LIBPNG_INCLUDES="$with_libpng_includes"
LIBPNG_LIBS="$with_libpng_libs"
LOKIT_PATH=`readlink -f $with_lokit_path`
if test "$enable_androidapp" = "yes"; then
- if test -z "$LIBPNG_INCLUDES" ; then
- LIBPNG_INCLUDES="$LOBUILDDIR/workdir/UnpackedTarball/libpng"
+ if test -n "$LIBPNG_INCLUDES" ; then
+ AC_MSG_ERROR([--with-libpng-includes is ignored on Android, please remove the parameter.])
fi
- if test -z "$LIBPNG_LIBS" ; then
- LIBPNG_LIBS="$LOBUILDDIR/workdir/LinkTarget/StaticLibrary"
+ if test -n "$LIBPNG_LIBS" ; then
+ AC_MSG_ERROR([--with-libpng-libs is ignored on Android, please remove the parameter.])
fi
- if test -z "$LOKIT_PATH" ; then
+ if test -n "$LOKIT_PATH" ; then
+ AC_MSG_ERROR([--with-lokit-path is ignored on Android, please remove the parameter.])
LOKIT_PATH=`readlink -f $LOBUILDDIR/include`
fi
fi
@@ -733,7 +800,7 @@ LIBS="$LIBS -lPocoNet${POCO_DEBUG_SUFFIX} -lPocoNetSSL${POCO_DEBUG_SUFFIX} -lPoc
AS_IF([test "$ENABLE_SSL" = "true"],
[LIBS="$LIBS -lssl -lcrypto"])
-AS_IF([test "$ENABLE_IOSAPP" != "true"],
+AS_IF([test "$ENABLE_IOSAPP" != "true" -a "$ENABLE_ANDROIDAPP" != "true"],
[AC_CHECK_HEADERS([LibreOfficeKit/LibreOfficeKit.h],
[],
[AC_MSG_ERROR([header LibreOfficeKit/LibreOfficeKit.h not found, perhaps you want to use --with-lokit-path])])
More information about the Libreoffice-commits
mailing list