The "new" driver embeds metadata along with the compiled device image to
be used by the linking phase. One bit of metadata is the "kind" field
which determines which runtime to generate registration code for once
it's linked. E.g. if it was compiled with OpenMP it should be registered
with the OpenMP runtime.
However, in a freestanding build the implication is that there may not
be a standard runtime and instead we should expect it to be handled
externally. This patch causes the -ffreestanding option to set the
value to None which results in no registration code being created.
This is useful for generating pure GPU libraries using the offloading
tools. E.g. we can build a libc with OpenMP tooling and link it with
CUDA without requiring the OpenMP runtime be linked.