Jine LDFLAGS pro staticke linkovani?
Karel Zak
zakkr na zf.jcu.cz
Pondělí Srpen 11 11:57:19 CEST 2003
On Mon, Aug 11, 2003 at 10:56:21AM +0200, Jan Kasprzak wrote:
> Druhy problem je, ze nevim jak tohleto rozumne zapsat
> do automake. Samozrejme jde do Makefile.am dat neco jako
>
> program_static_LDADD = $(program_LDADD) -lpthread
>
> Jenze pravdepodobne ne kazda platforma vyzaduje to -lpthread a zrejme
> na mnoha platformach zadne -lpthread ani neni.
>
> Jak byste tohle _ciste_ vyresili? Diky,
Neni to prace pro ./configure (tedy autoconf a ne automake:-).
## Check for libpthread
##
PTHREAD_LIBS_SAVE="$PTHREAD_LIBS"
PTHREAD_LIBS=error
AC_CHECK_LIB(pthread, pthread_attr_init, [
PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_REENTRANT"
PTHREAD_LIBS="$PTHREAD_LIBS_SAVE -lpthread" ])
dnl FIXME: test this on *BSD and report results immediatelly to the ml please
dnl If it is not found, try to check for c_r (on FreeBSD)
if test "x$PTHREAD_LIBS" = xerror; then
AC_CHECK_LIB(c_r, pthread_attr_init, [
PTHREAD_CFLAGS="$PTHREAD_CFLAGS -D_THREAD_SAFE"
PTHREAD_LIBS="-pthread" ])
fi
dnl FIXME: do we really test here if libc contains this function?
if test "x$PTHREAD_LIBS" = xerror; then
AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="",
AC_MSG_ERROR(not found library: pthread !!!))
fi
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
LIBS="$LIBS $PTHREAD_LIBS"
Karel
--
Karel Zak <zakkr na zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/
Další informace o konferenci Linux