CC = gcc XX = c++ TARGET = start PROJ_ALL_PATH = $(PWD)/../../.. CUR_PROJ_PATH = $(PWD)/../.. OPENCV_PATH = $(PROJ_ALL_PATH)/third_party/opencv_4_1 ACL_PATH = $(ASCEND_AICPU_PATH)/acllib INCLUDES = -I$(PROJ_ALL_PATH)/common \ -I$(PROJ_ALL_PATH)/common/dvpp \ -I$(CUR_PROJ_PATH)/src \ -I$(OPENCV_PATH)/include \ -I$(OPENCV_PATH)/include/opencv2 \ -I$(ACL_PATH)/include \ CFLAGS = -O3 -std=c++11 $(INCLUDES) -DENABLE_DVPP_INTERFACE -D_GLIBCXX_USE_CXX11_ABI=0 local_shared_libs_dirs := \ $(OPENCV_PATH)/lib \ $(CUR_PROJ_PATH)/linux \ $(ACL_PATH)/lib64 \ local_shared_libs := \ opencv_world \ vpt_det \ ascendcl \ acl_dvpp \ SHARED_LIBRARIES := $(foreach shared_lib, $(local_shared_libs), -l$(shared_lib)) SHARED_LIBRARIES_DIRS := $(foreach shared_lib_dir, $(local_shared_libs_dirs), -L$(shared_lib_dir) -Wl,-z,relro,-z,now,-z,noexecstack,-rpath-link,$(shared_lib_dir)) SRCS := $(wildcard $(CUR_PROJ_PATH)/src/test/*.cpp) SRCS += $(wildcard $(PROJ_ALL_PATH)/common/dvpp/*.cpp) DIRS := $(notdir $(SRCS)) OBJS := $(patsubst %cpp, %o, $(DIRS)) all: $(TARGET) $(TARGET):$(OBJS) $(XX) $(CFLAGS) -o $@ $^ $(SHARED_LIBRARIES_DIRS) $(SHARED_LIBRARIES) %.o:$(CUR_PROJ_PATH)/src/test/%.cpp $(XX) $(CFLAGS) -c $< %.o:$(PROJ_ALL_PATH)/common/dvpp/%.cpp $(XX) $(CFLAGS) -c $< clean: @rm -f $(TARGET) @rm -f $(OBJS)