Build: fallback to AC_CHECK_LIBS when looking for popt and uuid
authorJonathan Rajotte <jonathan.rajotte-julien@efficios.com>
Tue, 1 Dec 2015 20:19:01 +0000 (15:19 -0500)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Tue, 8 Dec 2015 08:47:22 +0000 (03:47 -0500)
Not all distro ship .pc so fallback to basic libs searching if necessary.

Signed-off-by: Jonathan Rajotte <jonathan.rajotte-julien@efficios.com>
Reviewed-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
configure.ac

index 978e3bc0ccd6ce1909d5e5597cbc70db9d9f5524..5537c154015ebbf3177c430c5163be9656503f60 100644 (file)
@@ -214,13 +214,23 @@ AC_DEFINE_DIR([CONFIG_LTTNG_SYSTEM_DATADIR],[datadir], [LTTng system data direct
 #
 # Check for pthread
 AC_CHECK_LIB([pthread], [pthread_create], [],
-       [AC_MSG_ERROR([Cannot find libpthread. Use [LDFLAGS]=-Ldir to specify its location.])]
+       [AC_MSG_ERROR([Cannot find libpthread. Use LDFLAGS=-Ldir to specify its location.])]
 )
 
 # Check libpopt
 PKG_CHECK_MODULES([POPT], [popt],
        [LIBS="$LIBS $POPT_LIBS"],
-       [AC_MSG_ERROR([Cannot find libpopt. Use [LDFLAGS]=-Ldir to specify its location.])]
+       [
+               AC_MSG_WARN([pkg-config was unable to find a valid .pc for libpopt. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location])
+               AC_MSG_WARN([Finding libpopt without pkg-config.])
+               AC_CHECK_LIB([popt],
+                       [poptGetContext],
+                       [],
+                       [
+                                AC_MSG_ERROR([Cannot find libpopt. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location])
+                       ]
+               )
+       ]
 )
 
 AM_PATH_XML2(2.7.6, true, AC_MSG_ERROR(No supported version of libxml2 found.))
@@ -233,17 +243,29 @@ PKG_CHECK_MODULES([UUID], [uuid],
        have_libuuid=yes
 ],
 [
-       # libuuid not found, check for uuid_create in libc.
-       AC_CHECK_LIB([c], [uuid_create],
-       [
-               AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
-               have_libc_uuid=yes
-       ],
-       [
-               AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.])
-       ])
-]
-)
+       AC_MSG_WARN([pkg-config was unable to find a valid .pc for libuuid. Set PKG_CONFIG_PATH to specify the pkgconfig configuration file location])
+       AC_MSG_WARN([Finding libuuid without pkg-config.])
+       AC_CHECK_LIB([uuid],
+               [uuid_generate],
+               [
+                       AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBUUID], 1, [Has libuuid support.])
+                       have_libuuid=yes
+               ],
+               [
+                       # libuuid not found, check for uuid_create in libc.
+                       AC_CHECK_LIB([c],
+                               [uuid_create],
+                               [
+                                       AC_DEFINE_UNQUOTED([LTTNG_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
+                                       have_libc_uuid=yes
+                               ],
+                               [
+                                       AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Either set PKG_CONFIG_PATH to the configuration file location or use LDFLAGS=-Ldir to specify the library location])
+                               ]
+                       )
+               ]
+       )
+])
 AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBUUID], [test "x$have_libuuid" = "xyes"])
 AM_CONDITIONAL([LTTNG_BUILD_WITH_LIBC_UUID], [test "x$have_libc_uuid" = "xyes"])
 
This page took 0.027154 seconds and 4 git commands to generate.