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@collabora.com> Tested-by: Jan Holesovsky <kendy@collabora.com>distro/collabora/code-4.2.0-3
parent
de006eab17
commit
d556760c2f
|
@ -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
|
||||
|
|
|
@ -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@'
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -9,4 +9,5 @@ ext {
|
|||
liboVersionMinor = '@LOOLWSD_VERSION_MAJOR@'
|
||||
liboGitFullCommit = '@LOOLWSD_VERSION_HASH@'
|
||||
liboApplicationId = '@ANDROID_PACKAGE_NAME@'
|
||||
liboAndroidAbi = '@ANDROID_ABI@'
|
||||
}
|
||||
|
|
|
@ -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@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoNet@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoRedis@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoUtil@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoXML@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoJSON@POCODEBUG@.a
|
||||
@POCOLIB@/libPocoFoundation@POCODEBUG@.a
|
||||
${LOBUILDDIR_ABI}/workdir/LinkTarget/StaticLibrary/liblibpng.a
|
||||
${POCOLIB_ABI}/libPocoEncodings@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoNet@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoRedis@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoUtil@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoXML@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoJSON@POCODEBUG@.a
|
||||
${POCOLIB_ABI}/libPocoFoundation@POCODEBUG@.a
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/lib/${ANDROID_ABI}/liblo-native-code.so"
|
||||
)
|
||||
|
|
89
configure.ac
89
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])])
|
||||
|
|
Loading…
Reference in New Issue