mirror of
https://github.com/VCMP-SqMod/SqMod.git
synced 2024-11-08 08:47:17 +01:00
4a6bfc086c
Switched to POCO library for unified platform/library interface. Deprecated the external module API. It was creating more problems than solving. Removed most built-in libraries in favor of system libraries for easier maintenance. Cleaned and secured code with help from static analyzers.
90 lines
2.0 KiB
Plaintext
90 lines
2.0 KiB
Plaintext
#
|
|
# Android
|
|
#
|
|
# Make settings for Android NDK
|
|
#
|
|
|
|
#
|
|
# General Settings
|
|
#
|
|
LINKMODE ?= STATIC
|
|
ANDROID_ABI ?= armeabi
|
|
POCO_TARGET_OSNAME = Android
|
|
POCO_TARGET_OSARCH = $(ANDROID_ABI)
|
|
|
|
ifeq ($(ANDROID_ABI),armeabi)
|
|
TOOL = arm-linux-androideabi
|
|
ARCHFLAGS = -mthumb
|
|
else
|
|
ifeq ($(ANDROID_ABI),armeabi-v7a)
|
|
TOOL = arm-linux-androideabi
|
|
ARCHFLAGS = -march=armv7-a -mfloat-abi=softfp
|
|
LINKFLAGS = -Wl,--fix-cortex-a8
|
|
else
|
|
ifeq ($(ANDROID_ABI),x86)
|
|
TOOL = i686-linux-android
|
|
ARCHFLAGS = -march=i686 -msse3 -mstackrealign -mfpmath=sse
|
|
else
|
|
$(error Invalid ABI specified in ANDROID_ABI)
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
#
|
|
# Define Tools
|
|
#
|
|
CC = $(TOOL)-gcc
|
|
CXX = $(TOOL)-g++
|
|
LINK = $(CXX)
|
|
STRIP = $(TOOL)-strip
|
|
LIB = $(TOOL)-ar -cr
|
|
RANLIB = $(TOOL)-ranlib
|
|
SHLIB = $(CXX) -shared -Wl,-soname,$(notdir $@) -o $@
|
|
SHLIBLN = $(POCO_BASE)/build/script/shlibln
|
|
DEP = $(POCO_BASE)/build/script/makedepend.gcc
|
|
SHELL = sh
|
|
RM = rm -rf
|
|
CP = cp
|
|
MKDIR = mkdir -p
|
|
|
|
#
|
|
# Extension for Shared Libraries
|
|
#
|
|
SHAREDLIBEXT = .so.$(target_version)
|
|
SHAREDLIBLINKEXT = .so
|
|
|
|
#
|
|
# Compiler and Linker Flags
|
|
#
|
|
CFLAGS = $(ARCHFLAGS) -fpic -ffunction-sections -funwind-tables -fstack-protector -fno-strict-aliasing -finline-limit=64
|
|
CFLAGS32 =
|
|
CFLAGS64 =
|
|
CXXFLAGS = $(ARCHFLAGS) -fpic -ffunction-sections -funwind-tables -fstack-protector -fno-strict-aliasing -finline-limit=64 -frtti -fexceptions
|
|
CXXFLAGS32 =
|
|
CXXFLAGS64 =
|
|
LINKFLAGS +=
|
|
LINKFLAGS32 =
|
|
LINKFLAGS64 =
|
|
STATICOPT_CC =
|
|
STATICOPT_CXX =
|
|
STATICOPT_LINK = -static
|
|
SHAREDOPT_CC =
|
|
SHAREDOPT_CXX =
|
|
SHAREDOPT_LINK = -Wl,-rpath,$(LIBPATH)
|
|
DEBUGOPT_CC = -g -D_DEBUG
|
|
DEBUGOPT_CXX = -g -D_DEBUG
|
|
DEBUGOPT_LINK = -g
|
|
RELEASEOPT_CC = -O3 -DNDEBUG -fomit-frame-pointer
|
|
RELEASEOPT_CXX = -O2 -DNDEBUG -fomit-frame-pointer
|
|
RELEASEOPT_LINK = -O2
|
|
|
|
#
|
|
# System Specific Flags
|
|
#
|
|
SYSFLAGS = -DPOCO_ANDROID -DPOCO_NO_FPENVIRONMENT -DPOCO_NO_WSTRING -DPOCO_NO_SHAREDMEMORY
|
|
|
|
#
|
|
# System Specific Libraries
|
|
#
|
|
SYSLIBS = -lstdc++ -lsupc++
|