From f562a986022641b1f081a8538f452b72100d354d Mon Sep 17 00:00:00 2001 From: winlin Date: Wed, 23 Jul 2014 14:37:54 +0800 Subject: [PATCH] add configure options --log-verbose/info/trace to compile log macros. 0.9.169 --- trunk/auto/depends.sh | 18 ++++++++++++++++++ trunk/auto/options.sh | 25 +++++++++++++++++++++++++ trunk/scripts/test_configure.sh | 24 ++++++++++++++++++++++++ trunk/src/core/srs_core.hpp | 2 +- trunk/src/kernel/srs_kernel_log.hpp | 6 +++--- 5 files changed, 71 insertions(+), 4 deletions(-) diff --git a/trunk/auto/depends.sh b/trunk/auto/depends.sh index 614e0ee4b..f0b99cd2c 100755 --- a/trunk/auto/depends.sh +++ b/trunk/auto/depends.sh @@ -667,7 +667,25 @@ fi echo "" >> $SRS_AUTO_HEADERS_H +# for log level compile settings +if [ $SRS_LOG_VERBOSE = YES ]; then + echo "#define SRS_AUTO_VERBOSE" >> $SRS_AUTO_HEADERS_H +else + echo "#undef SRS_AUTO_VERBOSE" >> $SRS_AUTO_HEADERS_H +fi +if [ $SRS_LOG_INFO = YES ]; then + echo "#define SRS_AUTO_INFO" >> $SRS_AUTO_HEADERS_H +else + echo "#undef SRS_AUTO_INFO" >> $SRS_AUTO_HEADERS_H +fi +if [ $SRS_LOG_TRACE = YES ]; then + echo "#define SRS_AUTO_TRACE" >> $SRS_AUTO_HEADERS_H +else + echo "#undef SRS_AUTO_TRACE" >> $SRS_AUTO_HEADERS_H +fi + # prefix +echo "" >> $SRS_AUTO_HEADERS_H echo "#define SRS_AUTO_PREFIX \"${SRS_PREFIX}\"" >> $SRS_AUTO_HEADERS_H echo "" >> $SRS_AUTO_HEADERS_H diff --git a/trunk/auto/options.sh b/trunk/auto/options.sh index fd861bfad..b6ee151b4 100755 --- a/trunk/auto/options.sh +++ b/trunk/auto/options.sh @@ -13,6 +13,8 @@ ##################################################################################### help=no +################################################################ +# feature options SRS_HLS=RESERVED SRS_DVR=RESERVED SRS_NGINX=RESERVED @@ -37,6 +39,7 @@ SRS_GPERF_CP=RESERVED # gprof SRS_GPROF=RESERVED # +################################################################ # libraries SRS_FFMPEG_STUB=RESERVED SRS_HTTP_PARSER=RESERVED @@ -44,11 +47,18 @@ SRS_HTTP_PARSER=RESERVED SRS_PREFIX=/usr/local/srs SRS_JOBS=1 SRS_STATIC=RESERVED +# whether enable the log verbose/info/trace level. +# always enable the warn/error level. +SRS_LOG_VERBOSE=RESERVED +SRS_LOG_INFO=RESERVED +SRS_LOG_TRACE=RESERVED # +################################################################ # experts # donot compile ssl, use system ssl(-lssl) if required. SRS_USE_SYS_SSL=NO # +################################################################ # presets # for x86/x64 pc/servers SRS_X86_X64=NO @@ -77,6 +87,7 @@ SRS_DISABLE_ALL=NO # all features is on SRS_ENABLE_ALL=NO # +################################################################ # calc # whether embed cpu, arm/mips SRS_EMBEDED_CPU=NO @@ -141,6 +152,9 @@ Options: --static whether add '-static' to link options. --jobs[=N] Allow N jobs at once; infinite jobs with no arg. used for make in the configure, for example, to make ffmpeg. + --log-verbose whether enable the log verbose level. default: no. + --log-info whether enable the log info level. default: no. + --log-trace whether enable the log trace level. default: yes. Presets: --x86-x64 [default] for x86/x64 cpu, common pc and servers. @@ -227,6 +241,9 @@ function parse_user_option() { --jobs) SRS_JOBS=${value} ;; --prefix) SRS_PREFIX=${value} ;; --static) SRS_STATIC=YES ;; + --log-verbose) SRS_LOG_VERBOSE=YES ;; + --log-info) SRS_LOG_INFO=YES ;; + --log-trace) SRS_LOG_TRACE=YES ;; --x86-x64) SRS_X86_X64=YES ;; --arm) SRS_ARM_UBUNTU12=YES ;; @@ -279,6 +296,11 @@ if [ $help = yes ]; then fi function apply_user_presets() { + # always set the log level for all presets. + SRS_LOG_VERBOSE=NO + SRS_LOG_INFO=NO + SRS_LOG_TRACE=YES + # set default preset if not specifies if [ $SRS_RTMP_HLS = NO ]; then if [ $SRS_PURE_RTMP = NO ]; then @@ -687,6 +709,9 @@ function regenerate_options() { if [ $SRS_ARM_UBUNTU12 = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --with-arm-ubuntu12"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --without-arm-ubuntu12"; fi if [ $SRS_MIPS_UBUNTU12 = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --with-mips-ubuntu12"; else SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --without-mips-ubuntu12"; fi if [ $SRS_STATIC = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --static"; fi + if [ $SRS_LOG_VERBOSE = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --log-verbose"; fi + if [ $SRS_LOG_INFO = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --log-info"; fi + if [ $SRS_LOG_TRACE = YES ]; then SRS_AUTO_CONFIGURE="${SRS_AUTO_CONFIGURE} --log-trace"; fi echo "regenerate config: ${SRS_AUTO_CONFIGURE}" } regenerate_options diff --git a/trunk/scripts/test_configure.sh b/trunk/scripts/test_configure.sh index 4cf18970b..379759ef0 100755 --- a/trunk/scripts/test_configure.sh +++ b/trunk/scripts/test_configure.sh @@ -167,6 +167,30 @@ ok_msg "test \" ${item} \"" ret=$?; if [[ $ret -ne 0 ]]; then failed_msg "test \" ${item} \" failed. ret=$ret"; exit $ret; fi ok_msg "test \" ${item} \" success" +item="./configure --fast --log-verbose" +ok_msg "test \" ${item} \"" +(./configure --fast --log-verbose && make) >>$log 2>&1 +ret=$?; if [[ $ret -ne 0 ]]; then failed_msg "test \" ${item} \" failed. ret=$ret"; exit $ret; fi +ok_msg "test \" ${item} \" success" + +item="./configure --fast --log-info" +ok_msg "test \" ${item} \"" +(./configure --fast --log-info && make) >>$log 2>&1 +ret=$?; if [[ $ret -ne 0 ]]; then failed_msg "test \" ${item} \" failed. ret=$ret"; exit $ret; fi +ok_msg "test \" ${item} \" success" + +item="./configure --fast --log-trace" +ok_msg "test \" ${item} \"" +(./configure --fast --log-trace && make) >>$log 2>&1 +ret=$?; if [[ $ret -ne 0 ]]; then failed_msg "test \" ${item} \" failed. ret=$ret"; exit $ret; fi +ok_msg "test \" ${item} \" success" + +item="./configure --fast --log-info --log-verbose --log-trace" +ok_msg "test \" ${item} \"" +(./configure --fast --log-info --log-verbose --log-trace && make) >>$log 2>&1 +ret=$?; if [[ $ret -ne 0 ]]; then failed_msg "test \" ${item} \" failed. ret=$ret"; exit $ret; fi +ok_msg "test \" ${item} \" success" + ####################################################################################################### ####################################################################################################### ####################################################################################################### diff --git a/trunk/src/core/srs_core.hpp b/trunk/src/core/srs_core.hpp index 6123e3a02..9e0252e83 100644 --- a/trunk/src/core/srs_core.hpp +++ b/trunk/src/core/srs_core.hpp @@ -31,7 +31,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // current release version #define VERSION_MAJOR "0" #define VERSION_MINOR "9" -#define VERSION_REVISION "168" +#define VERSION_REVISION "169" #define RTMP_SIG_SRS_VERSION VERSION_MAJOR"."VERSION_MINOR"."VERSION_REVISION // server info. #define RTMP_SIG_SRS_KEY "SRS" diff --git a/trunk/src/kernel/srs_kernel_log.hpp b/trunk/src/kernel/srs_kernel_log.hpp index efb490de4..5cc301f24 100644 --- a/trunk/src/kernel/srs_kernel_log.hpp +++ b/trunk/src/kernel/srs_kernel_log.hpp @@ -134,15 +134,15 @@ extern ISrsThreadContext* _srs_context; #endif // TODO: FIXME: add more verbose and info logs. -#if 1 +#ifndef SRS_AUTO_VERBOSE #undef srs_verbose #define srs_verbose(msg, ...) (void)0 #endif -#if 1 +#ifndef SRS_AUTO_INFO #undef srs_info #define srs_info(msg, ...) (void)0 #endif -#if 0 +#ifndef SRS_AUTO_TRACE #undef srs_trace #define srs_trace(msg, ...) (void)0 #endif