diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-11-13 15:54:00 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-11-23 14:25:58 +0000 |
commit | b0f5416d7ee7c988d316df7ffa0318fa6514e4de (patch) | |
tree | c196c9966ee53499559806050bb2f01195d91c23 /external/cairo | |
parent | e34f290eec4f3c8d42724f1602029f5680aecde6 (diff) |
Do all svp text rendering with cairo
enabling us to delete a whole pile of foo
For android we patch cairo, which is internal in that case, to swap the rgb
components so that cairo then matches the OpenGL GL_RGBA format so we can use
it there where we don't have GL_BGRA support.
Change-Id: I25e34889c7b7263438b143dd2a2ad882fb0f190a
Diffstat (limited to 'external/cairo')
-rw-r--r-- | external/cairo/UnpackedTarball_cairo.mk | 1 | ||||
-rw-r--r-- | external/cairo/cairo/cairo.GL_RGBA.patch | 41 |
2 files changed, 42 insertions, 0 deletions
diff --git a/external/cairo/UnpackedTarball_cairo.mk b/external/cairo/UnpackedTarball_cairo.mk index bb2a4c1842a3..2114982f020a 100644 --- a/external/cairo/UnpackedTarball_cairo.mk +++ b/external/cairo/UnpackedTarball_cairo.mk @@ -34,6 +34,7 @@ endif ifeq ($(OS),ANDROID) $(eval $(call gb_UnpackedTarball_add_patches,cairo,\ external/cairo/cairo/cairo-1.10.2.android.patch \ + external/cairo/cairo/cairo.GL_RGBA.patch \ )) endif diff --git a/external/cairo/cairo/cairo.GL_RGBA.patch b/external/cairo/cairo/cairo.GL_RGBA.patch new file mode 100644 index 000000000000..d2afefdddd55 --- /dev/null +++ b/external/cairo/cairo/cairo.GL_RGBA.patch @@ -0,0 +1,41 @@ +--- misc/cairo-1.10.2/src/cairo-image-surface.c ++++ misc/cairo-1.10.2/src/cairo-image-surface.c +@@ -99,9 +99,9 @@ + _cairo_format_from_pixman_format (pixman_format_code_t pixman_format) + { + switch (pixman_format) { +- case PIXMAN_a8r8g8b8: ++ case PIXMAN_a8b8g8r8: //tweaked + return CAIRO_FORMAT_ARGB32; +- case PIXMAN_x8r8g8b8: ++ case PIXMAN_x8b8g8r8: //tweaked + return CAIRO_FORMAT_RGB24; + case PIXMAN_a8: + return CAIRO_FORMAT_A8; +@@ -109,7 +109,7 @@ + return CAIRO_FORMAT_A1; + case PIXMAN_r5g6b5: + return CAIRO_FORMAT_RGB16_565; +- case PIXMAN_a8b8g8r8: case PIXMAN_x8b8g8r8: case PIXMAN_r8g8b8: ++ case PIXMAN_a8r8g8b8: case PIXMAN_x8r8g8b8: case PIXMAN_r8g8b8: //tweaked + case PIXMAN_b8g8r8: case PIXMAN_b5g6r5: + case PIXMAN_a1r5g5b5: case PIXMAN_x1r5g5b5: case PIXMAN_a1b5g5r5: + case PIXMAN_x1b5g5r5: case PIXMAN_a4r4g4b4: case PIXMAN_x4r4g4b4: +@@ -297,7 +297,7 @@ + ret = PIXMAN_a8; + break; + case CAIRO_FORMAT_RGB24: +- ret = PIXMAN_x8r8g8b8; ++ ret = PIXMAN_x8b8g8r8; //tweaked + break; + case CAIRO_FORMAT_RGB16_565: + ret = PIXMAN_r5g6b5; +@@ -305,7 +305,7 @@ + case CAIRO_FORMAT_ARGB32: + case CAIRO_FORMAT_INVALID: + default: +- ret = PIXMAN_a8r8g8b8; ++ ret = PIXMAN_a8b8g8r8; //tweaked + break; + } + return ret; |