[cairo] patch for VxWorks / Wind River Diab Compiler support
Manfred Kogler
manfred.kogler at gmail.com
Tue Feb 18 15:51:07 CET 2014
Hi all,
I am using cairo in a VxWorks project using Wind River Diab Compiler on a
PPC405 (no HW-floating point support). To get it cleanly compiled, I had to
fix a few warnings and errors:
(1) warning: last enum literal of several enumerations is frequently
suffixed with a comma
e.g.
typedef enum _cairo_backend_type {
CAIRO_TYPE_DEFAULT,
CAIRO_TYPE_SKIA,
} cairo_backend_type_t;
=> removed comma after last enum literal
typedef enum _cairo_backend_type {
CAIRO_TYPE_DEFAULT,
CAIRO_TYPE_SKIA
} cairo_backend_type_t;
(2) error: structure initializations using braced lists must only use
non-const initializers
=> introduced define CAIRO_ONLY_CONST_INITIALIZERS_IN_BRACED_LIST:
- if not defined (default), compiled code is like in cairo 1.12.16
- if defined (explicitly define for Diab compiler), structure
initializations
using braced lists that use non-const initialializers are
replaced by equivalent
initialization statements
(3) no-floating-point-optimization / consistency: every call of
_cairo_round() is replaced
with _cairo_lround()
This is because to support no-floating-point-optimization, in header
file cairoint.h function
_cairo_lround() is either inlined to _cairo_round() or implemented on
its own, depending
on define DISABLE_SOME_FLOATING_POINT.
Actually a proposal at this point: shouldn't _cairo_round() be removed
completely and
instead only _cairo_lround() be used? (This proposal is not considered
in my patch!)
(4) error: array declarations of len 0 are not allowed -> replaced with
pointer to array-elem
see file cairo-image-compositor.c:
uint8_t _buf[0];
->
uint8_t *_buf;
The patch I attached is based on cairo 1.12.16 release. I propose to take
it into the next release.
Many thanks and best regards,
Fred
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cairographics.org/archives/cairo/attachments/20140218/99e5b7df/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cairo-1.12.16__diab-compiler_support.patch
Type: application/octet-stream
Size: 14031 bytes
Desc: not available
URL: <http://lists.cairographics.org/archives/cairo/attachments/20140218/99e5b7df/attachment-0001.obj>
More information about the cairo
mailing list