[FS-5507] ./crypto/include/datatypes.h: In function 'be32_to_cpu' build error git on FreeBSD 9.1 X86 Created: 12/Jun/13 Updated: 24/Feb/14 Resolved: 22/Jun/13 Status: Project: Component/s: Affects Version/s: Fix Version/s: Security Level: Closed FreeSWITCH Build-System 1.4 Type: Reporter: Resolution: Labels: Remaining Estimate: Time Spent: Original Estimate: Environment: Bug Erik Dekkers (wvds-nl) Fixed None Not Specified Kernel: uname: FreeBSD FreeBSD bsdtest 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243826: Tue Dec 4 06:55:39 UTC 2012 root@obrian.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 FreeBSD FreeBSD gcc GNU Make 3.82 Built for i386-portbld-freebsd9.1 Userland: Distribution: Compiler: Compiler Version: FreeSWITCH GIT Revision: GIT Master Revision hash:: Description 1.4 public Priority: Assignee: Votes: Minor Mike Jerris 0 Not Specified Not Specified FreeBSD bsdtest 9.1-RELEASE FreeBSD 9.1-RELEASE #0 r243826: Tue Dec 4 06:55:39 UTC 2012 root@obrian.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 a3dfd0bf62076c506a7dde0021b094928505a2a7 Charlie Root <root@bsdtest.wvds.local> 1371038818 +0200 clone: from git://git.freeswitch.org/freeswitch.git yes Failing build SRTP on FreeBSD: gmake[1]: Entering directory `/usr/src/freeswitch/libs/srtp' /bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I./crypto/include fPIC -Wall -O4 -fexpensive-optimizations -funroll-loops -I./src -Icrypto/include -I./include I./crypto/include -I/usr/local/include -fPIC -Wall -O4 -fexpensive-optimizations -funroll-loops I./src -Icrypto/include -I./include -I./crypto/include -g -O2 -Wall -std=c99 -pedantic -MT srtp.lo -MD -MP -MF .deps/srtp.Tpo -c -o srtp.lo `test -f 'srtp/srtp.c' || echo './'`srtp/srtp.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I./crypto/include -fPIC -Wall -O4 -fexpensiveoptimizations -funroll-loops -I./src -Icrypto/include -I./include -I./crypto/include I/usr/local/include -fPIC -Wall -O4 -fexpensive-optimizations -funroll-loops -I./src Icrypto/include -I./include -I./crypto/include -g -O2 -Wall -std=c99 -pedantic -MT srtp.lo -MD MP -MF .deps/srtp.Tpo -c srtp/srtp.c -fPIC -DPIC -o srtp.o In file included from ./crypto/include/err.h:49, from ./crypto/include/rand_source.h:49, from ./crypto/include/crypto_kernel.h:49, from ./include/srtp.h:53, from srtp/srtp.c:46: ./crypto/include/datatypes.h: In function 'be32_to_cpu': ./crypto/include/datatypes.h:400: warning: implicit declaration of function 'asm' ./crypto/include/datatypes.h:400: error: expected ')' before ':' token gmake[1]: *** [srtp.lo] Error 1 gmake[1]: Leaving directory `/usr/src/freeswitch/libs/srtp' gmake: *** [libs/srtp/libsrtp.la] Error 2 Comments Comment by Jeff Lenk [ 12/Jun/13 ] Can you provide the patch here for FreeBSD? I don't know whether you have inline support or not otherwise see the windows example. Comment by Erik Dekkers (wvds-nl) [ 12/Jun/13 ] Jeff, I don't have patch. Don't have to skills to fix it. What windows example do you mean if i may ask? Erik Comment by Jeff Lenk [ 13/Jun/13 ] The code in datatypes.h has the example of how it works for windows. I don't have a FreeBSD system to check this with so someone with that will have to check this out. Comment by Erik Dekkers (wvds-nl) [ 14/Jun/13 ] I really don't have a clue wich part of the code i should use, im not a developer I've tried dot disable SRTP with ./configure --disable-srtp but it looks like that argument isn't parsed somehow Comment by Cal Leeming [ 16/Jun/13 ] Hi Erik, thanks for reporting this. Until someone with an interest in FreeBSD steps up, then this ticket will probably hang for quite a while. At the very least, there could be a bug with `-disable-srtp` not being adhered to, but again, this would require cross platform testing. Action: waiting on reporter or someone with an interest in FreeBSD Comment by Erik Dekkers (wvds-nl) [ 17/Jun/13 ] Carl / Jeff, I've managed to get SRTP to compile without errors. I've made some adjustment on the datatypes.h file in the /crypto/include directory. This is how it looks like: Line 396 - 405 #if defined(__GNUC__) && defined(HAVE_X86) # define be32_to_cpu(x) ntohl((x)) # else /* HAVE_X86 */ # ifdef HAVE_NETINET_IN_H # include <netinet/in.h> # elif defined HAVE_WINSOCK2_H # include <winsock2.h> # endif # define be32_to_cpu(x) ntohl((x)) # endif /* HAVE_X86 */ But i don't know how to create a patch/diff file. Comment by Git [ 17/Jun/13 ] Repository: freeswitch Branch: refs/heads/master Commit: f37467e http://fisheye.freeswitch.org/changelog/freeswitch/?cs=f37467e Updated By: jeff@jefflenk.com Comment: FS-5507 this should fix but I'm not sure its the proper thing FreeSWITCH Support Contracts and Consulting Services available! Contact us: Email: consulting@freeswitch.org Web: http://www.freeswitch.org Phone: +1-918-420-9266 Tollfree: +1-877-742-2583 Fax: +1-918-420-9267 iNum: +883 5100 1420 9266 Come To ClueCon in August to learn more about FreeSWITCH and Internet Telephony! http://www.cluecon.com Comment by Cal Leeming [ 17/Jun/13 ] Looks like Jeff has pushed a fix for this. Erik - can you re-test using latest git HEAD and see if the problem goes away? Thanks guys Comment by Jeff Lenk [ 22/Jun/13 ] Erik, Please reopen if needed. Comment by Erik Dekkers (wvds-nl) [ 25/Jun/13 ] Jeff / Cal, Thank you for fixing. I can confirm the issue is resolved. regards, Erik Comment by Auto Admin [ 08/Jul/13 ] Due to a long period of inactivity (13 or more days), this issue is due to be automatically close within 24 hours. If this issue is not actually resolved, please reopen it and add appropriate comments to help developers fix the issue. Thanks, Jira Admin Comment by Auto Admin [ 09/Jul/13 ] Since there has been no change to the status of this issue, it is being closed for inactivity Thanks, Jira Admin Generated at Tue Feb 09 11:28:13 EST 2016 using JIRA 6.4.10#64025sha1:5b8b74079161cd76a20ab66dda52747ee6701bd6.