For interactive uses, the `gnu-full` style is much less convenient than
the default format (colors, true column number, quoted source with
caret, ...).
We need to keep supporting Python 3.11, and
`tempfile.NamedTemporaryFile`'s `delete_on_close` argument was
introduced in Python 3.12: refactor to avoid using it.
Also stop building it in `manage.py`` (it is no longer needed for common
Langkit operations). Rename and repurpose `contrib/python_grammar` to
generate+build Libpythonlang, in an attempt to ensure it does not bit
rot.
Add pre-generated sources for Liblktlang in `contrib/lkt/bootstrap` so
that it is possible to build one version of Liblktlang in order to
compile Liblktlang's Lkt sources.
Adjust `manage.py` to build that bootstrap version of Liblktlang
automatically, and add a `manage.py bootstrap` command to genererate
sources for the bootstrap Liblktlang.
Note that this commit also reworks this module to ease type checking, in
particular use subclassing to avoid attributes nullability (all
`*_prefix` attributes could be None before this commit) as all uses for
such attributes would have to be protected with an assert otherwise.
Use the correct path environment variable separator (':' or ';')
depending on the platfrom and the environment variable. This should fix
builds on Windows/GitHub.
For #631