libcoro
Blurb
As long as your system implements the ucontext (Unix) or the older sigaltstack interfaces it should work out of the box, with minimal configuration (it consists of only a single .h and a single .c file). For the broken systems, it also supports a slow pthreads-based system and (optional) assembly backends for higher speed on some systems. It is known to run on a wide variety of unix systems (SunOS, IRIX, GNU/Linux, HP-UX, FreeBSD, NetBSD, OpenBSD) and also on Windows, does not require any assembly language and is architecture-independent.