You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
2.5 KiB
78 lines
2.5 KiB
# TODO: Tiddy up
|
|
# COLORS
|
|
BOLD := $(shell tput bold)
|
|
RED := $(shell tput -Txterm setaf 1)
|
|
GREEN := $(shell tput -Txterm setaf 2)
|
|
YELLOW := $(shell tput -Txterm setaf 3)
|
|
CYAN := $(shell tput -Txterm setaf 6)
|
|
PURPLE := $(shell tput -Txterm setaf 5)
|
|
WHITE := $(shell tput -Txterm setaf 7)
|
|
RESET := $(shell tput -Txterm sgr0)
|
|
|
|
### Android NDK Common conf
|
|
|
|
NDK_TOOLCHAIN_COMPILER ?= clang
|
|
ANDROID_API ?= 21
|
|
|
|
### Select GNU SED on MacOS.
|
|
|
|
NDK_UNAME := $(shell uname -s | tr '[A-Z]' '[a-z]')
|
|
|
|
ifeq ($(NDK_UNAME),darwin)
|
|
SED=gsed
|
|
TOOLCHAIN_ARCH=darwin-x86_64
|
|
else
|
|
SED=sed
|
|
TOOLCHAIN_ARCH=linux-x86_64
|
|
endif
|
|
|
|
ANDROID_NDK_HOME=$(ANDROID_NDK)/toolchains/llvm/prebuilt/$(TOOLCHAIN_ARCH)
|
|
|
|
### Toolchain tools
|
|
LD := $(ANDROID_NDK_HOME)/bin/ld
|
|
AR := $(ANDROID_NDK_HOME)/bin/llvm-ar
|
|
RANLIB := $(ANDROID_NDK_HOME)/bin/llvm-ranlib
|
|
STRIP := $(ANDROID_NDK_HOME)/bin/llvm-strip
|
|
|
|
### Sequoia deps versions
|
|
OPENSSL_VERSION=1.1.1q
|
|
GMP_VERSION=6.2.1
|
|
NETTLE_VERSION=3.7.3
|
|
|
|
### Git deps repos
|
|
EXTERNAL_GIT_REPOS += libetpan|https://gitea.pep.foundation/pEp.foundation/libetpan.git?507ab94fc9609432ef2d4c62770139482f1b5084
|
|
# TODO PEMA-103 move this to not external anymore, it comes with the engine
|
|
EXTERNAL_GIT_REPOS += pEpEngineSequoiaBackend|https://gitea.pep.foundation/pEp.foundation/pEpEngineSequoiaBackend.git?58887287fda1d0d076409a2e5f0f61844c9ee255
|
|
|
|
### Common variables
|
|
#### Source code targets
|
|
EXTERNAL_SRCS += libiconv-src
|
|
EXTERNAL_SRCS += uuid-src
|
|
EXTERNAL_SRCS += openssl-src
|
|
EXTERNAL_SRCS += gmp-src
|
|
EXTERNAL_SRCS += nettle-src
|
|
|
|
#### Clean source code targets.
|
|
EXTERNAL_SRCS_CLEAN += libiconv-clean
|
|
EXTERNAL_SRCS_CLEAN += uuid-clean
|
|
EXTERNAL_SRCS_CLEAN += openssl-clean
|
|
EXTERNAL_SRCS_CLEAN += gmp-clean
|
|
EXTERNAL_SRCS_CLEAN += nettle-clean
|
|
EXTERNAL_SRCS_CLEAN += pEpEngineSequoiaBackend-clean
|
|
|
|
### Other variables
|
|
ANDROID_ETPAN_BUILD_VERSION=2
|
|
# install root for built files
|
|
EXTERNAL_ROOT = $(shell pwd)
|
|
DESTDIR = $(EXTERNAL_ROOT)/..
|
|
prefix = /output/$(APP_ABI)
|
|
LOCAL = $(DESTDIR)$(prefix)
|
|
NDK_TOOLCHAIN = $(NDK_TOOLCHAIN_TARGET)-$(NDK_TOOLCHAIN_COMPILER)
|
|
TEMP_WORK_PATH = $(ANDROID_NDK_HOME)/bin:${PATH}:$(NDK_TOOLCHAIN)/bin:$(LOCAL)/bin
|
|
|
|
CC = $(ANDROID_NDK_HOME)/bin/$(COMPILER_PREFIX)$(ANDROID_API)-clang
|
|
AS = $(CC)
|
|
CXX = $(ANDROID_NDK_HOME)/bin/$(COMPILER_PREFIX)$(ANDROID_API)-clang++
|
|
|
|
MYCFLAGS = -DANDROID -I$(LOCAL)/include $(TARGET_CFLAGS) -fPIE -fPIC -std=c99 $($ARCH_DEBUG_CFLAGS) # change 'release' to 'debug' for unoptimized debug builds
|
|
MYLDFLAGS = -llog -L$(LOCAL)/lib $(TARGET_LDFLAGS) -pie
|