1NDK_ROOT := $(shell dirname $(CC))/../../../../..
2NDK_ROOT := $(realpath $(NDK_ROOT))
3
4ifeq "$(findstring 64, $(ARCH))" "64"
5	# lowest 64-bit API level
6	API_LEVEL := 21
7else ifeq "$(ARCH)" "i386"
8	# clone(2) declaration is present only since this api level
9	API_LEVEL := 17
10else
11	# lowest supported 32-bit API level
12	API_LEVEL := 9
13endif
14
15ifeq "$(ARCH)" "arm"
16	SYSROOT_ARCH := arm
17	STL_ARCH := armeabi-v7a
18	ARCH_CFLAGS += -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -marm
19else ifeq "$(ARCH)" "aarch64"
20	SYSROOT_ARCH := arm64
21	STL_ARCH := arm64-v8a
22else ifeq "$(ARCH)" "i386"
23	SYSROOT_ARCH := x86
24	STL_ARCH := x86
25else ifeq "$(ARCH)" "mips64r6"
26	SYSROOT_ARCH := mips64
27	STL_ARCH := mips64
28else ifeq "$(ARCH)" "mips32"
29	SYSROOT_ARCH := mips
30	STL_ARCH := mips
31else
32	SYSROOT_ARCH := $(ARCH)
33	STL_ARCH := $(ARCH)
34endif
35
36ARCH_CFLAGS += \
37	--sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH) \
38	-isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include \
39	-isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/include \
40	-isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include/backward
41ARCH_LDFLAGS += -lm \
42	$(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/libgnustl_static.a \
43	--sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH)
44