3 commits - .gitlab-ci.yml src/cairo-ft-font.c

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Jun 11 21:39:12 UTC 2024


 .gitlab-ci.yml      |    3 ++-
 src/cairo-ft-font.c |   12 ++++++------
 2 files changed, 8 insertions(+), 7 deletions(-)

New commits:
commit 0700bb78a2f844dd13537eb26940c4348b92a856
Merge: a30888101 f1b781e99
Author: Adrian Johnson <ajohnson at redneon.com>
Date:   Tue Jun 11 21:39:10 2024 +0000

    Merge branch 'ft-no-fc' into 'master'
    
    Fix FreeType build failure when Fontconfig is disabled
    
    See merge request cairo/cairo!564

commit f1b781e99df89d8b9650eb56c54448257277b117
Author: Adrian Johnson <ajohnson at redneon.com>
Date:   Mon Jun 10 13:18:56 2024 +0930

    Build mingw-32 in CI with fontconfig disabled
    
    This gives us one build in CI that has FreeType enabled and Fontconfig
    disabled in order to ensure this combination builds.
    
    Building the Fontconfig backend with Mingw is still checked in the
    mingw-64 build.

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0ff91612d..0202fad0a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -271,7 +271,8 @@ mingw-32 build:
   script:
     - mkdir builddir
     - cd builddir
-    - mingw32-meson --default-library=both
+    # Test building with FreeType enabled and Fontconfig disabled
+    - mingw32-meson --default-library=both -Dfontconfig=disabled
     - ninja install
   artifacts:
     expire_in: "7 days"
commit 00ce12846a09594b90c0b9c71915d26bd5e5ecc2
Author: Adrian Johnson <ajohnson at redneon.com>
Date:   Mon Jun 10 11:07:46 2024 +0930

    Fix cairo-ft-font.c build failure when fontconfig not available

diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c
index 2c446a5d6..d325cc8a6 100644
--- a/src/cairo-ft-font.c
+++ b/src/cairo-ft-font.c
@@ -1417,7 +1417,7 @@ _render_glyph_outline (FT_Face                    face,
 		       cairo_font_options_t	 *font_options,
 		       cairo_image_surface_t	**surface)
 {
-    int rgba = FC_RGBA_UNKNOWN;
+    cairo_subpixel_order_t rgba = CAIRO_SUBPIXEL_ORDER_DEFAULT;
     int lcd_filter = FT_LCD_FILTER_DEFAULT;
     FT_GlyphSlot glyphslot = face->glyph;
     FT_Outline *outline = &glyphslot->outline;
@@ -1518,16 +1518,16 @@ _render_glyph_outline (FT_Face                    face,
 	switch (render_mode) {
 	case FT_RENDER_MODE_LCD:
 	    if (font_options->subpixel_order == CAIRO_SUBPIXEL_ORDER_BGR)
-		rgba = FC_RGBA_BGR;
+		rgba = CAIRO_SUBPIXEL_ORDER_BGR;
 	    else
-		rgba = FC_RGBA_RGB;
+		rgba = CAIRO_SUBPIXEL_ORDER_RGB;
 	    break;
 
 	case FT_RENDER_MODE_LCD_V:
 	    if (font_options->subpixel_order == CAIRO_SUBPIXEL_ORDER_VBGR)
-		rgba = FC_RGBA_VBGR;
+		rgba = CAIRO_SUBPIXEL_ORDER_VBGR;
 	    else
-		rgba = FC_RGBA_VRGB;
+		rgba = CAIRO_SUBPIXEL_ORDER_VRGB;
 	    break;
 
 	case FT_RENDER_MODE_MONO:
@@ -1559,7 +1559,7 @@ _render_glyph_outline (FT_Face                    face,
 		return _cairo_error (CAIRO_STATUS_NO_MEMORY);
 
 	_fill_xrender_bitmap (&bitmap, face->glyph, render_mode,
-			      (rgba == FC_RGBA_BGR || rgba == FC_RGBA_VBGR));
+			      (rgba == CAIRO_SUBPIXEL_ORDER_BGR || rgba == CAIRO_SUBPIXEL_ORDER_VBGR));
 
 	/* Note:
 	 * _get_bitmap_surface will free bitmap.buffer if there is an error


More information about the cairo-commit mailing list