• YAMAMOTO Mitsuharu's avatar
    Don't link libXft when using cairo · 5f4e8e2e
    YAMAMOTO Mitsuharu authored
    * configure.ac: Check cairo early.  Don't try Xft if cairo is used.
    * lwlib/lwlib-utils.h [USE_CAIRO]: Include cairo.h and fontconfig.h.
    (XftFont, XftDraw, XftColor, XGlyphInfo) [USE_CAIRO]: New typedefs.
    (XftFontOpenName, XftFontClose, XftDrawCreate, XftDrawDestroy)
    (XftDrawRect, XftDrawStringUtf8, XftTextExtentsUtf8) [USE_CAIRO]: New macros.
    (crxft_font_open_name, crxft_font_close, crxft_draw_create)
    (crxft_draw_rect, crxft_draw_string, crxft_text_extents) [USE_CAIRO]: New
    * lwlib/lwlib-utils.c [USE_CAIRO]: Include math.h, cairo-ft.h, and
    (crxft_font_open_name, crxft_font_close, crxft_draw_create)
    (crxft_set_source_color, crxft_draw_rect, crxft_draw_string)
    (crxft_text_extents) [USE_CAIRO]: New Xft compatibility functions.
    * lwlib/xlwmenuP.h [USE_CAIRO]: Include lwlib-utils.h.
    * lwlib/xlwmenu.c (display_menu_item) [USE_CAIRO]: Call
    cairo_surface_mark_dirty and cairo_surface_flush.
    * lwlib/lwlib-Xaw.c [USE_CAIRO]: Include stdlib.h and lwlib-utils.h.
    (draw_text) [USE_CAIRO]: Call cairo_surface_flush.
    * src/xsettings.c [USE_CAIRO]: Include fontconfig.h
    (apply_xft_settings) [!HAVE_XFT]: Don't call XftDefaultSubstitute or
    * lwlib/lwlib-Xaw.c:
    * lwlib/lwlib-int.h:
    * lwlib/xlwmenu.c:
    * lwlib/xlwmenuP.h:
    * src/xrdb.c:
    * src/xsettings.c:
    * src/xterm.c: Replace all #ifdef HAVE_XFT with #if defined USE_CAIRO ||
    defined HAVE_XFT.
    * src/xfns.c (x_default_font_parameter): Replace #ifdef HAVE_XFT with #if
    defined	USE_CAIRO || defined HAVE_XFT.
xfns.c 245 KB