1*4882a593SmuzhiyunTOOLCHAIN_PREBUILTS := "../../../prebuilts/" 2*4882a593SmuzhiyunTOOLCHAIN_PATH_ARM32 := "gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/" 3*4882a593SmuzhiyunTOOLCHAIN_PATH_AARCH64 := "gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/" 4*4882a593SmuzhiyunCROSS_COMPILE32 := "arm-none-linux-gnueabihf-gcc" 5*4882a593SmuzhiyunCROSS_COMPILE64 := "aarch64-none-linux-gnu-gcc" 6*4882a593SmuzhiyunARM32_TOOLCHAIN_GCC := "${TOOLCHAIN_PREBUILTS}${TOOLCHAIN_PATH_ARM32}${CROSS_COMPILE32}" 7*4882a593SmuzhiyunAARCH64_TOOLCHAIN_GCC := "${TOOLCHAIN_PREBUILTS}${TOOLCHAIN_PATH_AARCH64}${CROSS_COMPILE64}" 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun# Entry "$make 64" for build arm64 binary, otherwise build arm binary by default. 10*4882a593Smuzhiyunifeq (${bit},64) 11*4882a593Smuzhiyun ARM_PLATFORM := "arm64" 12*4882a593Smuzhiyun CC := ${AARCH64_TOOLCHAIN_GCC} 13*4882a593Smuzhiyunelse 14*4882a593Smuzhiyun ARM_PLATFORM := "arm" 15*4882a593Smuzhiyun CC := ${ARM32_TOOLCHAIN_GCC} 16*4882a593Smuzhiyunendif 17*4882a593Smuzhiyun 18*4882a593SmuzhiyunINCLUDE := -I./ -I../out/target/include 19*4882a593SmuzhiyunLIBS := -L../out/target/lib/${ARM_PLATFORM} -lrkcrypto 20*4882a593SmuzhiyunCFLAGS := -g -Wall -O2 21*4882a593Smuzhiyun 22*4882a593SmuzhiyunSOURCE := $(wildcard *.c) 23*4882a593SmuzhiyunOBJS := $(patsubst %.c,%.o,$(SOURCE)) 24*4882a593Smuzhiyun 25*4882a593SmuzhiyunTARGET := librkcrypto_demo 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun$(TARGET): $(OBJS) 28*4882a593Smuzhiyun $(CC) -o $@ $^ $(LIBS) 29*4882a593Smuzhiyun%.o:%.c 30*4882a593Smuzhiyun $(CC) -c $^ $(INCLUDE) $(CFLAGS) 31*4882a593Smuzhiyun 32*4882a593Smuzhiyunclean: 33*4882a593Smuzhiyun rm -f $(OBJS) $(TARGET) 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun64: 36*4882a593Smuzhiyun make bit=64 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun32: 39*4882a593Smuzhiyun make bit=32