No. You just use gcc. Like everyone else.
But implementing `drawButton()`, `blitToScreen()` and similar is in no way similar to implementing a C++ compiler, as you implied.
An example of a port is here, in this directory: https://trac.webkit.org/browser/trunk/Source/WebCore/platfor...
No. You just use gcc. Like everyone else.