Blame view

src/Makefile 1.37 KB
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
1
2
3
  # 项目根目录
  TOP_DIR:=$(patsubst %/, %, $(dir $(abspath $(lastword $(MAKEFILE_LIST)))))
  export TOP_DIR
a2b7fd92   ming   测试代码优化
4
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
5
6
7
8
  # 各项目录
  BUILD_DIR:=$(TOP_DIR)/build
  BIN_DIR:=$(BUILD_DIR)/bin
  export BUILD_DIR
aac5773f   hucm   功能基本完成,接口待打磨
9
  
00b0fbdb   Hu Chunming   编译nvdec
10
  PROJECT_ROOT= /mnt/data/cmhu/FFNvDecoder
aac5773f   hucm   功能基本完成,接口待打磨
11
12
13
  
  DEPEND_DIR = $(PROJECT_ROOT)/bin
  SRC_ROOT = $(PROJECT_ROOT)/src
3d2ab595   Hu Chunming   支持gb28181
14
  THIRDPARTY_ROOT = $(PROJECT_ROOT)/3rdparty
3d2ab595   Hu Chunming   支持gb28181
15
  SPDLOG_ROOT = $(THIRDPARTY_ROOT)/spdlog-1.9.2/release
aac5773f   hucm   功能基本完成,接口待打磨
16
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
17
18
19
20
21
  #编译器
  CXX:=g++
  CXXFLAGS:=-std=c++11 -Wall -Wextra -Og -g 
  INCS:=-I $(TOP_DIR) \
  		-I $(SPDLOG_ROOT)/include \
aac5773f   hucm   功能基本完成,接口待打磨
22
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
23
24
  MACROS:=
  export CXX CXXFLAGS INCS MACROS
aac5773f   hucm   功能基本完成,接口待打磨
25
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
26
27
28
29
  # 链接器
  LD:=g++
  LDFLAGS:=
  LIBS:= -L $(SPDLOG_ROOT)/lib -l:libspdlog.a \
e41a52bb   Hu Chunming   1.优化数据读取线程;2. 添加A...
30
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
31
  # 各个模块
00b0fbdb   Hu Chunming   编译nvdec
32
  MODULES:= nvdecoder gb28181 interface demo
aac5773f   hucm   功能基本完成,接口待打磨
33
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
34
  # 各个模块对应的库
00b0fbdb   Hu Chunming   编译nvdec
35
36
37
  # MODULE_LIBS:=$(BUILD_DIR)/nvdecoder/lib/nvdecoder.a\
  # 			$(BUILD_DIR)/nvdecoder/lib/gb28181.a\
  # 			$(BUILD_DIR)/interface/lib/interface.a\
aac5773f   hucm   功能基本完成,接口待打磨
38
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
39
40
  # 最终目标文件
  TARGET:=$(BIN_DIR)/test
aac5773f   hucm   功能基本完成,接口待打磨
41
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
42
43
44
  # 默认最终目标
  .PHONY:all
  all:$(TARGET)
aac5773f   hucm   功能基本完成,接口待打磨
45
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
46
47
48
  # 最终目标依赖关系
  $(TARGET):FORCE | $(BIN_DIR)
  	@for n in $(MODULES); do make -s -f $(TOP_DIR)/$$n/Makefile MODULE=$$n || exit "$$?"; done
00b0fbdb   Hu Chunming   编译nvdec
49
  # @echo -e "\e[32m""Linking executable $(TARGET)""\e[0m"
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
50
  #@$(LD) $(LDFLAGS) -o $@ $(MODULE_LIBS) $(LIBS)
aac5773f   hucm   功能基本完成,接口待打磨
51
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
52
53
54
  # 若没有bin目录则自动生成
  $(BIN_DIR):
  	@mkdir -p $@
3d2ab595   Hu Chunming   支持gb28181
55
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
56
57
58
  # 强制执行命令
  .PHONY:FORCE
  FORCE:
aac5773f   hucm   功能基本完成,接口待打磨
59
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
60
61
  # make clean直接删除整个build目录
  .PHONY:clean
aac5773f   hucm   功能基本完成,接口待打磨
62
  clean:
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
63
  	@rm -rf $(BUILD_DIR)