OK. So you are doing what I'd usually call cross compiling, sort of, but you don't want to treat it as a cross-compiled build. It's an unusual case, in that it is cross compiled, but it is also expected to be able to run on the build system.
The main reason for the build to know if we're doing a cross-compilation or not has been if we need a special compiler to create build tools. For me, that is in essence what the cross-compilation flag is saying.
Separately, we have the concept of sysroot, but I agree that setting the sysroot is essentially a form of cross-compilation. The question is: do the build system need to know about this, any more than just make sure we pass along the sysroot properly?
Maybe this is just a question on how to present the needs of the build system to the user, where "cross-compilation" might have different connotations than are used inside the build system.
So maybe we should have like "cross-compiling-need-build-compiler" and "cross-complining-can-use-target-compiler"?
/Magnus