-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
100 lines (79 loc) · 1.59 KB
/
Makefile
File metadata and controls
100 lines (79 loc) · 1.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
CFLAGS+=-Wall \
-O2 \
-std=c99 \
FFMPEGLIB_WIN=\
ffmpeg\lib\win\libavcodec.dll.a \
ffmpeg\lib\win\libavformat.dll.a \
ffmpeg\lib\win\libavutil.dll.a \
ffmpeg\lib\win\libswscale.dll.a \
ffmpeg\lib\win\libswresample.dll.a
D3DLIB = \
-ld3d9 \
-lole32 \
-lgdi32
WIN_SRC=\
svideop.c \
render.c \
render_gdi.c \
render_d3d.c \
svideo_convert.c \
winapi.c
LINUX_INCLUD=\
-Iffmpeg/include \
-Iusr/include/va \
-Isdl/include
LINUX_LIB=\
-Lffmpeg/lib/linux \
-lavcodec \
-lavformat \
-lavutil \
-lswscale \
-lswresample \
-lSDL2 \
-lva \
-lva-x11 \
-lX11
HVPLAYER_SRC=\
linux/hvplayer2.c \
linux/vaapi.c \
linux/vad.c \
linux/my_utils.c \
linux/socket.c \
linux/h264_recv.c
all:
echo 'make win or make linux'
win:svideo.dll
linux:libHvDeviceVideo.so hvplayer
svideo.dll:svideop.exe svideo.c
gcc $(CFLAGS) -shared -Wl,--output-def,svideo.def,--out-implib,svideo.a -o $@ svideo.c
lib /machine:ix86 /def:svideo.def
svideop.exe:$(WIN_SRC)
gcc $(CFLAGS) -Iffmpeg/include -o $@ $^ $(FFMPEGLIB_WIN) $(D3DLIB)
hvplayer:$(HVPLAYER_SRC)
gcc $(CFLAGS) $(LINUX_INCLUDE) -o $@ $^ $(LINUX_LIB)
libHvDeviceVideo.so:linux/hvvideo.c
gcc $(CFLAGS) -fPIC -shared -o $@ $^ -lpthread
.PHONY:clean
clean:
-rm *.dll
-rm *.so
-rm *.a
-rm *.def
-rm *.lib
-rm *.exe
.PHONY:install
install:
-mkdir ./bin
-mkdir ./bin/lib
-mkdir ./bin/include
-mv svideo.dll ./bin/lib
-mv svideo.a ./bin/lib
-mv svideo.lib ./bin/lib
-mv libHvDeviceVideo.so ./bin/lib
-cp hvtype.h ./bin/include
-cp svideo_convert.h ./bin/include
-cp svideo_rtsp.h ./bin/include
-rm svideo.def
-rm *.exp
uninstall:
-rm dir -rf ./bin