mirror of
https://github.com/OpenVPN/openvpn.git
synced 2025-05-08 21:25:53 +08:00
configure: Try to detect LZO with pkg-config
On most systems this should work just fine. v2: - simplify code by removing -llzo special handling v3: - reintroduce support for autodetection without pkg-config, no need to break backwards compatibility right now v7: - Handle case correctly where lzo/lzo1x.h can not be included at all. On most distros this works even though the .pc file suggests to use it without. We had some partly solution for that but it wasn't really working. v8: - Handle systems that do not implicitly include limits.h in configure test builds. lzodefs.h usually relies on lzoconf.h to include it. Change-Id: I1c038dc4ec80d3499582d81eee61fee74f26e693 Signed-off-by: Frank Lichtenheld <frank@lichtenheld.com> Acked-by: Gert Doering <gert@greenie.muc.de> Message-Id: <20240626161921.179301-1-frank@lichtenheld.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg28848.html Signed-off-by: Gert Doering <gert@greenie.muc.de> (cherry picked from commit 0ea51261d096b54281287bbd2a6899041c4dbd43)
This commit is contained in:
parent
ad0c2c078e
commit
3c43b016e9
@ -175,9 +175,6 @@ don't. */
|
||||
/* Define to 1 if you have the <linux/types.h> header file. */
|
||||
#cmakedefine HAVE_LINUX_TYPES_H
|
||||
|
||||
/* Define to 1 if you have the <lzoconf.h> header file. */
|
||||
#define HAVE_LZO_CONF_H
|
||||
|
||||
/* Define to 1 if you have the <lzo1x.h> header file. */
|
||||
#define HAVE_LZO1X_H 1
|
||||
|
||||
|
24
configure.ac
24
configure.ac
@ -1152,8 +1152,17 @@ fi
|
||||
|
||||
AC_ARG_VAR([LZO_CFLAGS], [C compiler flags for lzo])
|
||||
AC_ARG_VAR([LZO_LIBS], [linker flags for lzo])
|
||||
have_lzo="yes"
|
||||
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],
|
||||
[have_lzo="yes"],
|
||||
[]
|
||||
)
|
||||
|
||||
if test "${have_lzo}" != "yes"; then
|
||||
# try to detect without pkg-config
|
||||
have_lzo="yes"
|
||||
AC_CHECK_LIB(
|
||||
[lzo2],
|
||||
[lzo1x_1_15_compress],
|
||||
@ -1165,6 +1174,10 @@ if test -z "${LZO_LIBS}"; then
|
||||
[have_lzo="no"]
|
||||
)]
|
||||
)
|
||||
fi
|
||||
else
|
||||
# assume the user configured it correctly
|
||||
have_lzo="yes"
|
||||
fi
|
||||
if test "${have_lzo}" = "yes"; then
|
||||
saved_CFLAGS="${CFLAGS}"
|
||||
@ -1175,8 +1188,11 @@ if test "${have_lzo}" = "yes"; then
|
||||
[AC_CHECK_HEADERS(
|
||||
[lzo1x.h],
|
||||
,
|
||||
[AC_MSG_ERROR([lzo1x.h is missing])]
|
||||
)]
|
||||
[AC_MSG_ERROR([lzo1x.h is missing])],
|
||||
[#include <limits.h>
|
||||
#include <lzodefs.h>
|
||||
#include <lzoconf.h>]
|
||||
)],
|
||||
)
|
||||
CFLAGS="${saved_CFLAGS}"
|
||||
fi
|
||||
|
@ -37,17 +37,15 @@
|
||||
* @addtogroup compression
|
||||
* @{
|
||||
*/
|
||||
#if defined(HAVE_LZO_CONF_H)
|
||||
#if defined(HAVE_LZO_LZO1X_H)
|
||||
#include <lzo/lzo1x.h>
|
||||
#elif defined(HAVE_LZO1X_H)
|
||||
/* The lzo.h magic gets confused and still wants
|
||||
* to include lzo/lzoconf.h even if our include paths
|
||||
* are setup to include the paths without lzo/
|
||||
*/
|
||||
#include <lzodefs.h>
|
||||
#include <lzoconf.h>
|
||||
#endif
|
||||
#if defined(HAVE_LZO_LZO1X_H)
|
||||
#include <lzo/lzo1x.h>
|
||||
#elif defined(HAVE_LZO1X_H)
|
||||
#include <lzo1x.h>
|
||||
#endif
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user