[Pixman] Win32 fixes and improvements

Andrea Canciani ranma42 at gmail.com
Tue Feb 22 14:07:41 PST 2011


In order to make pixman more maintainable on windows, having working
Makefiles for the library and the tests is probably needed. Today I
took the Makefile attached to
https://bugs.freedesktop.org/show_bug.cgi?id=33069
and tried to use it to build but it didn't build all the tests because
of some incompatibilities between cl and gcc.

The following patches should make it possible to build pixman and the
entire test suite on Windows from git in a properly configured Cygwin
environment.

There are some remaining warnings: 

c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(317) :
warning C4799: function 'store8888' has no EMMS instruction
c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(166) :
warning C4799: function 'to_uint64' has no EMMS instruction
c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(437) :
warning C4799: function 'combine' has no EMMS instruction

These are wanrings about some missing MMX registers cleanup. I don't
know if this is required or if the compiler just does not notice that
it is already performed somewhere else.

c:\cygwin\home\ranma42\code\fdo\pixman\test\fetch-test.c(114) :
warning C4715: 'reader' : not all control paths return a value
c:\cygwin\home\ranma42\code\fdo\pixman\test\stress-test.c(133) :
warning C4715: 'real_reader' : not all control paths return a value
c:\cygwin\home\ranma42\code\fdo\pixman\test\composite.c(431) :
warning C4715: 'calc_op' : not all control paths return a value

These are non-returning functions (abort() / assert(0)). They can be
silenced by adding a return after the termination call, if we aim at a
warning-free build on Windows.




More information about the Pixman mailing list