Files
SDK_SG200x_V2/middleware/v2/sample/vdec/Makefile
sophgo-forum-service 62573a835f middleware: weekly rls 2024.07.20
-e90961, fix aac+vqe "reamain data not process AEC" bug.
-3c08de, split module vpu into vi vo vpss rgn gdc.
-b5d998, (ive): add comment to api.
-166849, mw support arm32.

Change-Id: Ied488d392da9eed2e3a94e1244eeee540c389372
2024-07-25 17:11:08 +08:00

71 lines
2.1 KiB
Makefile

SHELL = /bin/bash
ifeq ($(PARAM_FILE), )
PARAM_FILE:=../../Makefile.param
include $(PARAM_FILE)
endif
include ../sample.mk
SDIR = $(PWD)
SRCS = $(wildcard $(SDIR)/../venc/src/*.c) $(wildcard $(SDIR)/src/*.c)
VDEC_SRCS = $(SDIR)/sample_vdec.c
VDEC_INC=../../modules/vdec
SAMPLE_VENC_INC=$(SDIR)/../venc/include
SAMPLE_VDEC_INC=$(SDIR)/include
INCS = -I$(MW_INC) -I$(ISP_INC) -I$(COMM_INC) -I$(SAMPLE_VDEC_INC) -I$(SAMPLE_VENC_INC) -I$(VDEC_INC) -I$(KERNEL_INC) -I../common -I$(SYS_INC)
OBJS = $(SRCS:.c=.o)
VDEC_OBJS = $(VDEC_SRCS:.c=.o)
DEPS = $(SRCS:.c=.d)
VDEC_DEPS = $(VDEC_SRCS:.c=.d)
TARGET = sample_vdec
ifeq ($(SDK_VER),32bit)
TARGET_WITH_ASAN = sample_vdec_asan
else ifeq ($(SDK_VER),64bit)
TARGET_WITH_ASAN = sample_vdec_asan
else
TARGET_WITH_ASAN =
endif
PKG_CONFIG_PATH = $(MW_PATH)/pkgconfig
REQUIRES = cvi_common cvi_vdec cvi_sample
LIBS += $(shell PKG_CONFIG_PATH=$(PKG_CONFIG_PATH) pkg-config --libs --define-variable=mw_dir=$(MW_PATH) $(REQUIRES))
ifeq ($(MULTI_PROCESS_SUPPORT), 1)
DEFS += -DRPC_MULTI_PROCESS
LIBS += -lnanomsg
endif
EXTRA_CFLAGS = $(DEFS) $(INCS)
EXTRA_LDFLAGS = $(LIBS) -lini -lm -lpthread
EXTRA_LDFLAGS_WITH_ASAN = -Wl,-Bdynamic $(LIBS) -lini -lm -lpthread
EXTRA_LDFLAGS_WITH_ASAN += -fno-omit-frame-pointer -fsanitize-recover=address -lasan -lcvi_dnvqe -lcvi_ssp2
.PHONY : clean all
all: $(TARGET) $(TARGET_WITH_ASAN)
$(COMMON_DIR)/%.o: $(COMMON_DIR)/%.c
@$(CC) $(DEPFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) -o $@ -c $<
@echo [$(notdir $(CC))] $(notdir $@)
$(SDIR)/%.o: $(SDIR)/%.c
@$(CC) $(DEPFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) -o $@ -c $<
@echo [$(notdir $(CC))] $(notdir $@)
$(TARGET): $(VDEC_OBJS) $(OBJS) $(MW_LIB)/libvdec.a $(MW_LIB)/libsys.a
@$(CXX) -o $@ -Wl,--start-group $(OBJS) $(VDEC_OBJS) -Wl,--end-group $(ELFFLAGS) $(EXTRA_LDFLAGS)
@echo -e $(BLUE)[LINK]$(END)[$(notdir $(CXX))] $(notdir $@)
$(TARGET_WITH_ASAN): $(VDEC_OBJS) $(OBJS)
@$(CXX) -o $@ -Wl,--start-group $(OBJS) $(VDEC_OBJS) -Wl,--end-group $(ELFFLAGS) $(EXTRA_LDFLAGS_WITH_ASAN)
@echo -e $(BLUE)[LINK]$(END)[$(notdir $(CXX))] $(notdir $@)
clean:
@rm -f $(VDEC_OBJS) $(OBJS) $(VDEC_DEPS) $(DEPS) $(TARGET) $(TARGET_WITH_ASAN)
-include $(VDEC_DEPS) $(DEPS)