I need to port fairly large WinAPI-heavy application to Linux. After some googling it becomes clear that there's nothing except for Wine/Winelib which is *huge*. However for at least most basic WinAPI functions it looks fairly easy to just re-implement it via Boost/STL/libc/Linux syscalls. Why there's nothing small like this already? ... we need to either re-implement around 200 WinAPI functions (mostly events, mutexes, semaphore, sockets, file and folder operations) or to rewrite the entire thing from scratch. Using Winelib directly is not an option due to the nature of the app.
I think there have been several such compatibility layers. http://chiharu.haun.org/peace/ for instance. Wine's the only one that has really tried tor run everything.
Why can't you just bundle wine? - Dan