Changeset: 8b701f670e03 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8b701f670e03 Modified Files: configure.ag sql/backends/monet5/vaults/lidar/Makefile.ag Branch: Jun2020 Log Message:
Current version of liblas on Fedora 32 uses broken pkgconfig file. So we use the file but fix the results, using the old liblas-config as a backup. diffs (132 lines): diff --git a/configure.ag b/configure.ag --- a/configure.ag +++ b/configure.ag @@ -1911,7 +1911,7 @@ AM_CONDITIONAL([HAVE_NETCDF], [test x"$h # liblas, only used in lidar module org_have_liblas=auto have_liblas=$org_have_liblas -LIBLAS_INCS='' +LIBLAS_CFLAGS='' LIBLAS_LIBS='' AC_ARG_WITH([liblas], [AS_HELP_STRING([--with-liblas=DIR], @@ -1921,49 +1921,57 @@ AS_CASE([$have_lidar], [yes|auto], [ # liblas >= 1.8.0 required LIBLAS_VERSION_REQUIRED_MIN=1.8.0 - LIBLAS_CONFIG='' - # locate liblas-config - AS_VAR_IF([have_liblas], [no], [], [ - AS_CASE([$have_liblas], - [yes|auto], [XPATH="$PATH"], + PKG_CHECK_MODULES([LIBLAS], + [liblas >= $LIBLAS_VERSION_REQUIRED_MIN], + [have_liblas=yes + # work around bug in Fedora 32's liblas-devel-1.8.1-7 + LIBLAS_CFLAGS=`AS_ECHO(["$LIBLAS_CFLAGS"]) | sed 's|-Iinclude|-I/usr/include|'` + LIBLAS_LIBS=`AS_ECHO(["$LIBLAS_LIBS"]) | sed 's|-Llib|-L/usr/lib|'` + ], [ - XPATH="$have_liblas/bin" - have_liblas=yes]) - AC_PATH_PROG([LIBLAS_CONFIG], [liblas-config], [], [$XPATH]) - AS_VAR_IF([LIBLAS_CONFIG], [], - [AS_VAR_IF([have_liblas], [yes], - [AC_MSG_ERROR([liblas-config not found in $XPATH])], + LIBLAS_CONFIG='' + # locate liblas-config + AS_VAR_IF([have_liblas], [no], [], [ + AS_CASE([$have_liblas], + [yes|auto], [XPATH="$PATH"], + [ + XPATH="$have_liblas/bin" + have_liblas=yes]) + AC_PATH_PROG([LIBLAS_CONFIG], [liblas-config], [], [$XPATH]) + AS_VAR_IF([LIBLAS_CONFIG], [], + [AS_VAR_IF([have_liblas], [yes], + [AC_MSG_ERROR([liblas-config not found in $XPATH])], + [have_liblas=no + why_not_liblas="(liblas-config not found)"])])]) + # check the version of liblas + AS_VAR_IF([have_liblas], [no], [], [ + AC_MSG_CHECKING([for liblas >= $LIBLAS_VERSION_REQUIRED_MIN]) + LIBLAS_VERSION=`$LIBLAS_CONFIG --version` + AC_MSG_RESULT([found $LIBLAS_VERSION]) + AS_VERSION_COMPARE([$LIBLAS_VERSION], [$LIBLAS_VERSION_REQUIRED_MIN], + [AS_VAR_IF([have_liblas], [yes], + [AC_MSG_ERROR([liblas version $LIBLAS_VERSION is too old])], + [have_liblas=no + why_not_liblas="(liblas version $LIBLAS_VERSION is older than required version $LIBLAS_VERSION_REQUIRED_MIN)"])])]) + # read include dirs, libs and cflags + AS_VAR_IF([have_liblas], [no], [], [ + LIBLAS_CFLAGS=`$LIBLAS_CONFIG --includes` + LIBLAS_LIBS=`$LIBLAS_CONFIG --libs`]) + # liblas-config and liblas/capi/liblas.h could be in different + # packages (think Ubuntu) so we need to test for them both + AS_VAR_IF([have_liblas], [no], [], [ + save_CPPFLAGS="$CPPFLAGS" + save_LDFLAGS="$LDFLAGS" + save_LIBS="$LIBS" + CPPFLAGS="$CPPFLAGS $LIBLAS_CFLAGS" + LDFLAGS="$LDFLAGS $LIBLAS_LIBS" + LIBS="" + AC_CHECK_HEADER([liblas/capi/liblas.h], [], [have_liblas=no - why_not_liblas="(liblas-config not found)"])])]) - # check the version if liblas - AS_VAR_IF([have_liblas], [no], [], [ - AC_MSG_CHECKING([for liblas >= $LIBLAS_VERSION_REQUIRED_MIN]) - LIBLAS_VERSION=`$LIBLAS_CONFIG --version` - AC_MSG_RESULT([found $LIBLAS_VERSION]) - AS_VERSION_COMPARE([$LIBLAS_VERSION], [$LIBLAS_VERSION_REQUIRED_MIN], - [AS_VAR_IF([have_liblas], [yes], - [AC_MSG_ERROR([liblas version $LIBLAS_VERSION is too old])], - [have_liblas=no - why_not_liblas="(liblas version $LIBLAS_VERSION is older than required version $LIBLAS_VERSION_REQUIRED_MIN)"])])]) - # read include dirs, libs and cflags - AS_VAR_IF([have_liblas], [no], [], [ - LIBLAS_INCS=`$LIBLAS_CONFIG --includes` - LIBLAS_LIBS=`$LIBLAS_CONFIG --libs`]) - # liblas-config and liblas/capi/liblas.h could be in different - # packages (think Ubuntu) so we need to test for them both - AS_VAR_IF([have_liblas], [no], [], [ - save_CPPFLAGS="$CPPFLAGS" - save_LDFLAGS="$LDFLAGS" - save_LIBS="$LIBS" - CPPFLAGS="$CPPFLAGS $LIBLAS_INCS" - LDFLAGS="$LDFLAGS $LIBLAS_LIBS" - LIBS="" - AC_CHECK_HEADER([liblas/capi/liblas.h], [], - [have_liblas=no - why_not_liblas="(liblas/capi/liblas.h header file not found)"]) - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS"]) + why_not_liblas="(liblas/capi/liblas.h header file not found)"]) + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" + LIBS="$save_LIBS"])]) # if lidar is enabled and liblas was not found abort AS_VAR_IF([have_liblas], [no], [ AS_VAR_IF([have_lidar], [yes], @@ -1982,7 +1990,7 @@ AS_VAR_IF([have_lidar], [no], # this is only used in rpm.mk.in to maybe avoid building MonetDB-lidar AC_SUBST([LIBLAS_RPM]) -AC_SUBST([LIBLAS_INCS]) +AC_SUBST([LIBLAS_CFLAGS]) AC_SUBST([LIBLAS_LIBS]) AM_CONDITIONAL([HAVE_LIDAR], [test "x$have_lidar" = xyes -o "x$have_lidar" = xauto]) diff --git a/sql/backends/monet5/vaults/lidar/Makefile.ag b/sql/backends/monet5/vaults/lidar/Makefile.ag --- a/sql/backends/monet5/vaults/lidar/Makefile.ag +++ b/sql/backends/monet5/vaults/lidar/Makefile.ag @@ -20,7 +20,7 @@ INCLUDES = .. \ ../../../../../common/utils \ ../../../../../clients/mapilib \ ../../../../../gdk \ - $(LIBLAS_INCS) + $(LIBLAS_CFLAGS) lib__lidar = { MODULE _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list