gresource: libelf, try pkg-config first then fall-back to AC_CHECK_LIB

On some systems gelf.h may not be stored under the top level include
directory in which case we need to add the correct include paths in
cflags by using pkg-config(1).
This commit is contained in:
Antoine Jacoutot 2012-03-31 20:20:19 +02:00
parent 4143842eb4
commit 1494544958
2 changed files with 6 additions and 4 deletions

View File

@ -1799,12 +1799,13 @@ dnl ************************
dnl *** check for libelf ***
dnl ************************
AC_CHECK_LIB([elf], [elf_begin], have_libelf=yes, have_libelf=no)
PKG_CHECK_MODULES([LIBELF], [libelf], [have_libelf=yes], [
AC_CHECK_LIB([elf], [elf_begin], have_libelf=yes, have_libelf=no)
])
if test $have_libelf = yes; then
AC_DEFINE(HAVE_LIBELF, 1, [Define if libelf is available])
ELF_LIBS=-lelf
LIBELF_LIBS=-lelf
fi
AC_SUBST(ELF_LIBS)
dnl ****************************************
dnl *** platform dependent source checks ***

View File

@ -704,10 +704,11 @@ EXTRA_DIST += $(completion_DATA)
bin_PROGRAMS += gresource
gresource_SOURCES = gresource-tool.c
gresource_CPPFLAGS = $(LIBELF_CFLAGS) $(AM_CPPFLAGS)
gresource_LDADD = libgio-2.0.la \
$(top_builddir)/glib/libglib-2.0.la \
$(top_builddir)/gobject/libgobject-2.0.la \
$(ELF_LIBS)
$(LIBELF_LIBS)
# ------------------------------------------------------------------------