Eliminate "native" programs that run during the build
There are "native" programs used in parts of the build, where we compile a program that runs ("native") on the build machine, and then run it to get some output needed by the build. Building these is almost always problematic due to conflicting requirements about which headers these programs should use.
As suggested by Robert Mustacchi, in this mail thread: (now quoting)
The correct approach here is to use a native program to dump the ctf
data in something that's built natively using the headers. That's the
conclusion that we came to last time this particular problem came up on
the mailing lists.
Updated by Robert Mustacchi over 6 years ago
Importantly, most native programs are fine. Specifically the problem is that you shouldn't have a native program use anything as part of the compilation process from the proto area. Accepting input from the proto area or from the gate in general, is perfectly fine.