From 3a25d0b20c56e464f62e61552aac669f9748d027 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Tue, 13 Dec 2016 20:30:45 +0100 Subject: [PATCH 1/4] FS-9840 mod_sofia: fix redefine warning This fixes the following compile-time warning: make[8]: Entering directory '/home/sk/tmp/lede/build_dir/target-mips_24kc_musl-1.1.15/freeswitch-1.8.0/src/mod/endpoints/mod_sofia' CC mod_sofia_la-mod_sofia.lo CC mod_sofia_la-sofia.lo CC mod_sofia_la-sofia_glue.lo CC mod_sofia_la-sofia_presence.lo CC mod_sofia_la-sofia_reg.lo CC mod_sofia_la-sofia_media.lo CC mod_sofia_la-sip-dig.lo In file included from sip-dig.c:137:0: /home/sk/tmp/lede/build_dir/target-mips_24kc_musl-1.1.15/freeswitch-1.8.0/libs/sofia-sip/libsofia-sip-ua/bnf/../../config.h:522:0: error: "__BYTE_ORDER" redefined [-Werror] #define __BYTE_ORDER __BIG_ENDIAN ^ In file included from /home/sk/tmp/lede/staging_dir/toolchain-mips_24kc_gcc-5.4.0_musl-1.1.15/include/sys/types.h:70:0, from ../../../../src/include/switch.h:107, from sip-dig.c:135: /home/sk/tmp/lede/staging_dir/toolchain-mips_24kc_gcc-5.4.0_musl-1.1.15/include/endian.h:11:0: note: this is the location of the previous definition #define __BYTE_ORDER __BYTE_ORDER__ ^ cc1: all warnings being treated as errors SWITCH_BYTE_ORDER is already used elsewhere in FS source and takes care of changing byte order without causing a warning Signed-off-by: Sebastian Kemper --- libs/sofia-sip/configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/sofia-sip/configure.ac b/libs/sofia-sip/configure.ac index ca6bd3a82e..9542208cb6 100644 --- a/libs/sofia-sip/configure.ac +++ b/libs/sofia-sip/configure.ac @@ -218,7 +218,7 @@ fi AC_C_CONST AC_C_INLINE AC_C_INLINE_DEFINE -AC_C_BIGENDIAN(AC_DEFINE([__BYTE_ORDER],__BIG_ENDIAN,[Big Endian]),AC_DEFINE([__BYTE_ORDER],__LITTLE_ENDIAN,[Little Endian])) +AC_C_BIGENDIAN(AC_DEFINE([SWITCH_BYTE_ORDER],__BIG_ENDIAN,[Big Endian]),AC_DEFINE([SWITCH_BYTE_ORDER],__LITTLE_ENDIAN,[Little Endian])) AC_C_VAR_FUNC AC_C_MACRO_FUNCTION From 8063ad658b7c38e69a3e55b79c257161697aca8e Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Tue, 13 Dec 2016 20:32:10 +0100 Subject: [PATCH 2/4] FS-9840 mod-verto: fix implicit declaration warning This fixes the following compile-time warning: making all mod_verto make[7]: Entering directory '/home/sk/tmp/lede/build_dir/target-mips_24kc_musl-1.1.15/freeswitch-1.8.0/src/mod/endpoints/mod_verto' CC mod_verto_la-mod_verto.lo CC mod_verto_la-ws.lo ws.c: In function 'hton64': ws.c:730:14: error: implicit declaration of function '__bswap_64' [-Werror=implicit-function-declaration] else return __bswap_64(val); ^ cc1: all warnings being treated as errors Fix by including byteswap.h, which is available on Linux and also everywhere glibc is used (wpa_supplicant includes this header the same way). Signed-off-by: Sebastian Kemper --- src/mod/endpoints/mod_verto/ws.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mod/endpoints/mod_verto/ws.c b/src/mod/endpoints/mod_verto/ws.c index 4040c0f6ab..b93be26964 100644 --- a/src/mod/endpoints/mod_verto/ws.c +++ b/src/mod/endpoints/mod_verto/ws.c @@ -6,6 +6,10 @@ #include #endif +#if defined(__linux__) || defined(__GLIBC__) +#include +#endif + #ifndef _MSC_VER #define ms_sleep(x) usleep( x * 1000); #else From 1568194ce5b0d5322391d15d536ae92a4ac244f4 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Tue, 13 Dec 2016 20:33:02 +0100 Subject: [PATCH 3/4] FS-9840 sofia-sip: fix implicit declaration warning This fixes the following compile-time warning: cc1: note: someone does not honour COPTS correctly, passed 2 times LTCOMPILE tport_type_connect.lo cc1: note: someone does not honour COPTS correctly, passed 2 times LTCOMPILE tport_type_ws.lo cc1: note: someone does not honour COPTS correctly, passed 2 times LTCOMPILE ws.lo cc1: note: someone does not honour COPTS correctly, passed 2 times ws.c: In function 'hton64': ws.c:730:14: error: implicit declaration of function '__bswap_64' [-Werror=implicit-function-declaration] else return __bswap_64(val); ^ cc1: all warnings being treated as errors Makefile:1465: recipe for target 'ws.lo' failed make[12]: *** [ws.lo] Error 1 Fix by including byteswap.h, which is available on Linux and also everywhere glibc is used (wpa_supplicant includes this header the same way). Signed-off-by: Sebastian Kemper --- libs/sofia-sip/libsofia-sip-ua/tport/ws.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/libs/sofia-sip/libsofia-sip-ua/tport/ws.c b/libs/sofia-sip/libsofia-sip-ua/tport/ws.c index 4040c0f6ab..b93be26964 100644 --- a/libs/sofia-sip/libsofia-sip-ua/tport/ws.c +++ b/libs/sofia-sip/libsofia-sip-ua/tport/ws.c @@ -6,6 +6,10 @@ #include #endif +#if defined(__linux__) || defined(__GLIBC__) +#include +#endif + #ifndef _MSC_VER #define ms_sleep(x) usleep( x * 1000); #else From 8c94e6f57fd9adee5e6a12535811fff8e4d9ae46 Mon Sep 17 00:00:00 2001 From: Sebastian Kemper Date: Tue, 13 Dec 2016 21:09:45 +0100 Subject: [PATCH 4/4] FS-9840 mod_avmd: Fix implicit declaration warning Fix the following compile-time warning: making all mod_avmd make[7]: Entering directory '/home/sk/tmp/lede/build_dir/target-mips_24kc_musl-1.1.15/freeswitch-1.8.0/src/mod/applications/mod_avmd' CC mod_avmd_la-mod_avmd.lo mod_avmd.c: In function 'avmd_process_sample': mod_avmd.c:49:19: error: implicit declaration of function '__isinf' [-Werror=implicit-function-declaration] #define ISINF(x) (__isinf(x)) ^ mod_avmd.c:2038:33: note: in expansion of macro 'ISINF' if (ISNAN(amplitude) || ISINF(amplitude)) { ^ cc1: all warnings being treated as errors Makefile:682: recipe for target 'mod_avmd_la-mod_avmd.lo' failed Fix this by adding the declaration for __isinf(), the same is done for __isnan() already Signed-off-by: Sebastian Kemper --- src/mod/applications/mod_avmd/mod_avmd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mod/applications/mod_avmd/mod_avmd.c b/src/mod/applications/mod_avmd/mod_avmd.c index 34566b15d8..bc005f76e0 100644 --- a/src/mod/applications/mod_avmd/mod_avmd.c +++ b/src/mod/applications/mod_avmd/mod_avmd.c @@ -44,6 +44,7 @@ #define ISINF(x) (isinf(x)) #else int __isnan(double); + int __isinf(double); #define ISNAN(x) (__isnan(x)) #define ISINF(x) (__isinf(x)) #endif