# ----------------
# Look for Python and set the output variable 'PYTHON' if found,
# fail otherwise.
+#
+# As the Python 3 transition happens and PEP 394 isn't updated, we
+# need to cater to systems that don't have unversioned "python" by
+# default. Some systems ship with "python3" by default and perhaps
+# have "python" in an optional package. Some systems only have
+# "python2" and "python3", in which case it's reasonable to prefer the
+# newer version.
AC_DEFUN([PGAC_PATH_PYTHON],
-[PGAC_PATH_PROGS(PYTHON, python)
+[PGAC_PATH_PROGS(PYTHON, [python python3 python2])
if test x"$PYTHON" = x""; then
AC_MSG_ERROR([Python not found])
fi
if test "$with_python" = yes; then
if test -z "$PYTHON"; then
- for ac_prog in python
+ for ac_prog in python python3 python2
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
implicitly chosen) determines which variant of the PL/Python
language becomes available. See
<xref linkend="plpython-python23"/>
- for more information. The default is <command>python</command>.
+ for more information. If this is not set, the following are probed
+ in this order: <literal>python python3 python2</literal>.
</para>
</listitem>
</varlistentry>