Cygnus solved this problem by creating a completely free (non-GPL, can
be used for commercial use) libc specifically for their embedded systems
customers who demanded such a thing.
Given that most embedded systems are still pretty simple (hint: putting
a Unix system into an embedded system is generally not a good idea),
having a completely free libc has been sufficient for most embedded
systems folks.
My guess is that it's probably easier to write a completely free libc
than it would be to draft appropriate legal language for the GPL that
would make GPL code usable for embedded systems while still making RMS
and the FSF comforotable that bad buy couldn't find a loophole through
said legal language....
- Ted