Assuming that this module can be made to work reliably, we want the build to succeed on win32 too. The module can then be used for win32 shadow servers, or for client side csc (with video encodings on non-gl windows).
At the moment, it does not (r4127 is needed for setting up the build path):
C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 \ /GS- /DNDEBUG -IE:\xpra\trunk\src\win32 -IC:\NVIDIA\CUDA\CUDAToolkit\include \ -IC:\Python27\include -IC:\Python27\PC \ /Tcxpra/codecs/csc_nvcuda/csc_nvcuda.c \ /Fobuild\temp.win32-2.7\Release\xpra/codecs/csc_nvcuda/csc_nvcuda.obj csc_nvcuda.c xpra/codecs/csc_nvcuda/csc_nvcuda.c(69) : error C2059: syntax error : '[' xpra/codecs/csc_nvcuda/csc_nvcuda.c(76) : error C2059: syntax error : '[' xpra/codecs/csc_nvcuda/csc_nvcuda.c(83) : error C2059: syntax error : '[' xpra/codecs/csc_nvcuda/csc_nvcuda.c(112) : warning C4034: sizeof returns 0 xpra/codecs/csc_nvcuda/csc_nvcuda.c(129) : warning C4034: sizeof returns 0 xpra/codecs/csc_nvcuda/csc_nvcuda.c(131) : warning C4034: sizeof returns 0 xpra/codecs/csc_nvcuda/csc_nvcuda.c(141) : error C2275: 'va_list' : illegal use of this type as an expression
Looks like MSVC is being a bit behind the times again?
client side csc (with video encodings on non-gl windows).
This use case is unrealistic. If you can do Cuda, you can do GL equally well, and Cuda setup times as well as stability means you'll want to do GL *more* than Cuda. Such a use case would be a waste of time.
Also, as it stands, csc_nvcuda doesn't even work on Linux. Bothering with Windows at this point is not a worthy goal.
This use case is unrealistic
There is another uses case listed (ie: shadow server) and I can think of a few more, having code that builds on as many platforms as possible is a worthy goal in itself. And the fix doesn't look too hard either.
Also, as it stands, csc_nvcuda doesn't even work on Linux
That's why this ticket is scheduled for 0.11 and I also said: Assuming that this module can be made to work reliably
Another way of dealing with this is to remove our glue layer and use PyCUDA which will make dealing with contexts a lot nicer and more OO-like.
Calling NPP and OpenCV webcam app in Python
We now use pycuda which solves this problem, for further details see #384
(NPP is useless to us, and the C code to interface with it was very heavy)
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/413