From 77dc7fc14cb3e752f796a949c007d187238bf06c Mon Sep 17 00:00:00 2001 From: Jeremy Lakeman Date: Wed, 11 Jun 2014 20:12:56 +0930 Subject: [PATCH] Disable and remove pthreads to support compiling with clang --- Android.mk | 2 +- Makefile.in | 22 +++++++++++----------- configure.in | 3 --- msp_proxy.c | 1 + 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/Android.mk b/Android.mk index 2c1286c4..ddd0d37e 100644 --- a/Android.mk +++ b/Android.mk @@ -29,7 +29,7 @@ SERVALD_LOCAL_CFLAGS = \ -DHAVE_JNI_H=1 -DHAVE_STRUCT_UCRED=1 -DHAVE_CRYPTO_SIGN_NACL_GE25519_H=1 \ -DBYTE_ORDER=_BYTE_ORDER -DHAVE_LINUX_STRUCT_UCRED -DUSE_ABSTRACT_NAMESPACE \ -DHAVE_BCOPY -DHAVE_BZERO -DHAVE_NETINET_IN_H -DHAVE_LSEEK64 -DSIZEOF_OFF_T=4 \ - -DHAVE_LINUX_IF_H \ + -DHAVE_LINUX_IF_H -DSQLITE_THREADSAFE=0 \ -I$(NACL_INC) \ -I$(SQLITE3_INC) diff --git a/Makefile.in b/Makefile.in index d86e5f6d..5a037ee0 100644 --- a/Makefile.in +++ b/Makefile.in @@ -38,10 +38,10 @@ SIMULATOR_OBJS = \ CC= @CC@ -LDFLAGS=@LDFLAGS@ @LIBS@ @PTHREAD_LIBS@ +LDFLAGS=@LDFLAGS@ @LIBS@ -CFLAGS= -Isqlite-amalgamation-3070900 @CPPFLAGS@ @CFLAGS@ @PTHREAD_CFLAGS@ -Inacl/include -CFLAGS+=-DSYSCONFDIR="\"$(sysconfdir)\"" -DLOCALSTATEDIR="\"$(localstatedir)\"" +CFLAGS= -Isqlite-amalgamation-3070900 @CPPFLAGS@ @CFLAGS@ -Inacl/include +CFLAGS+=-DSYSCONFDIR="\"$(sysconfdir)\"" -DLOCALSTATEDIR="\"$(localstatedir)\"" -DSQLITE_THREADSAFE=0 CFLAGS+=-fPIC CFLAGS+=-Wall -Wno-unused-value -Werror # Solaris magic @@ -159,7 +159,7 @@ $(OBJSDIR_TOOLS)/config_test.o $(OBJSDIR_TOOLS)/conf_om.o $(OBJSDIR_TOOLS)/conf_ servald: $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) + @$(CC) -Wall -o $@ $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) libserval.a: $(LIB_SERVAL_OBJS) $(OBJSDIR_TOOLS)/version.o @echo AR $@ @@ -167,23 +167,23 @@ libserval.a: $(LIB_SERVAL_OBJS) $(OBJSDIR_TOOLS)/version.o directory_service: $(OBJSDIR_TOOLS)/directory_service.o libserval.a @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(OBJSDIR_TOOLS)/directory_service.o libserval.a $(LDFLAGS) + @$(CC) -Wall -o $@ $(OBJSDIR_TOOLS)/directory_service.o libserval.a $(LDFLAGS) tfw_createfile: $(OBJSDIR_TOOLS)/tfw_createfile.o libserval.a @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(OBJSDIR_TOOLS)/tfw_createfile.o libserval.a $(LDFLAGS) + @$(CC) -Wall -o $@ $(OBJSDIR_TOOLS)/tfw_createfile.o libserval.a $(LDFLAGS) fakeradio: $(OBJSDIR_TOOLS)/fakeradio.o libserval.a @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(OBJSDIR_TOOLS)/fakeradio.o libserval.a $(LDFLAGS) + @$(CC) -Wall -o $@ $(OBJSDIR_TOOLS)/fakeradio.o libserval.a $(LDFLAGS) simulator: $(SIMULATOR_OBJS) libserval.a @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(SIMULATOR_OBJS) libserval.a $(LDFLAGS) + @$(CC) -Wall -o $@ $(SIMULATOR_OBJS) libserval.a $(LDFLAGS) config_test: $(OBJSDIR_TOOLS)/config_test.o $(OBJSDIR_TOOLS)/conf_om.o $(OBJSDIR_TOOLS)/conf_schema.o $(OBJSDIR_TOOLS)/conf_parse.o libserval.a @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -o $@ $(OBJSDIR_TOOLS)/config_test.o $(OBJSDIR_TOOLS)/conf_om.o $(OBJSDIR_TOOLS)/conf_schema.o $(OBJSDIR_TOOLS)/conf_parse.o libserval.a $(LDFLAGS) + @$(CC) -Wall -o $@ $(OBJSDIR_TOOLS)/config_test.o $(OBJSDIR_TOOLS)/conf_om.o $(OBJSDIR_TOOLS)/conf_schema.o $(OBJSDIR_TOOLS)/conf_parse.o libserval.a $(LDFLAGS) copyright: @if [ -x "$(COPYRIGHT_TOOL)" ]; then \ @@ -200,11 +200,11 @@ COPYRIGHT_TOOL := $(call findPATH,sp-copyright-tool) # DOC 20120615 libserval.so: $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -shared -o $@ $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) + @$(CC) -Wall -shared -o $@ $(SERVALD_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) libmonitorclient.so: $(MONITOR_CLIENT_OBJS) $(OBJSDIR_TOOLS)/version.o @echo LINK $@ - @$(CC) $(CFLAGS) -Wall -shared -o $@ $(MONITOR_CLIENT_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) + @$(CC) -Wall -shared -o $@ $(MONITOR_CLIENT_OBJS) $(OBJSDIR_TOOLS)/version.o $(LDFLAGS) libmonitorclient.a: $(MONITOR_CLIENT_OBJS) $(OBJSDIR_TOOLS)/version.o @echo AR $@ diff --git a/configure.in b/configure.in index d617c306..c32408d2 100644 --- a/configure.in +++ b/configure.in @@ -41,9 +41,6 @@ AS_IF([test "x$RHIZOME_STORE_PATH" != x], [AC_DEFINE_UNQUOTED([RHIZOME_STORE_PAT dnl Check for programs. AC_PROG_CC -dnl Threading -ACX_PTHREAD() - dnl Math library functions for spandsp AC_CHECK_HEADERS([math.h], [INSERT_MATH_HEADER="#include "]) AC_CHECK_HEADERS([float.h]) diff --git a/msp_proxy.c b/msp_proxy.c index 72b44c54..d6ef583a 100644 --- a/msp_proxy.c +++ b/msp_proxy.c @@ -298,6 +298,7 @@ static size_t msp_listener(MSP_SOCKET sock, msp_state_t state, const uint8_t *pa if (once){ // stop listening after the first incoming connection msp_stop(listener); + listener=MSP_SOCKET_NULL; } struct mdp_sockaddr remote;