From 79a71884e55cab2bbdb2ca0c59cfb2c14104af11 Mon Sep 17 00:00:00 2001 From: Mike Hommey Date: Wed, 22 Apr 2026 13:00:22 -0700 Subject: [PATCH 14/29] Build fixes for iOS --- src/cairo-quartz-font.c | 7 +++++++ src/cairo-quartz-image.h | 2 -- src/cairo-quartz.h | 9 +++++++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/cairo-quartz-font.c b/src/cairo-quartz-font.c index b1a6fd7f5..9c0eac367 100644 --- a/src/cairo-quartz-font.c +++ b/src/cairo-quartz-font.c @@ -65,7 +65,9 @@ /* These are private functions */ static bool (*CGContextGetAllowsFontSmoothingPtr) (CGContextRef) = NULL; +#ifdef CAIRO_HAS_QUARTZ_ATSUFONTID static ATSFontRef (*FMGetATSFontRefFromFontPtr) (FMFont iFont) = NULL; +#endif /* CAIRO_HAS_QUARTZ_ATSUFONTID */ static cairo_bool_t _cairo_quartz_font_symbol_lookup_done = FALSE; /* Cairo's transformations assume a unit-scaled font. */ @@ -92,7 +94,9 @@ quartz_font_ensure_symbols(void) CGContextGetAllowsFontSmoothingPtr = dlsym (RTLD_DEFAULT, "CGContextGetAllowsFontSmoothing"); +#ifdef CAIRO_HAS_QUARTZ_ATSUFONTID FMGetATSFontRefFromFontPtr = dlsym(RTLD_DEFAULT, "FMGetATSFontRefFromFont"); +#endif /* CAIRO_HAS_QUARTZ_ATSUFONTID */ _cairo_quartz_font_symbol_lookup_done = TRUE; } @@ -806,6 +810,7 @@ _cairo_quartz_scaled_font_get_ct_font (cairo_scaled_font_t *abstract_font) /* * compat with old ATSUI backend */ +#ifdef CAIRO_HAS_QUARTZ_ATSUFONTID /** * cairo_quartz_font_face_create_for_atsu_font_id: @@ -849,3 +854,5 @@ cairo_atsui_font_face_create_for_atsu_font_id (ATSUFontID font_id) { return cairo_quartz_font_face_create_for_atsu_font_id (font_id); } + +#endif /* CAIRO_HAS_QUARTZ_ATSUFONTID */ diff --git a/src/cairo-quartz-image.h b/src/cairo-quartz-image.h index 0dd5abb4f..9e8409c11 100644 --- a/src/cairo-quartz-image.h +++ b/src/cairo-quartz-image.h @@ -40,8 +40,6 @@ #if CAIRO_HAS_QUARTZ_IMAGE_SURFACE -#include - CAIRO_BEGIN_DECLS cairo_public cairo_surface_t * diff --git a/src/cairo-quartz.h b/src/cairo-quartz.h index 14482424a..d79d1c102 100644 --- a/src/cairo-quartz.h +++ b/src/cairo-quartz.h @@ -40,7 +40,14 @@ #if CAIRO_HAS_QUARTZ_SURFACE +#if CAIRO_HAS_QUARTZ_CORE_GRAPHICS +#include +#include +#endif + +#if CAIRO_HAS_QUARTZ_APPLICATION_SERVICES #include +#endif CAIRO_BEGIN_DECLS @@ -69,8 +76,10 @@ cairo_quartz_surface_get_image (cairo_surface_t *surface); cairo_public cairo_font_face_t * cairo_quartz_font_face_create_for_cgfont (CGFontRef font); +#if CAIRO_HAS_QUARTZ_ATSUFONTID cairo_public cairo_font_face_t * cairo_quartz_font_face_create_for_atsu_font_id (ATSUFontID font_id); +#endif /* CAIRO_HAS_QUARTZ_ATSUFONTID */ #endif /* CAIRO_HAS_QUARTZ_FONT */ -- 2.53.0