From a9f4087b58091cb01ea08e70564e0618c9182a11 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Wed, 15 Dec 2021 18:54:47 -0800 Subject: [PATCH] configure: Check for Perl modules needed to build PSPP's Perl module. Fedora doesn't have Config::Perl::V by default and its absence caused mysterious build failures. --- acinclude.m4 | 33 +++++++++++++++++++++++++++++++++ configure.ac | 16 +--------------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index f070009962..3c451971bb 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -43,6 +43,39 @@ AC_DEFUN([PSPP_PERL], AC_SUBST([VERSION_FOR_PERL]) ]) +dnl CHECK_PERL_MODULE([MODULE], [RUN-IF-AVAILABLE], [RUN-IF-NOT-AVAILABLE]) +AC_DEFUN([CHECK_PERL_MODULE], + [echo "configure:__oline__: running $PERL -M$1 -e '' >&AS_MESSAGE_LOG_FD" >&AS_MESSAGE_LOG_FD + $PERL -M$1 -e '' >&AS_MESSAGE_LOG_FD 2>&1 + retval=$? + echo "configure:__oline__: \$? = $retval" >&AS_MESSAGE_LOG_FD + AS_IF([test $retval = 0], [$2], [$3])]) + +AC_DEFUN([PSPP_PERL_MODULE], + [AC_ARG_WITH( + [perl-module], + [AS_HELP_STRING([--without-perl-module], [do not build the Perl module])], + [AS_CASE([$with_perl_module], + [yes|no], [], + [AC_MSG_FAILURE([--with-perl-module argument must be 'yes' or 'no'])]) + WITH_PERL_MODULE=$with_perl_module], + [if test x"$cross_compiling" != x"yes"; then + WITH_PERL_MODULE=yes + else + WITH_PERL_MODULE=no + fi]) + AC_SUBST([WITH_PERL_MODULE]) + AM_CONDITIONAL(WITH_PERL_MODULE, test $WITH_PERL_MODULE = yes) + + if test $WITH_PERL_MODULE = yes; then + CHECK_PERL_MODULE([Config::Perl::V], [], + [PSPP_REQUIRED_PREREQ([Config::Perl::V Perl module (or use --without-perl-module)])]) + CHECK_PERL_MODULE([Text::Diff], [], + [PSPP_OPTIONAL_PREREQ([Text::Diff Perl module for running Perl tests])]) + CHECK_PERL_MODULE([Memory::Usage], [], + [PSPP_OPTIONAL_PREREQ([Memory::Usage Perl module for running Perl tests])]) + fi]) + dnl Check that Python 3 is available. AC_DEFUN([PSPP_PYTHON3], [AC_ARG_VAR([PYTHON3], [Python 3 interpreter]) diff --git a/configure.ac b/configure.ac index c1bc5d78cb..109330f10f 100644 --- a/configure.ac +++ b/configure.ac @@ -259,21 +259,7 @@ AC_DEFINE( [crc32], [gl_crc32], [Avoid making zlib call gnulib's crc32() instead of its own.]) -AC_ARG_WITH( - [perl-module], - [AS_HELP_STRING([--without-perl-module], [do not build the Perl module])], - [case $with_perl_module in # ( - yes|no) ;; # ( - *) AC_MSG_FAILURE([--with-perl-module argument must be 'yes' or 'no']) ;; - esac - WITH_PERL_MODULE=$with_perl_module], - [if test x"$cross_compiling" != x"yes"; then - WITH_PERL_MODULE=yes - else - WITH_PERL_MODULE=no - fi]) -AC_SUBST([WITH_PERL_MODULE]) -AM_CONDITIONAL(WITH_PERL_MODULE, test $WITH_PERL_MODULE = yes) +PSPP_PERL_MODULE AC_SEARCH_LIBS([cblas_dsdot], [gslcblas],,[PSPP_REQUIRED_PREREQ([libgslcblas])]) PKG_CHECK_MODULES([GSL], [gsl >= 1.13], [], -- 2.30.2