1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-29 14:30:34 +02:00

add libffi dependency

* configure.ac:
* libguile/Makefile.am (AM_CFLAGS, libguile_la_LDFLAGS): Add a libffi
  dependency, for making a dynamic FFI.
This commit is contained in:
Andy Wingo 2010-01-15 22:55:11 +01:00
parent e03b7f73e2
commit 75c242a256
2 changed files with 19 additions and 3 deletions

View file

@ -4,7 +4,7 @@ dnl
define(GUILE_CONFIGURE_COPYRIGHT,[[
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
This file is part of GUILE
@ -879,6 +879,22 @@ else
AC_MSG_ERROR([GNU libunistring is required, please install it.])
fi
dnl Libffi is needed to compile Guile's foreign function interface, but its
dnl interface isn't exposed in Guile's API.
PKG_CHECK_MODULES(LIBFFI, libffi)
AC_SUBST(LIBFFI_CFLAGS)
AC_SUBST(LIBFFI_LIBS)
dnl figure out approriate ffi type for size_t
AC_CHECK_SIZEOF(size_t)
AC_CHECK_SIZEOF(ssize_t)
ffi_size_type=uint$(($ac_cv_sizeof_size_t*8))
ffi_ssize_type=sint$(($ac_cv_sizeof_ssize_t*8))
AC_DEFINE_UNQUOTED(ffi_type_size_t, ffi_type_${ffi_size_type},
[ffi type for size_t])
AC_DEFINE_UNQUOTED(ffi_type_ssize_t, ffi_type_${ffi_ssize_type},
[ffi type for ssize_t])
dnl i18n tests
#AC_CHECK_HEADERS([libintl.h])
#AC_CHECK_FUNCS(gettext)

View file

@ -35,7 +35,7 @@ DEFAULT_INCLUDES =
AM_CPPFLAGS = -DBUILDING_LIBGUILE=1 -I$(top_srcdir) -I$(top_builddir) \
-I$(top_srcdir)/lib -I$(top_builddir)/lib
AM_CFLAGS = $(GCC_CFLAGS) $(CFLAG_VISIBILITY)
AM_CFLAGS = $(LIBFFI_CFLAGS) $(GCC_CFLAGS) $(CFLAG_VISIBILITY)
## The Gnulib Libtool archive.
gnulib_library = $(top_builddir)/lib/libgnu.la
@ -442,7 +442,7 @@ libguile_la_LIBADD = \
@LIBLOBJS@ $(gnulib_library) $(LTLIBGMP) \
$(LTLIBUNISTRING) $(LTLIBICONV)
libguile_la_LDFLAGS = \
@LTLIBINTL@ $(INET_NTOP_LIB) $(INET_PTON_LIB) \
@LTLIBINTL@ $(LIBFFI_LIBS) $(INET_NTOP_LIB) $(INET_PTON_LIB) \
-version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ \
-export-dynamic -no-undefined \
$(GNU_LD_FLAGS)