Hello,
- What is your environment (OS)?
FreeBSD 13
- Which version of Global are you using?
6.6.9
- What did you do?
./configure
- What did you expect from it?
Don't try to detect a Python installation at build time and don't pickup the
corresponding Python executable to generate the shebang line for the Pygments
parser.
Instead, use a reasonable default line, like "#!/usr/bin/env python", so that
resolution happens at run-time.
Also, I don't expect './configure --help' to present such options:
--with-python-sys-prefix, --with-python_prefix, --with-python_exec_prefix. They
are relevant only when a Python module is actually installed (which is not the
case for Global).
It may however be useful to be able to specify a specific shebang line. Please
see the attached patch, which provides '--enable-python-interpreter' to force a
Python shebang line (the PYTHON environment variable also works).
If you absolutely want to keep the detection-at-compile-time feature (which I
advise against), I can propose another patch so that the "detect" special value
for '--enable-python-interpreter' triggers some auto-detection at build time.
In any case, AM_PATH_PYTHON must not be used as long as no Python module is
installed.
Regards.
--
Olivier Certner
--- configure.ac 2023-04-06 14:12:41.226575000 +0200
+++ configure.ac 2023-04-06 14:24:33.865754000 +0200
@@ -43,7 +43,19 @@
dnl
dnl for "plugin-factory/pygments_parser.py"
dnl
-AM_PATH_PYTHON([2.6],,[PYTHON="/usr/bin/env python"])
+m4_define([PYTHON_INTERPRETER],[[/usr/bin/env python]])
+AC_ARG_ENABLE([python-interpreter],
+ [AS_HELP_STRING([--enable-python-interpreter],
+ [the Python interpreter to use at run-time in the Pygments plugin]dnl
+[ @<:@default=]m4_expand([PYTHON_INTERPRETER])[@:>@])],
+ [PYTHON=$enableval],
+ [PYTHON=""])
+AS_IF([test x"$PYTHON" = x"no"],
+ [AC_MSG_ERROR([a Python interpreter command is needed (even if not installed)])],
+ [test x"$PYTHON" = x],
+ [PYTHON="]m4_expand([PYTHON_INTERPRETER])["])
+AC_MSG_NOTICE([using "$PYTHON" as the shebang line's interpreter for 'pygments_parser.py'])
+AC_SUBST([PYTHON])
AC_GNU_SOURCE