]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
build: use pkgconfig to detect zlib
authorJan Engelhardt <jengelh@medozas.de>
Sat, 24 Dec 2011 03:45:22 +0000 (04:45 +0100)
committerJan Engelhardt <jengelh@medozas.de>
Sat, 24 Dec 2011 19:25:21 +0000 (20:25 +0100)
build: explicitly call PKG_PROG_PKG_CONFIG

Per the manual page, PKG_PROG_PKG_CONFIG needs to be invoked
explicitly if PKG_CHECK_MODULES might not happen (it is indeed stowed
in an AS_IF in kmod). Without this, funny failures can occur.
(As it did.)

Makefile.am
configure.ac
libkmod/libkmod.pc.in

index 9523d71b619b6cf0071ebafc1b81729e6844f4f6..109638c5733a72c56fd35b20419ee10539bd7f8b 100644 (file)
@@ -8,7 +8,8 @@ AM_CPPFLAGS = \
        -I$(top_srcdir)/libkmod \
        -DROOTPREFIX=\""$(rootprefix)"\" \
        -DSYSCONFDIR=\""$(sysconfdir)"\" \
-       -DLIBEXECDIR=\""$(libexecdir)"\"
+       -DLIBEXECDIR=\""$(libexecdir)"\" \
+       ${zlib_CFLAGS}
 
 AM_CFLAGS = \
        -fvisibility=hidden \
@@ -26,7 +27,8 @@ SED_PROCESS = \
        -e 's,@exec_prefix\@,$(exec_prefix),g' \
        -e 's,@libdir\@,$(libdir),g' \
        -e 's,@includedir\@,$(includedir),g' \
-       -e 's,@required_private_libs\@,$(required_private_libs),g' \
+       -e 's,@zlib_CFLAGS\@,${zlib_CFLAGS},g' \
+       -e 's,@zlib_LIBS\@,${zlib_LIBS},g' \
        < $< > $@ || rm $@
 
 %.pc: %.pc.in Makefile
@@ -61,7 +63,7 @@ libkmod_libkmod_la_LDFLAGS = $(AM_LDFLAGS) \
        -version-info $(LIBKMOD_CURRENT):$(LIBKMOD_REVISION):$(LIBKMOD_AGE) \
        -Wl,--version-script=$(top_srcdir)/libkmod/libkmod.sym
 libkmod_libkmod_la_DEPENDENCIES = ${top_srcdir}/libkmod/libkmod.sym
-libkmod_libkmod_la_LIBADD = @zlib_libs@
+libkmod_libkmod_la_LIBADD = ${zlib_LIBS}
 
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libkmod/libkmod.pc
index d17d6116250813f71f97762984b8b4f1f93939a9..21a63b7338c80f618d22deaba08084a4692b7db6 100644 (file)
@@ -27,8 +27,7 @@ AC_C_BIGENDIAN
 
 AC_PROG_SED
 AC_PROG_MKDIR_P
-
-required_private_libs=""
+PKG_PROG_PKG_CONFIG
 
 AC_ARG_WITH([rootprefix],
         AS_HELP_STRING([--with-rootprefix=DIR], [rootfs directory prefix for config files and kernel modules]),
@@ -56,17 +55,10 @@ AC_ARG_ENABLE([zlib],
        AS_HELP_STRING([--enable-zlib], [handle gzipped modules @<:@default=disabled@:>@]),
        [], enable_zlib=no)
 AS_IF([test "x$enable_zlib" != "xno"], [
-       AC_CHECK_LIB([z], [gzopen], [
-               zlib_libs="-lz"
-               required_private_libs="${required_private_libs} ${zlib_libs}"
-               AC_DEFINE(ENABLE_ZLIB, [1], [Enable zlib for modules.])
-               AC_SUBST(zlib_libs)
-       ],
-               [AC_MSG_ERROR([zlib is not present])
-       ])
+       PKG_CHECK_MODULES([zlib], [zlib])
+       AC_DEFINE([ENABLE_ZLIB], [1], [Enable zlib for modules.])
 ], [
        AC_MSG_NOTICE([zlib support not requested])
-       zlib_libs=""
 ])
 
 AC_ARG_ENABLE([debug],
@@ -123,8 +115,6 @@ CC_CHECK_CFLAGS_APPEND([ \
                        -Wl,--gc-sections])
 
 
-AC_SUBST(required_private_libs)
-
 AC_CONFIG_HEADERS(config.h)
 AC_CONFIG_FILES([
        Makefile
index b28b7c5c8f2d3415eff04830a5b4be586166b846..202ebe93df89579a12219cddf02bcd4dc12a041a 100644 (file)
@@ -7,5 +7,5 @@ Name: libkmod
 Description: Library to deal with kernel modules
 Version: @VERSION@
 Libs: -L${libdir} -lkmod
-Libs.private: @required_private_libs@
-Cflags: -I${includedir}
+Libs.private: @zlib_LIBS@
+Cflags: -I${includedir} @zlib_CFLAGS@