I didn't do thorough tests - just enough to see the app is loading and doing a bit of pthreads.
I hacked pthreads-win32 to get it working on uwp:
- TlsAlloc, Free, Get, Set - weren't in the current WindowsApp.Lib - but are supposed to be in 'Windows 1607' whatever that is
-- so I #ifdefed some in (vs linking to kernel32.lib, which I shouldn't have to do / may mess things up)
- no SetThreadContext, and no LoadProgram, but has QueryUserAPC (not Ex)
- linked with the uwp default WindowsApp.lib only.
Windows universal / uwp means it will run on hand-held devices, laptops, desktops running windows 10
For all the basics, you link to one .lib WindowsApp.lib and it links to all the little libs and at runtime pulls in all the little dlls.
there's a nuget package for pthreads.
https://github.com/coapp-packages/pthreads that can be loaded in VisualStudio 2015 and referenced in projects.
But it doesn't work on windows universal uwp, I found. In the nuget package management conditions it filters itself out for uwp apps, if I try and force link and package the dll, on a mobile device it says 'The app failed to start' and 'A dependent dll failed to load'.