1BASE_DIR=$(realpath ../../../../) 2APP:=bin/net_runner 3LMSLIB:=-lmindspore-lite-train -lmindspore-lite 4LMDLIB:=-lminddata-lite 5MSDIR:=$(realpath package-$(TARGET)/lib) 6ifneq ("$(wildcard $(MSDIR)/libhiai.so)","") 7 LHIAILIB:=-lhiai_ir_build -lhiai_ir -lhiai 8else 9 LHIAILIB:= 10endif 11 12SRC:=src/net_runner.cc 13OBJ:=$(SRC:.cc=.o) 14 15CFLAGS := -Ofast -std=c++17 \ 16 -I . \ 17 -I ./msl/runtime \ 18 -I ./msl/runtime/minddata \ 19 -I ./msl/tools/third_party/flatbuffers/include 20 21 22ifeq ($(TARGET),arm64) 23CXX := ${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ 24CFLAGS += --target=aarch64-none-linux-android21 --gcc-toolchain=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64 --sysroot=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/sysroot -fdata-sections -ffunction-sections 25LDFLAGS := --target=aarch64-none-linux-android21 --gcc-toolchain=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64 --sysroot=${ANDROID_NDK}/toolchains/llvm/prebuilt/linux-x86_64/sysroot -Wl,--gc-sections 26LDFLAGS += -L$(MSDIR) $(LMSLIB) $(LMDLIB) -pthread -llog -latomic -lm $(LHIAILIB) -Wl,-rpath,$(MSDIR) 27else 28CFLAGS += -g 29LDFLAGS := -L$(MSDIR) $(LMSLIB) $(LMDLIB) -lpthread -Wl,-rpath,$(MSDIR) 30endif 31LD := ${CXX} 32 33 34all:$(APP) 35 36$(APP): $(OBJ) 37 @mkdir -p bin 38 $(LD) $(OBJ) $(LDFLAGS) -o $@ 39 40clean: 41 rm -rf src/*.o bin/ 42 43 44mrproper: 45 rm -rf package* msl src/*.o bin/ model/*.mindir model/*.ms model/*.so* model/converter_lite 46 47%.o:%.cc 48 $(CXX) $(CFLAGS) -c $< -o $@ 49