Several persons have said that the initial version of this macro failed on their
systems. Hopefully this will work better.
dnl Check that xgettext is sufficiently recent
dnl Check that xgettext is sufficiently recent
-dnl Before calling this function the variable XGETTEXT must point to the xgettext binary
+dnl Before calling this macro, AC_CHECK_PROGS([XGETTEXT], [xgettext]) should have been called,
+dnl which sets the ac_cv_prog_XGETTEXT cache variable.
AC_DEFUN([PSPP_CHECK_XGETTEXT],
[AC_CACHE_CHECK([whether gettext is sufficiently recent],
[pspp_cv_progrecent_xgettext],
[pspp_cv_progrecent_xgettext=maybe
ver=`$ac_cv_prog_XGETTEXT --version | sed -n -e '/xgettext/s/[[^0-9]]*\([[0-9\.]][[0-9\.]]*\).*/\1/p'`
AC_DEFUN([PSPP_CHECK_XGETTEXT],
[AC_CACHE_CHECK([whether gettext is sufficiently recent],
[pspp_cv_progrecent_xgettext],
[pspp_cv_progrecent_xgettext=maybe
ver=`$ac_cv_prog_XGETTEXT --version | sed -n -e '/xgettext/s/[[^0-9]]*\([[0-9\.]][[0-9\.]]*\).*/\1/p'`
- major=${ver%%.[[0-9]][[0-9]]*}
- majmin=${ver%.[[0-9]][[0-9]]*}
- minor=${majmin##[0-9]*.}
+ majmin=`echo $ver | sed -e 's/\.[[0-9]]*$//'`
+ major=`echo $majmin | sed -e 's/\.[[0-9]]*$//'`
+ minor=`echo $majmin | sed -e 's/^[[0-9]]*\.//'`
if test "$major" -lt 0; then
pspp_cv_progrecent_xgettext=no;
elif test "$minor" -lt 20; then
if test "$major" -lt 0; then
pspp_cv_progrecent_xgettext=no;
elif test "$minor" -lt 20; then
else
pspp_cv_progrecent_xgettext=yes
fi])])
else
pspp_cv_progrecent_xgettext=yes
fi])])