X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=configure.ac;h=a3a07a87e07816848ffd8f9c8416e20a8d9913ee;hb=33e610616a2b48f9a7eb56c4ebb0325b66df0376;hp=a1f5f655f2ba377d91d0c69e4d4adfe8733c264c;hpb=006bed0af6dede3b1307e3eb635fe037076bebd6;p=pspp diff --git a/configure.ac b/configure.ac index a1f5f655f2..a3a07a87e0 100644 --- a/configure.ac +++ b/configure.ac @@ -76,6 +76,12 @@ AM_CONDITIONAL([HAVE_GUI], if test "$with_cairo" != no && test "$with_gui" != "no"; then PKG_CHECK_MODULES([GTK], [gtk+-2.0 >= 2.12], [], [PSPP_REQUIRED_PREREQ([gtk+ 2.0 version 2.12 or later (or use --without-gui)])]) + + AC_ARG_VAR([GLIB_GENMARSHAL]) + AC_CHECK_PROGS([GLIB_GENMARSHAL], [glib-genmarshal]) + if test "x$GLIB_GENMARSHAL" = x; then + PSPP_REQUIRED_PREREQ([glib-genmarshal (or use --without-gui)]) + fi fi dnl Checks needed for psql reader @@ -126,18 +132,55 @@ if test x"$with_libpq" != x"no" ; then fi AM_CONDITIONAL(PSQL_SUPPORT, test -n "$PG_CONFIG") -dnl Checks needed for Gnumeric reader -gnm_support=yes; -PKG_CHECK_MODULES(LIBXML2, libxml-2.0,, - [PSPP_OPTIONAL_PREREQ([libxml2]); gnm_support=no;]); -AC_SEARCH_LIBS(gzopen,z,,[PSPP_OPTIONAL_PREREQ([zlib]); gnm_support=no;]) -AC_CHECK_HEADERS(zlib.h,,[PSPP_OPTIONAL_PREREQ([zlib]); gnm_support=no;]) +dnl Check for libxml2 +PKG_CHECK_MODULES( + [LIBXML2], [libxml-2.0], + [HAVE_LIBXML2=yes], + [HAVE_LIBXML2=no + PSPP_OPTIONAL_PREREQ([libxml2])]) + +dnl Check for zlib. +AC_SEARCH_LIBS( + [gzopen], [z], + [HAVE_ZLIB=yes], + [HAVE_ZLIB=no + PSPP_OPTIONAL_PREREQ([zlib])]) +AC_CHECK_HEADERS( + [zlib.h], + [], + [HAVE_ZLIB=no + PSPP_OPTIONAL_PREREQ([zlib])]) + +dnl Avoid interference between zlib's crc32() function and gnulib's +dnl crc32() function, which have different signatures. PSPP calls +dnl only gnulib's crc32() directly, but it calls zlib's crc32() +dnl indirectly through other zlib calls. If we don't rename gnulib's +dnl crc32(), then zlib will call gnulib's version instead of its own, +dnl causing failures. (This can happen even if zlib isn't detected +dnl directly, because other libraries that PSPP uses, e.g. libpng, +dnl sometimes use zlib themselves.) +AC_DEFINE( + [crc32], [gl_crc32], + [Avoid making zlib call gnulib's crc32() instead of its own.]) + +dnl Gnumeric support requires libxml2 and zlib. +if test $HAVE_LIBXML2 = yes && test $HAVE_ZLIB = yes; then + GNM_SUPPORT=yes + AC_DEFINE( + [GNM_SUPPORT], [1], + [Define to 1 if building in support for reading Gnumeric files.]) +else + GNM_SUPPORT=no +fi +AM_CONDITIONAL([GNM_SUPPORT], [test $GNM_SUPPORT = yes]) -if test x"$gnm_support" = x"yes" ; then - AC_DEFINE([GNM_SUPPORT], 1, - [Define to 1 if building in support for reading Gnumeric files.]) +dnl ODT support requires libxml2. +if test $HAVE_LIBXML2 = yes; then + AC_DEFINE( + [ODT_SUPPORT], [1], + [Define to 1 if building in support for writing ODT files.]) fi -AM_CONDITIONAL(GNM_SUPPORT, test x"$gnm_support" = x"yes") +AM_CONDITIONAL([ODT_SUPPORT], [test $HAVE_LIBXML2 = yes]) AC_ARG_WITH( gui_tools, @@ -229,7 +272,7 @@ RELOCATABLE_STRIP=: PSPP_CHECK_PREREQS -AC_CONFIG_FILES([Makefile gl/Makefile tests/atlocal]) +AC_CONFIG_FILES([Makefile gl/Makefile tests/atlocal perl-module/lib/PSPP.pm]) AC_OUTPUT echo "PSPP configured successfully."