diff --git a/configure.ac b/configure.ac
index ce8b2b0..159d47c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1143,8 +1143,18 @@
 
 AC_ARG_VAR([LZO_CFLAGS], [C compiler flags for lzo])
 AC_ARG_VAR([LZO_LIBS], [linker flags for lzo])
-have_lzo="yes"
+have_lzo="no"
 if test -z "${LZO_LIBS}"; then
+    if test -z "${LZO_CFLAGS}" -a -z "${LZO_LIBS}"; then
+	# if the user did not explicitly specify flags, try to autodetect
+	PKG_CHECK_MODULES([LZO],
+			  [lzo2],
+			  [AC_CHECK_LIB([lzo2], [lzo1x_1_15_compress], [have_lzo="yes"], [LZO_CFLAGS="" LZO_LIBS=""])]
+			  []
+	)
+    fi
+    if test "${have_lzo}" = "no"; then
+	have_lzo="yes"
 	AC_CHECK_LIB(
 		[lzo2],
 		[lzo1x_1_15_compress],
@@ -1156,6 +1166,7 @@
 			[have_lzo="no"]
 		)]
 	)
+    fi
 fi
 if test "${have_lzo}" = "yes"; then
 	saved_CFLAGS="${CFLAGS}"
