1TOOLCHAIN_PREBUILTS := "../../../prebuilts/" 2TOOLCHAIN_PATH_ARM32 := "gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/bin/" 3TOOLCHAIN_PATH_AARCH64 := "gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/" 4CROSS_COMPILE32 := "arm-none-linux-gnueabihf-gcc" 5CROSS_COMPILE64 := "aarch64-none-linux-gnu-gcc" 6ARM32_TOOLCHAIN_GCC := "${TOOLCHAIN_PREBUILTS}${TOOLCHAIN_PATH_ARM32}${CROSS_COMPILE32}" 7AARCH64_TOOLCHAIN_GCC := "${TOOLCHAIN_PREBUILTS}${TOOLCHAIN_PATH_AARCH64}${CROSS_COMPILE64}" 8 9# Entry "$make 64" for build arm64 binary, otherwise build arm binary by default. 10ifeq (${bit},64) 11 ARM_PLATFORM := "arm64" 12 CC := ${AARCH64_TOOLCHAIN_GCC} 13else 14 ARM_PLATFORM := "arm" 15 CC := ${ARM32_TOOLCHAIN_GCC} 16endif 17 18INCLUDE := -I./ -I../out/target/include 19LIBS := -L../out/target/lib/${ARM_PLATFORM} -lrkcrypto 20CFLAGS := -g -Wall -O2 21 22SOURCE := $(wildcard *.c) 23OBJS := $(patsubst %.c,%.o,$(SOURCE)) 24 25TARGET := librkcrypto_demo 26 27$(TARGET): $(OBJS) 28 $(CC) -o $@ $^ $(LIBS) 29%.o:%.c 30 $(CC) -c $^ $(INCLUDE) $(CFLAGS) 31 32clean: 33 rm -f $(OBJS) $(TARGET) 34 3564: 36 make bit=64 37 3832: 39 make bit=32