From d43d9674a3c81eef933a04771cbb7bd86ac9a6bb Mon Sep 17 00:00:00 2001 From: winlin Date: Fri, 29 May 2020 17:00:06 +0800 Subject: [PATCH] RTC: Remove --librtmp --- trunk/auto/depends.sh | 10 ------- trunk/auto/libs.sh | 64 ------------------------------------------- trunk/auto/options.sh | 18 ++++-------- trunk/auto/summary.sh | 2 -- trunk/configure | 60 ++++------------------------------------ 5 files changed, 10 insertions(+), 144 deletions(-) delete mode 100755 trunk/auto/libs.sh diff --git a/trunk/auto/depends.sh b/trunk/auto/depends.sh index 896a10a87..fbbb82659 100755 --- a/trunk/auto/depends.sh +++ b/trunk/auto/depends.sh @@ -704,16 +704,6 @@ if [ $SRS_RESEARCH = YES ]; then ret=$?; if [[ $ret -ne 0 ]]; then echo "Build research/ffempty failed, ret=$ret"; exit $ret; fi fi -if [[ $SRS_LIBRTMP == YES ]]; then - mkdir -p ${SRS_OBJS}/research - - # librtmp - (cd ${SRS_WORKDIR}/research/librtmp && mkdir -p objs && - rm -rf ../../${SRS_OBJS_DIR}/research/librtmp && - ln -sf `pwd`/objs ../../${SRS_OBJS_DIR}/research/librtmp) - ret=$?; if [[ $ret -ne 0 ]]; then echo "Link research/librtmp failed, ret=$ret"; exit $ret; fi -fi - ##################################################################################### # build utest code ##################################################################################### diff --git a/trunk/auto/libs.sh b/trunk/auto/libs.sh deleted file mode 100755 index af1103414..000000000 --- a/trunk/auto/libs.sh +++ /dev/null @@ -1,64 +0,0 @@ -# generate the library for static link. -# -# params: -# $SRS_OBJS the objs directory to store the Makefile. ie. ./objs -# $SRS_OBJS_DIR the objs directory for Makefile. ie. objs -# $SRS_MAKEFILE the makefile name. ie. Makefile -# -# $BUILD_KEY a string indicates the build key for Makefile. ie. dump -# $LIB_NAME the app name to output. ie. smart_server -# $MODULE_OBJS array, the objects to compile the app. - -FILE=${SRS_OBJS}/${SRS_MAKEFILE} - -LIB_TARGET="${SRS_OBJS_DIR}/${LIB_NAME}" -LIB_TAGET_STATIC="${LIB_TARGET}.a" - -echo "Generating lib ${LIB_NAME} depends." - -echo "" >> ${FILE} -echo "# archive library ${LIB_TAGET_STATIC}" >> ${FILE} -echo "${BUILD_KEY}: ${LIB_TAGET_STATIC}" >> ${FILE} -echo "" >> ${FILE} - -# build depends -echo -n "${LIB_TAGET_STATIC}: " >> ${FILE} -for item in ${MODULE_OBJS[*]}; do - FILE_NAME=`basename $item` - FILE_NAME=${FILE_NAME%.*} - - if [ ! -f ${item} ]; then - continue; - fi - - OBJ_FILE=${SRS_OBJS_DIR}/$item - OBJ_FILE="${OBJ_FILE%.*}.o" - echo -n "${OBJ_FILE} " >> ${FILE} -done -echo "" >> ${FILE} - -# build header file -echo -n " @bash auto/generate_header.sh ${SRS_OBJS_DIR}" >> ${FILE} -echo "" >> ${FILE} - -# archive librtmp.a -echo -n " \$(AR) \$(ARFLAGS) ${LIB_TAGET_STATIC} " >> ${FILE} -for item in ${MODULE_OBJS[*]}; do - FILE_NAME=`basename $item` - FILE_NAME=${FILE_NAME%.*} - - if [ ! -f ${item} ]; then - continue; - fi - - OBJ_FILE=${SRS_OBJS_DIR}/$item - OBJ_FILE="${OBJ_FILE%.*}.o" - echo -n "${OBJ_FILE} " >> ${FILE} -done -echo "" >> ${FILE} - -# parent Makefile, to create module output dir before compile it. -echo " @mkdir -p ${SRS_OBJS_DIR}/include" >> ${SRS_WORKDIR}/${SRS_MAKEFILE} -echo " @mkdir -p ${SRS_OBJS_DIR}/lib" >> ${SRS_WORKDIR}/${SRS_MAKEFILE} - -echo -n "Generate lib ${LIB_NAME} ok"; echo '!'; diff --git a/trunk/auto/options.sh b/trunk/auto/options.sh index 4441dee2b..394a48c48 100755 --- a/trunk/auto/options.sh +++ b/trunk/auto/options.sh @@ -442,7 +442,6 @@ function apply_user_presets() { # all disabled. if [ $SRS_DISABLE_ALL = YES ]; then SRS_HDS=NO - SRS_LIBRTMP=NO SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -451,7 +450,6 @@ function apply_user_presets() { # all enabled. if [ $SRS_ENABLE_ALL = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=YES SRS_UTEST=YES SRS_STATIC=NO @@ -460,7 +458,6 @@ function apply_user_presets() { # only rtmp vp6 if [ $SRS_FAST = YES ]; then SRS_HDS=NO - SRS_LIBRTMP=NO SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -469,7 +466,6 @@ function apply_user_presets() { # only ssl for RTMP with complex handshake. if [ $SRS_PURE_RTMP = YES ]; then SRS_HDS=NO - SRS_LIBRTMP=NO SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -478,7 +474,6 @@ function apply_user_presets() { # defaults for x86/x64 if [ $SRS_X86_X64 = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -487,7 +482,6 @@ function apply_user_presets() { # if dev specified, open features if possible. if [ $SRS_DEV = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=YES SRS_UTEST=YES SRS_STATIC=NO @@ -496,7 +490,6 @@ function apply_user_presets() { # if fast dev specified, open main server features. if [ $SRS_FAST_DEV = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=NO SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -505,7 +498,6 @@ function apply_user_presets() { # for srs demo if [ $SRS_DEMO = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -514,7 +506,6 @@ function apply_user_presets() { # if raspberry-pi specified, open ssl/hls/static features if [ $SRS_PI = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -523,7 +514,6 @@ function apply_user_presets() { # if cubieboard specified, open features except ffmpeg/nginx. if [ $SRS_CUBIE = YES ]; then SRS_HDS=YES - SRS_LIBRTMP=YES SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -531,7 +521,6 @@ function apply_user_presets() { # if crossbuild, disable research and librtmp. if [[ $SRS_CROSS_BUILD == YES ]]; then - SRS_LIBRTMP=NO SRS_RESEARCH=NO SRS_UTEST=NO SRS_STATIC=NO @@ -586,6 +575,11 @@ function apply_user_detail_options() { exit -1 fi + if [[ $SRS_LIBRTMP != NO ]]; then + echo "Not support --librtmp" + exit -1 + fi + if [[ $SRS_SRTP_ASM == YES && $SRS_RTC == NO ]]; then echo "Disable SRTP ASM, because RTC is disabled." SRS_SRTP_ASM=NO @@ -620,7 +614,6 @@ function regenerate_options() { if [ $SRS_HTTP_SERVER = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --http-server=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --http-server=off"; fi if [ $SRS_STREAM_CASTER = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --stream-caster=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --stream-caster=off"; fi if [ $SRS_HTTP_API = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --http-api=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --http-api=off"; fi - if [ $SRS_LIBRTMP = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --librtmp=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --librtmp=off"; fi if [ $SRS_RESEARCH = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --research=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --research=off"; fi if [ $SRS_UTEST = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --utest=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --utest=off"; fi if [ $SRS_SRT = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --srt=on"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --srt=off"; fi @@ -709,7 +702,6 @@ function check_option_conflicts() { if [ $SRS_HDS = RESERVED ]; then echo "you must specifies the hds, see: ./configure --help"; __check_ok=NO; fi if [ $SRS_SSL = RESERVED ]; then echo "you must specifies the ssl, see: ./configure --help"; __check_ok=NO; fi if [ $SRS_STREAM_CASTER = RESERVED ]; then echo "you must specifies the stream-caster, see: ./configure --help"; __check_ok=NO; fi - if [ $SRS_LIBRTMP = RESERVED ]; then echo "you must specifies the librtmp, see: ./configure --help"; __check_ok=NO; fi if [ $SRS_RESEARCH = RESERVED ]; then echo "you must specifies the research, see: ./configure --help"; __check_ok=NO; fi if [ $SRS_UTEST = RESERVED ]; then echo "you must specifies the utest, see: ./configure --help"; __check_ok=NO; fi if [ $SRS_GPERF = RESERVED ]; then echo "you must specifies the gperf, see: ./configure --help"; __check_ok=NO; fi diff --git a/trunk/auto/summary.sh b/trunk/auto/summary.sh index 214b508fe..d725997e8 100755 --- a/trunk/auto/summary.sh +++ b/trunk/auto/summary.sh @@ -12,8 +12,6 @@ SrsHttpCallbackSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_HTTP_CALLBACK = Y SrsHttpServerSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_HTTP_SERVER = YES ]; then SrsHttpServerSummaryColor="\${GREEN}"; fi SrsHttpApiSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_HTTP_API = YES ]; then SrsHttpApiSummaryColor="\${GREEN}"; fi SrsStreamCasterSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_STREAM_CASTER = YES ]; then SrsStreamCasterSummaryColor="\${GREEN}"; fi -SrsLibrtmpSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_LIBRTMP = YES ]; then SrsLibrtmpSummaryColor="\${GREEN}"; fi -SrsLibrtmpSSLSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_LIBRTMP = YES ]; then if [ $SRS_SSL = YES ]; then SrsLibrtmpSSLSummaryColor="\${GREEN}"; fi fi SrsResearchSummaryColor="\${GREEN}(Disabled) "; if [ $SRS_RESEARCH = YES ]; then SrsResearchSummaryColor="\${GREEN}"; fi SrsUtestSummaryColor="\${YELLOW}(Disabled) "; if [ $SRS_UTEST = YES ]; then SrsUtestSummaryColor="\${GREEN}"; fi SrsGperfSummaryColor="\${GREEN}(Disabled) "; if [ $SRS_GPERF = YES ]; then SrsGperfSummaryColor="\${GREEN}"; fi diff --git a/trunk/configure b/trunk/configure index 16e269668..023b84933 100755 --- a/trunk/configure +++ b/trunk/configure @@ -32,9 +32,6 @@ rm -f ${SRS_WORKDIR}/${SRS_MAKEFILE} # create objs mkdir -p ${SRS_OBJS}/${SRS_PLATFORM} -# for export srs-librtmp, change target to it. -. auto/generate-srs-librtmp-project.sh - # apply user options. . auto/depends.sh @@ -47,9 +44,6 @@ mkdir -p ${SRS_OBJS}/${SRS_PLATFORM} # ubuntu echo in Makefile cannot display color, use bash instead SRS_BUILD_SUMMARY="_srs_build_summary.sh" -# srs-librtmp sample entry -SrsLibrtmpSampleEntry="nossl" -if [ $SRS_SSL = YES ]; then SrsLibrtmpSampleEntry="ssl";fi # utest make entry, (cd utest; make) SrsUtestMakeEntry="@echo -e \"ignore utest for it's disabled\"" if [ $SRS_UTEST = YES ]; then SrsUtestMakeEntry="(cd ${SRS_OBJS_DIR}/${SRS_PLATFORM}/utest && \$(MAKE))"; fi @@ -125,7 +119,7 @@ ARFLAGS = -rs LINK = ${SRS_TOOL_CXX} CXXFLAGS = ${CXXFLAGS} -.PHONY: default srs srs_ingest_hls librtmp +.PHONY: default srs srs_ingest_hls default: @@ -289,14 +283,6 @@ done APP_INCS="src/app"; MODULE_DIR=${APP_INCS} . auto/modules.sh APP_OBJS="${MODULE_OBJS[@]}" # -#LIBS Module, build libsrs.a for static link. -MODULE_ID="LIBS" -MODULE_DEPENDS=("CORE" "KERNEL" "PROTOCOL") -ModuleLibIncs=(${SRS_OBJS_DIR}) -MODULE_FILES=("srs_librtmp" "srs_lib_simple_socket" "srs_lib_bandwidth") -LIBS_INCS="src/libs"; MODULE_DIR=${LIBS_INCS} . auto/modules.sh -LIBS_OBJS="${MODULE_OBJS[@]}" -# #Server Module, for SRS only. MODULE_ID="SERVER" MODULE_DEPENDS=("CORE" "KERNEL" "PROTOCOL" "SERVICE" "APP") @@ -336,7 +322,6 @@ MAIN_OBJS="${MODULE_OBJS[@]}" # Binaries, main entrances, link the module and its depends modules, # then link to a binary, for example, objs/srs # -# Disable SRS application for exporting librtmp. # all main entrances MAIN_ENTRANCES=("srs_main_server") for SRS_MODULE in ${SRS_MODULES[*]}; do @@ -379,11 +364,6 @@ for SRS_MODULE in ${SRS_MODULES[*]}; do if [[ 0 -eq ${#SRS_MODULE_MAIN[@]} ]]; then continue; fi BUILD_KEY="$SRS_MODULE_NAME" APP_MAIN="${SRS_MODULE_MAIN[0]}" APP_NAME="$SRS_MODULE_NAME" . auto/apps.sh done -# srs librtmp -if [ $SRS_LIBRTMP = YES ]; then - MODULE_OBJS="${CORE_OBJS[@]} ${KERNEL_OBJS[@]} ${PROTOCOL_OBJS[@]} ${LIBS_OBJS[@]}" - BUILD_KEY="librtmp" LIB_NAME="lib/srs_librtmp" . auto/libs.sh -fi # For utest on mac. # @see https://github.com/protocolbuffers/protobuf/issues/51#issuecomment-111044468 if [[ $SRS_OSX == YES ]]; then @@ -431,7 +411,7 @@ mv ${SRS_WORKDIR}/${SRS_MAKEFILE} ${SRS_WORKDIR}/${SRS_MAKEFILE}.bk # generate phony header cat << END > ${SRS_WORKDIR}/${SRS_MAKEFILE} -.PHONY: default _default install install-api help clean destroy server srs_ingest_hls librtmp utest _prepare_dir $__mphonys +.PHONY: default _default install install-api help clean destroy server srs_ingest_hls utest _prepare_dir $__mphonys .PHONY: clean_srs clean_modules clean_openssl clean_nginx clean_cherrypy clean_srtp2 clean_opus clean_ffmpeg clean_st .PHONY: st ffmpeg @@ -445,19 +425,16 @@ default: END # the real entry for all platform: -# the server, librtmp and utest -# where the bellow will check and disable some entry by only echo. cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} -_default: server srs_ingest_hls librtmp utest __modules $__mdefaults +_default: server srs_ingest_hls utest __modules $__mdefaults @bash objs/_srs_build_summary.sh help: - @echo "Usage: make ||||||||" + @echo "Usage: make |||||||" @echo " help Display this help menu" @echo " clean Cleanup project and all depends" @echo " destroy Cleanup all files for this platform in ${SRS_OBJS_DIR}/${SRS_PLATFORM}" @echo " server Build the srs and other modules in main" - @echo " librtmp Build the client publish/play library, and samples" @echo " utest Build the utest for srs" @echo " install Install srs to the prefix path" @echo " install-api Install srs and api-server to the prefix path" @@ -479,7 +456,6 @@ doclean: (cd ${SRS_OBJS_DIR} && rm -rf srs srs_utest $__mcleanups) (cd ${SRS_OBJS_DIR} && rm -rf src/* include lib) (mkdir -p ${SRS_OBJS_DIR}/utest && cd ${SRS_OBJS_DIR}/utest && rm -rf *.o *.a) - (cd research/librtmp && make clean) (cd research/api-server/static-dir && rm -rf crossdomain.xml forward live players) clean: clean_srs clean_modules @@ -521,7 +497,6 @@ clean_nginx: (cd ${SRS_OBJS_DIR} && rm -rf nginx) clean_cherrypy: - (cd research/librtmp && make clean) (cd research/api-server/static-dir && rm -rf crossdomain.xml forward live players) st: @@ -544,7 +519,6 @@ for MMF in ${__makefiles[*]}; do done echo "" >> ${SRS_WORKDIR}/${SRS_MAKEFILE} -# if export librtmp, donot build the srs server. cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} server: _prepare_dir @echo "Build the srs(simple rtmp server) over ST(state-threads)" @@ -554,7 +528,6 @@ END # generate all modules entry for SRS_MODULE in ${SRS_MODULES[*]}; do . $SRS_MODULE/config - # if export librtmp, donot build the bravo-ingest. cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} $SRS_MODULE_NAME: _prepare_dir server @echo "Build the $SRS_MODULE_NAME over SRS" @@ -563,7 +536,7 @@ $SRS_MODULE_NAME: _prepare_dir server END done -# disable install entry for srs-librtmp +# install entry cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} uninstall: @echo "rmdir \$(SRS_PREFIX)" @@ -625,24 +598,6 @@ install: END -# generate srs-librtmp entry -if [ $SRS_LIBRTMP = YES ]; then - cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} -librtmp: server - @echo "Building the client publish/play library." - \$(MAKE) -f ${SRS_OBJS_DIR}/${SRS_MAKEFILE} librtmp - @echo "Building the srs-librtmp example." - (cd research/librtmp && \$(MAKE) EXTRA_CXXFLAGS="${SrsGcov}" ${SrsLibrtmpSampleEntry}) - -END -else - cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} -librtmp: server - @echo "Ignore srs-librtmp for it's disabled." - -END -fi - if [ $SRS_UTEST = YES ]; then cat << END >> ${SRS_WORKDIR}/${SRS_MAKEFILE} utest: server @@ -745,11 +700,6 @@ if [ $SRS_HTTP_API = YES ]; then else echo -e "${YELLOW}Warning: The HTTP API is disabled.${BLACK}" fi -if [ $SRS_LIBRTMP = YES ]; then - echo -e "${GREEN}The client-side srs-librtmp is enabled.${BLACK}" -else - echo -e "${YELLOW}Note: The client-side srs-librtmp is disabled.${BLACK}" -fi if [ $SRS_RESEARCH = YES ]; then echo -e "${GREEN}The research tools are enabled.${BLACK}" else