dupengyue
2017-07-20 3a5f09c61a87adb8dba2cc4a5366893886ba1c1d
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
LIVEMEDIA_BASE=/opt/live/inst
if [ -d $LIVEMEDIA_BASE ]; then
    LIVEMEDIA_INC="-I$LIVEMEDIA_BASE/include "
    LIVEMEDIA_INC+="-I$LIVEMEDIA_BASE/include/liveMedia -I$LIVEMEDIA_BASE/include/groupsock -I$LIVEMEDIA_BASE/include/BasicUsageEnvironment -I$LIVEMEDIA_BASE/include/UsageEnvironment "
    LIVEMEDIA_LIB="-L$LIVEMEDIA_BASE/lib -lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment "
else
    LIVEMEDIA_INC="-I/usr/include/liveMedia -I/usr/include/groupsock -I/usr/include/BasicUsageEnvironment -I/usr/include/UsageEnvironment "
    LIVEMEDIA_LIB="-lliveMedia -lgroupsock -lBasicUsageEnvironment -lUsageEnvironment "
fi
    
LIBX264_BASE=/opt/x264/inst
if [ -d $LIBX264_BASE ]; then
    LIBX264_INC="-I$LIBX264_BASE/include "
    LIBX264_LIB="-L$LIBX264_BASE/lib -lx264 "
else
    LIBX264_INC=`pkg-config --cflags-only-I x264`
    LIBX264_LIB=`pkg-config --libs x264`
fi
 
FFMPEG_BASE=/opt/ffmpeg-3.2.2/inst
if [ -d $FFMPEG_BASE ]; then
    FFMPEG_INC="-I$FFMPEG_BASE/include "
    FFMPEG_LIB="-L$FFMPEG_BASE/lib -lavutil -lavformat -lswresample -lswscale -lavcodec "
else
    FFMPEG_INC=""
    FFMPEG_LIB="-lavutil -lavformat -lswresample -lavcodec "
fi
 
LIBBASE64_BASE=/opt/base64
if [ -d $LIBBASE64_BASE ]; then
    LIBBASE64_INC="-I$LIBBASE64_BASE/include "
    LIBBASE64_LIB="$LIBBASE64_BASE/lib/libbase64.o "
else
    echo "Not exists $LIBBASE64_BASE"
    #use live555 base64 instead
    #exit 1
fi
 
LIBYUV_BASE=/opt/libyuv
if [ -d $LIBYUV_BASE ]; then
    LIBYUV_INC="-I$LIBYUV_BASE/include "
    LIBYUV_LIB="-L$LIBYUV_BASE -lyuv "
else
    echo "Not exists $LIBYUV_BASE"
    exit 1
fi
 
FFMPEGRTSPSERVER_BASE=./FFmpegRTSPServer
FFMPEGRTSPSERVER_OBJ="FFmpegH264Source.o LiveRTSPServer.o LiveServerMediaSubsession.o "
 
OPENCV_BASE=
OPENCV_INC=
OPENCV_LIB=`pkg-config --libs opencv`
 
DLIB_BASE=/opt/dlib
if [ -d $DLIB_BASE ]; then
    DLIB_INC="-I$DLIB_BASE "
    DLIB_LIB="-L$DLIB_BASE/build/dlib -ldlib "
fi
 
RASPBERRYPI_VC_BASE=/opt/vc
if [ -d $RASPBERRYPI_VC_BASE ]; then
    RASPBERRYPI_VC_INC="-I$RASPBERRYPI_VC_BASE/include "
    RASPBERRYPI_VC_LIB="-L$RASPBERRYPI_VC_BASE/lib -lmmal_core -lmmal_util -lmmal_vc_client -lvcos -lbcm_host "
fi
 
LOGGER_BASE=./Logger/src
LOGGER_OBJ="logger.o "
 
#STFACESDK_BASE=/opt/st_face
#if [ -d $STFACESDK_BASE ]; then
#    STFACESDK_INC="-I$STFACESDK_BASE/include "
#    STFACESDK_LIB="-L$STFACESDK_BASE/libs/linux-x86_64 -lcvface_api "
#fi
 
ARCH_ARMV7=`uname -a | grep armv7`
ARCH_X86=`uname -a | grep x86`
if [ -n "$ARCH_ARMV7" ]; then
    # For raspberry pi 2 module B
    # -O3 -march=armv7 -mtune=cortex-a7 -mfpu=neon
    CPPFLAGS+="-g -c -O0 -std=c++11 -pthread $LIVEMEDIA_INC $FFMPEG_INC $LIBBASE64_INC $LIBYUV_INC $LIBLOG4CPLUS_INC $DLIB_INC $DLIB_INC $RASPBERRYPI_VC_INC "
    LDFLAGS+="-pthread -levent $LIVEMEDIA_LIB $FFMPEG_LIB $LIBBASE64_LIB $LIBYUV_LIB $LIBX264_LIB $OPENCV_LIB $LIBLOG4CPLUS_LIB $DLIB_LIB $RASPBERRYPI_VC_LIB "
elif [ -n "$ARCH_X86" ]; then
    # -O3 -mavx -msse4.2
    CPPFLAGS+="-g -c -O0 -std=c++11 -pthread $LIVEMEDIA_INC $FFMPEG_INC $LIBBASE64_INC $LIBYUV_INC $LIBLOG4CPLUS_INC $DLIB_INC $STFACESDK_INC "
    LDFLAGS+="-pthread -levent $LIVEMEDIA_LIB $FFMPEG_LIB $LIBBASE64_LIB $LIBYUV_LIB $LIBX264_LIB $OPENCV_LIB $LIBLOG4CPLUS_LIB $DLIB_LIB $STFACESDK_LIB "
fi
 
CFLAGS+="-D__STDC_CONSTANT_MACROS "