Makefile 2.75 KB
XX = g++


PROJECT_ROOT= /home/cmhu/vpt_ascend_arm

DEPEND_DIR = $(PROJECT_ROOT)/bin
SRC_ROOT = $(PROJECT_ROOT)/src

TARGET= $(PROJECT_ROOT)/bin/test_28181

THIRDPARTY_ROOT = $(PROJECT_ROOT)/3rdparty
SPDLOG_ROOT = $(THIRDPARTY_ROOT)/spdlog-1.9.2/release
OPENCV_ROOT = $(THIRDPARTY_ROOT)/opencv_4_1
JSON_ROOT = $(THIRDPARTY_ROOT)/jsoncpp-1.9.5/release
FFMPEG_ROOT = $(THIRDPARTY_ROOT)/ffmpeg-4.4.4/release

GB28181_SDK = /home/cmhu/vpt_ascend_arm/3rdparty/gb28181_3rd
JRTP_ROOT = $(GB28181_SDK)/jrtp_export
SIP_SDK = $(GB28181_SDK)/release

DEFS = -DENABLE_DVPP_INTERFACE -DUSE_DVPP

include_dir=-I/usr/local/Ascend/ascend-toolkit/6.3.RC1/aarch64-linux/include \
			-I $(SPDLOG_ROOT)/include \
			-I $(SRC_ROOT)/common \
			-I $(OPENCV_ROOT)/include \
			-I $(JSON_ROOT)/include \
			-I $(FFMPEG_ROOT)/include \
			-I $(JRTP_ROOT)/jrtplib/include/jrtplib3 \
			-I $(SIP_SDK)/include \
			-I $(SRC_ROOT)/decoder/gb28181/rtp \
			-I $(SRC_ROOT)/decoder/gb28181/sip \
			-I $(SRC_ROOT)/decoder/gb28181 \

lib_dir=-L/usr/local/Ascend/ascend-toolkit/6.3.RC1/runtime/lib64 \
		
lib=-lacl_dvpp -lascendcl 

LIBS= -L $(FFMPEG_ROOT)/lib -lavformat -lavcodec -lswscale -lavutil -lavfilter -lswresample -lavdevice \
		-L $(JRTP_ROOT)/jrtplib/lib -l:libjrtp.a \
		-L $(SIP_SDK)/lib -l:libeXosip2.a -l:libosipparser2.a -l:libosip2.a -lcares\

CXXFLAGS= -g -O0 -fPIC $(include_dir) $(lib_dir) $(lib) $(LIBS) $(DEFS) -lpthread -lrt -lz -fexceptions -std=c++11 -D_GLIBCXX_USE_CXX11_ABI=0 -fvisibility=hidden -Wall -Wno-deprecated -Wdeprecated-declarations -Wl,-Bsymbolic -ldl



SRCS:=$(wildcard $(SRC_ROOT)/decoder/interface/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/dvpp/*.cpp) \
    	$(wildcard $(SRC_ROOT)/decoder/gb28181/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/gb28181/rtp/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/gb28181/sip/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/gb28181/sip/Message/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/gb28181/sip/tinyxml2/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/gb28181/sip/Utils/*.cpp) \
		$(wildcard $(SRC_ROOT)/decoder/*.cpp) \

OBJS = $(patsubst %.cpp, %.o, $(notdir $(SRCS)))


$(TARGET):$(OBJS)
	rm -f $(TARGET)
	$(XX) -o $@ $^ $(CXXFLAGS)
	rm -f *.o

%.o:$(SRC_ROOT)/decoder/dvpp/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/rtp/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/sip/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/sip/Message/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/sip/tinyxml2/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/gb28181/sip/Utils/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/interface/%.cpp
	$(XX) $(CXXFLAGS) -c $<

%.o:$(SRC_ROOT)/decoder/%.cpp
	$(XX) $(CXXFLAGS) -c $<

clean:
	rm -f *.o $(TARGET)