configure: Check for and explicitly link against -latomic
Some C libraries, such as uClibc, require an explicit link for some atomic functions. Check for any libatomic, and explcily link it.
This commit is contained in:
parent
796c36ade1
commit
518a5b2ece
|
@ -490,6 +490,11 @@ LIBS=$DLLIB
|
|||
AC_SEARCH_LIBS(pthread_create, pthread, [PTHREADLIB=$LIBS])
|
||||
AC_SUBST(PTHREADLIB)
|
||||
|
||||
# uClibc requires explicit -latomic for __atomic_* operations
|
||||
LIBS=""
|
||||
AC_SEARCH_LIBS(__atomic_load, atomic, [ATOMICLIB=$LIBS])
|
||||
AC_SUBST(ATOMICLIB)
|
||||
|
||||
LIBS=$saved_LIBS
|
||||
# ------------------------------------------------------
|
||||
|
||||
|
|
|
@ -20,4 +20,4 @@ AM_CPPFLAGS = \
|
|||
charon_cmd_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
-lm $(PTHREADLIB) $(DLLIB)
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
|
|
@ -21,4 +21,4 @@ AM_CFLAGS = \
|
|||
charon_nm_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
-lm $(PTHREADLIB) $(DLLIB) ${nm_LIBS}
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB) ${nm_LIBS}
|
||||
|
|
|
@ -14,4 +14,5 @@ charon_systemd_CPPFLAGS = \
|
|||
charon_systemd_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
$(systemd_LIBS) $(systemd_daemon_LIBS) $(systemd_journal_LIBS) -lm $(PTHREADLIB) $(DLLIB)
|
||||
$(systemd_LIBS) $(systemd_daemon_LIBS) $(systemd_journal_LIBS) \
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
|
|
@ -15,6 +15,6 @@ AM_CPPFLAGS = \
|
|||
charon_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
-lm $(PTHREADLIB) $(DLLIB)
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
||||
EXTRA_DIST = Android.mk
|
||||
|
|
|
@ -20,6 +20,6 @@ conftest_SOURCES = conftest.c conftest.h config.c config.h actions.c actions.h \
|
|||
conftest_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
-lm $(PTHREADLIB) $(DLLIB)
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
||||
EXTRA_DIST = README
|
||||
|
|
|
@ -159,7 +159,7 @@ AM_LDFLAGS = \
|
|||
|
||||
libcharon_la_LIBADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
-lm $(PTHREADLIB) $(DLLIB) $(SOCKLIB)
|
||||
-lm $(PTHREADLIB) $(ATOMICLIB) $(DLLIB) $(SOCKLIB)
|
||||
|
||||
if USE_WINDOWS
|
||||
libcharon_la_LIBADD += -lws2_32
|
||||
|
|
|
@ -22,4 +22,4 @@ endif
|
|||
|
||||
libfast_la_LIBADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
-lfcgi $(clearsilver_LIBS) $(PTHREADLIB)
|
||||
-lfcgi $(clearsilver_LIBS) $(PTHREADLIB) $(ATOMICLIB)
|
||||
|
|
|
@ -120,7 +120,9 @@ endif
|
|||
|
||||
library.lo : $(top_builddir)/config.status
|
||||
|
||||
libstrongswan_la_LIBADD = $(DLLIB) $(BTLIB) $(SOCKLIB) $(RTLIB) $(BFDLIB) $(UNWINDLIB)
|
||||
libstrongswan_la_LIBADD = \
|
||||
$(DLLIB) $(ATOMICLIB) $(BTLIB) $(SOCKLIB) \
|
||||
$(RTLIB) $(BFDLIB) $(UNWINDLIB)
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/src/libstrongswan \
|
||||
|
|
|
@ -12,7 +12,7 @@ libtest_la_CFLAGS = \
|
|||
libtest_la_LDFLAGS = @COVERAGE_LDFLAGS@
|
||||
libtest_la_LIBADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(PTHREADLIB)
|
||||
$(PTHREADLIB) $(ATOMICLIB)
|
||||
|
||||
|
||||
TESTS = tests
|
||||
|
|
|
@ -19,7 +19,7 @@ pki_SOURCES = pki.c pki.h command.c command.h \
|
|||
|
||||
pki_LDADD = \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(PTHREADLIB) $(DLLIB)
|
||||
$(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
||||
pki.o : $(top_builddir)/config.status
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ starter_LDADD = \
|
|||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(top_builddir)/src/libcharon/libcharon.la \
|
||||
libstarter.la \
|
||||
$(SOCKLIB) $(PTHREADLIB)
|
||||
$(SOCKLIB) $(PTHREADLIB) $(ATOMICLIB)
|
||||
|
||||
EXTRA_DIST = keywords.txt ipsec.conf Android.mk
|
||||
MAINTAINERCLEANFILES = keywords.c
|
||||
|
|
|
@ -27,7 +27,7 @@ swanctl_SOURCES = \
|
|||
swanctl_LDADD = \
|
||||
$(top_builddir)/src/libcharon/plugins/vici/libvici.la \
|
||||
$(top_builddir)/src/libstrongswan/libstrongswan.la \
|
||||
$(PTHREADLIB) $(DLLIB)
|
||||
$(PTHREADLIB) $(ATOMICLIB) $(DLLIB)
|
||||
|
||||
swanctl.o : $(top_builddir)/config.status
|
||||
|
||||
|
|
Loading…
Reference in New Issue