AC_PATH_PROG([PERL], perl, no)
AC_SUBST([PERL])dnl
if test "$PERL" != no && $PERL -e 'require 5.005_03;'; then :; else
- PSPP_REQUIRED_PREREQ([Perl 5.005_03 (or later)])
+ PSPP_OPTIONAL_PREREQ([Perl 5.005_03 (or later)])
fi
# The PSPP autobuilder appends a build number to the PSPP version number,
AC_SUBST([VERSION_FOR_PERL])
])
-dnl Check that Python 2 or 3 is available.
-AC_DEFUN([PSPP_PYTHON],
- [AC_ARG_VAR([PYTHON], [Python 2 or 3 interpreter])
- AC_CHECK_PROGS([PYTHON], [python python2 python3], [none])])
+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 "$PERL" != no && 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
+ if test "$PERL" = no; then
+ PSPP_REQUIRED_PREREQ([Perl 5.005_03 or later (or use --without-perl-module)])
+ fi
+ 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])
+ AC_CHECK_PROGS([PYTHON3], [python3 python], [none])
+ if test "$PYTHON3" != no && $PYTHON3 -c '
+import sys
+sys.exit(0 if sys.version_info >= (3,4) else 1)
+'; then :; else
+ PSPP_REQUIRED_PREREQ([Python 3.4 (or later)])
+ fi
+ ])
dnl PSPP_CHECK_CC_OPTION([OPTION], [ACTION-IF-ACCEPTED], [ACTION-IF-REJECTED])
dnl Check whether the given C compiler OPTION is accepted.