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.
`lexer` is a keyword in Lkt, so having a property called `lexer` in Lkt
is an obstacle from the self-hosting of Lkt itself. Rename that property
to avoid this issue.
`val` is a keyword in Lkt, so having a field called `val` in Lkt is an
obstacle from the self-hosting of Lkt itself. Rename that field to avoid
this issue.
Absolute filenames are not useful in practice: there was no know homonym
Python files in known codebases implemented using the Python DSL, and
homonyms are very unlikely in Lkt codebases. Using basenames will remove
a big source of variation for code generation, which is particularly for
portable projects.
The new name reflects more closely the goal: no source file should
contain absolute paths in the whole project so that the generated
sources are truly portable. This is not yet the case, upcoming work will
take care of remaining issues.