Unlike what happens on Linux, it seems that on Windows, modifying
`os.environ` in the Python interpreter has no effect on the environment
variables seen in the same process by Ada code. As a consequence, in
order for Liblktlang to have access to the desired LKT_PATH environment
variable, define it in the test drivers so that test processes inherit
it and so that Liblktlang has always access to it.
TN: RA22-015
This turns the build directory layout for object and library files from:
* lib/$NAME.$LIBRARY_TYPE/
* obj/$NAME.$LIBRARY_TYPE/
to:
* lib/$NAME/$LIBRARY_TYPE/$BUILD_MODE
* obj/$NAME/$LIBRARY_TYPE/$BUILD_MODE
The new layout allows one to have dev and prod builds coexisting in the
same build directory. As a side effect, libmanage's setenv and install
commands now accept the --build-mode option, so that they can work with
the build artifacts from the intended build mode.
TN: SA30-026
To speed up testsuite runs, do not rebuild Langkit_Support each time we
compile a language specification in testcases. For this, we turn
the hardcoded langkit_support.gpr project file into a library project.
To speed things up even more, use a single object directory and build
all library types with -fPIC so that units are built only once. All
code that is run in testcases is already built with -fPIC anyway.
TN: S311-015