Browse Source

JNI-81: Update libetpan build to use output dir and avoid unziping

JNI-88
Hussein Kasem 6 years ago
parent
commit
a061c3fcf5
  1. 17
      android/build.gradle
  2. 3
      android/external/arm64-v8a/Makefile
  3. 3
      android/external/armeabi-v7a/Makefile
  4. 3
      android/external/x86/Makefile
  5. 3
      android/external/x86_64/Makefile
  6. 18
      android/jni/Android.mk

17
android/build.gradle

@ -4,8 +4,6 @@ def pEpEngineSrc = hasProperty('pEpEngineSrc') ? pEpEngineSrc : "../../pEpEngine
def buildAutomatic = hasProperty('buildAutomatic') ? buildAutomatic : "true" def buildAutomatic = hasProperty('buildAutomatic') ? buildAutomatic : "true"
def threadsToUse = hasProperty('threadsToUse') ? buildAutomatic : 2 def threadsToUse = hasProperty('threadsToUse') ? buildAutomatic : 2
def libetpanAndroid = file('external')
def pEpEngineDB = new File(new File(pEpEngineSrc), 'db') def pEpEngineDB = new File(new File(pEpEngineSrc), 'db')
buildscript { buildscript {
@ -80,7 +78,7 @@ android {
jniDebuggable true jniDebuggable true
externalNativeBuild { externalNativeBuild {
ndkBuild { ndkBuild {
arguments "-j${threadsToUse}" arguments "-j${threadsToUse}", 'NDK_LOG=1'
// arguments '-B', 'NDK_DEBUG=1', 'NDEBUG=null', 'NDK_LOG=1' // arguments '-B', 'NDK_DEBUG=1', 'NDEBUG=null', 'NDK_LOG=1'
} }
} }
@ -93,11 +91,6 @@ android {
} }
} }
ext {
//FIXME> improve that build to be able to build without the need of unzip deps // Get rid of unziping
libEtPanZip = new File(libetpanAndroid, 'libetpan-android-1.zip')
}
// call source generation makefile target // call source generation makefile target
task genSources(type:Exec, dependsOn: 'genpEpEngineAsn1Sources') { task genSources(type:Exec, dependsOn: 'genpEpEngineAsn1Sources') {
workingDir '../src' workingDir '../src'
@ -141,12 +134,6 @@ android {
commandLine 'make', 'clean-assets' commandLine 'make', 'clean-assets'
} }
// unzip some of the dependencies
task unzipDeps(type: Copy, dependsOn: 'buildExternal') {
from zipTree(libEtPanZip)
into file("${buildDir}")
}
// builds pEpEnginge's system.db // builds pEpEnginge's system.db
task buildpEpEngineSystemDB(type:Exec) { task buildpEpEngineSystemDB(type:Exec) {
workingDir pEpEngineDB workingDir pEpEngineDB
@ -160,7 +147,7 @@ android {
} }
if(buildAutomatic == "true") { if(buildAutomatic == "true") {
buildpEpEngineSystemDB.dependsOn(unzipDeps) buildpEpEngineSystemDB.dependsOn(buildExternal)
} }
// This ensures that assets are populated before collecting resources. // This ensures that assets are populated before collecting resources.

3
android/external/arm64-v8a/Makefile

@ -132,7 +132,8 @@ libetpan.src.stamp: ../downloads/libetpan.tar.gz
libetpan/Makefile: libetpan.src.stamp | libiconv-install libetpan/Makefile: libetpan.src.stamp | libiconv-install
cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh
mv libetpan/build-android/libetpan-android-1.zip ../ cp -r libetpan/build-android/libetpan-android-1/$(APP_ABI)/lib/* $(LOCAL)/lib/
cp -r libetpan/build-android/libetpan-android-1/include/* $(LOCAL)/include/
touch $@ touch $@
libetpan-build: libetpan/Makefile libetpan-build: libetpan/Makefile

3
android/external/armeabi-v7a/Makefile

@ -132,7 +132,8 @@ libetpan.src.stamp: ../downloads/libetpan.tar.gz
libetpan/Makefile: libetpan.src.stamp | libiconv-install libetpan/Makefile: libetpan.src.stamp | libiconv-install
cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh
mv libetpan/build-android/libetpan-android-1.zip ../ cp -r libetpan/build-android/libetpan-android-1/$(APP_ABI)/lib/* $(LOCAL)/lib/
cp -r libetpan/build-android/libetpan-android-1/include/* $(LOCAL)/include/
touch $@ touch $@
libetpan-build: libetpan/Makefile libetpan-build: libetpan/Makefile

3
android/external/x86/Makefile

@ -132,7 +132,8 @@ libetpan.src.stamp: ../downloads/libetpan.tar.gz
libetpan/Makefile: libetpan.src.stamp | libiconv-install libetpan/Makefile: libetpan.src.stamp | libiconv-install
cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh
mv libetpan/build-android/libetpan-android-1.zip ../ cp -r libetpan/build-android/libetpan-android-1/$(APP_ABI)/lib/* $(LOCAL)/lib/
cp -r libetpan/build-android/libetpan-android-1/include/* $(LOCAL)/include/
touch $@ touch $@
libetpan-build: libetpan/Makefile libetpan-build: libetpan/Makefile

3
android/external/x86_64/Makefile

@ -132,7 +132,8 @@ libetpan.src.stamp: ../downloads/libetpan.tar.gz
libetpan/Makefile: libetpan.src.stamp | libiconv-install libetpan/Makefile: libetpan.src.stamp | libiconv-install
cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh cd libetpan/build-android; ICONV_PREFIX=$(LOCAL) bash ./build.sh
mv libetpan/build-android/libetpan-android-1.zip ../ cp -r libetpan/build-android/libetpan-android-1/$(APP_ABI)/lib/* $(LOCAL)/lib/
cp -r libetpan/build-android/libetpan-android-1/include/* $(LOCAL)/include/
touch $@ touch $@
libetpan-build: libetpan/Makefile libetpan-build: libetpan/Makefile

18
android/jni/Android.mk

@ -2,38 +2,38 @@ LOCAL_PATH:= $(call my-dir)
SRC_PATH := $(LOCAL_PATH)/../../../ SRC_PATH := $(LOCAL_PATH)/../../../
ENGINE_PATH := $(LOCAL_PATH)/../../../pEpEngine ENGINE_PATH := $(LOCAL_PATH)/../../../pEpEngine
LIB_PEP_ADAPTER_PATH:=$(SRC_PATH)/libpEpAdapter LIB_PEP_ADAPTER_PATH:=$(SRC_PATH)/libpEpAdapter
GPGBUILD:= $(LOCAL_PATH)/../external/output/$(TARGET_ARCH_ABI) GPGBUILD:= $(LOCAL_PATH)/../external/output/
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libiconv LOCAL_MODULE := libiconv
LOCAL_SRC_FILES := $(GPGBUILD)/lib/libiconv.a LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libiconv.a
include $(PREBUILT_STATIC_LIBRARY) include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libsequoia_openpgp_ffi LOCAL_MODULE := libsequoia_openpgp_ffi
LOCAL_SRC_FILES := $(GPGBUILD)/lib/libsequoia_openpgp_ffi.a LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libsequoia_openpgp_ffi.a
include $(PREBUILT_STATIC_LIBRARY) include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libhogweed LOCAL_MODULE := libhogweed
LOCAL_SRC_FILES := $(GPGBUILD)/lib/libhogweed.so LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libhogweed.so
include $(PREBUILT_SHARED_LIBRARY) include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libgmp LOCAL_MODULE := libgmp
LOCAL_SRC_FILES := $(GPGBUILD)/lib/libgmp.so LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libgmp.so
include $(PREBUILT_SHARED_LIBRARY) include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libnettle LOCAL_MODULE := libnettle
LOCAL_SRC_FILES := $(GPGBUILD)/lib/libnettle.so LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libnettle.so
include $(PREBUILT_SHARED_LIBRARY) include $(PREBUILT_SHARED_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := libetpan LOCAL_MODULE := libetpan
LOCAL_SRC_FILES := $(LOCAL_PATH)/../build/libetpan-android-1/libs/$(TARGET_ARCH_ABI)/libetpan.a LOCAL_SRC_FILES := $(GPGBUILD)/$(TARGET_ARCH_ABI)/lib/libetpan.a
LOCAL_EXPORT_C_INCLUDES += $(LOCAL_PATH)/../build/libetpan-android-1/include LOCAL_EXPORT_C_INCLUDES += $(GPGBUILD)/$(TARGET_ARCH_ABI)/include
LOCAL_EXPORT_LDLIBS := -lz LOCAL_EXPORT_LDLIBS := -lz
include $(PREBUILT_STATIC_LIBRARY) include $(PREBUILT_STATIC_LIBRARY)
@ -55,7 +55,7 @@ LOCAL_SRC_FILES := \
../../src/identity_api.cc \ ../../src/identity_api.cc \
../../src/jniutils.cc ../../src/jniutils.cc
LOCAL_C_INCLUDES += $(GPGBUILD)/include LOCAL_C_INCLUDES += $(GPGBUILD)/$(TARGET_ARCH_ABI)/include
LOCAL_C_INCLUDES += $(LIB_PEP_ADAPTER_PATH)/build-android/include $(SRC_PATH)/libpEpAdapter LOCAL_C_INCLUDES += $(LIB_PEP_ADAPTER_PATH)/build-android/include $(SRC_PATH)/libpEpAdapter
LOCAL_LDFLAGS = -Wl,--allow-multiple-definition LOCAL_LDFLAGS = -Wl,--allow-multiple-definition

Loading…
Cancel
Save