On 16 Jan 2015 at 4:05, Moshe Rubin wrote:
I suggest you start by modifying asio/detail/config.hpp to make those changes, and then see what errors happen after that. There will most likely be other changes needed to work around Windows API functions that are still unsupported on Windows Phone.
Ok, I clearly read meaning into your original post which wasn't there. I apologise. I have a partial solution for the other problem Chris mentioned now that WinRT 8.1 has the Winsock API, that of missing Windows API functions. It isn't widely known that mingw-w64 provides a winstorecompat library which provides emulations of win32 APIs using WinRT APIs, and therefore by linking to it with one fell swoop can make many of the forbidden symbols go away. The winstorecompat library was developed by VLC as part of their KickStarter funding to port VLC to WinRT, so by now it is surely reasonably well tested. You'll find the library at http://sourceforge.net/p/mingw-w64/code/HEAD/tree/trunk/mingw-w64-libr aries/winstorecompat/src/, and just from the filenames of the source files you'll see quickly what is supported. It may therefore be worth compiling ASIO standalone in C++ 11 mode targeting mingw-w64 with the winstorecompat build switched on, and see how many of the unit tests pass plus how many banned APIs are still generated in the executables. It would at least give you a good idea of how much work remains for a complete WinRT port, and who knows, it may just all work and you're done (on mingw-w64 at least). If you need help with configuring the mingw-w64 toolchain for a WinRT target, try examining the VLC sources as I'd assume this is not a well documented use case. I hope this is useful. Niall -- ned Productions Limited Consulting http://www.nedproductions.biz/ http://ie.linkedin.com/in/nialldouglas/