mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-05 02:58:02 +02:00
Take image_rotate-ref.png out of EXTRA_DIST until we can actually render it correctly. (XFAIL_TESTS): Update with new known bugs.
Add font backend selection options.
This commit is contained in:
parent
0e2e28c717
commit
be7b745a43
6 changed files with 100 additions and 37 deletions
11
ChangeLog
11
ChangeLog
|
|
@ -1,3 +1,14 @@
|
|||
2005-01-17 Kristian Høgsberg <krh@redhat.com>
|
||||
|
||||
* test/Makefile.am (EXTRA_DIST): Take image_rotate-ref.png out of
|
||||
EXTRA_DIST until we can actually render it correctly.
|
||||
(XFAIL_TESTS): Update with new known bugs.
|
||||
|
||||
* src/cairo-features.h.in:
|
||||
* src/cairo.h:
|
||||
* src/cairoint.h:
|
||||
* configure.in: Add font backend selection options.
|
||||
|
||||
2005-01-15 John Ellson <ellson@research.att.com>
|
||||
|
||||
reviewed by: Keith Packard <keithp@keithp.com>
|
||||
|
|
|
|||
95
configure.in
95
configure.in
|
|
@ -207,14 +207,24 @@ AC_SUBST(SANITY_CHECKING_FEATURE)
|
|||
|
||||
dnl ===========================================================================
|
||||
|
||||
PKG_CHECK_MODULES(FONTCONFIG, fontconfig)
|
||||
CAIRO_CFLAGS="$CAIRO_CFLAGS $FONTCONFIG_CFLAGS"
|
||||
CAIRO_LIBS="$CAIRO_LIBS $FONTCONFIG_LIBS"
|
||||
|
||||
PKG_CHECK_MODULES(PIXMAN, libpixman >= 0.1.2)
|
||||
CAIRO_CFLAGS="$CAIRO_CFLAGS $PIXMAN_CFLAGS"
|
||||
CAIRO_LIBS="$CAIRO_LIBS $PIXMAN_LIBS"
|
||||
|
||||
dnl ===========================================================================
|
||||
|
||||
AC_ARG_ENABLE(freetype,
|
||||
[ --disable-freetype Disable cairo's freetype font backend],
|
||||
[use_freetype=$enableval], [use_freetype=yes])
|
||||
|
||||
if test "x$use_freetype" = "xyes"; then
|
||||
PKG_CHECK_MODULES(FONTCONFIG, fontconfig,
|
||||
[use_freetype=yes], [use_freetype=no])
|
||||
fi
|
||||
|
||||
CAIRO_CFLAGS="$CAIRO_CFLAGS $FONTCONFIG_CFLAGS"
|
||||
CAIRO_LIBS="$CAIRO_LIBS $FONTCONFIG_LIBS"
|
||||
|
||||
# Test for freetype2 separate from pkg-config since at least up to
|
||||
# 2003-06-07, there was no freetype2.pc in the release.
|
||||
#
|
||||
|
|
@ -232,34 +242,63 @@ FREETYPE_MIN_RELEASE=2.1.0
|
|||
# libtool-specific version - this is what is checked
|
||||
FREETYPE_MIN_VERSION=8.0.2
|
||||
|
||||
if test -z "$FREETYPE_CONFIG"; then
|
||||
AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
|
||||
if test "x$use_freetype" = "xyes"; then
|
||||
|
||||
if test -z "$FREETYPE_CONFIG"; then
|
||||
AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
|
||||
fi
|
||||
if test "$FREETYPE_CONFIG" = "no" ; then
|
||||
AC_MSG_ERROR(No freetype-config script found in path or FREETYPE_CONFIG)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(freetype2 libtool version)
|
||||
|
||||
FREETYPE_VERSION=`$FREETYPE_CONFIG --version`
|
||||
|
||||
VERSION_DEC=`echo $FREETYPE_VERSION | awk -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'`
|
||||
MIN_VERSION_DEC=`echo $FREETYPE_MIN_VERSION | awk -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'`
|
||||
if test $VERSION_DEC -lt $MIN_VERSION_DEC; then
|
||||
AC_MSG_ERROR($FREETYPE_VERSION - version $FREETYPE_MIN_VERSION from release $FREETYPE_MIN_RELEASE required)
|
||||
fi
|
||||
AC_MSG_RESULT($FREETYPE_VERSION - OK)
|
||||
|
||||
FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
|
||||
FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
|
||||
AC_SUBST(FREETYPE_CFLAGS)
|
||||
AC_SUBST(FREETYPE_LIBS)
|
||||
fi
|
||||
if test "$FREETYPE_CONFIG" = "no" ; then
|
||||
AC_MSG_ERROR(No freetype-config script found in path or FREETYPE_CONFIG)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(freetype2 libtool version)
|
||||
|
||||
FREETYPE_VERSION=`$FREETYPE_CONFIG --version`
|
||||
|
||||
VERSION_DEC=`echo $FREETYPE_VERSION | awk -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'`
|
||||
MIN_VERSION_DEC=`echo $FREETYPE_MIN_VERSION | awk -F. '{printf("%d\n", 10000*$1 + 100*$2 + $3)};'`
|
||||
if test $VERSION_DEC -lt $MIN_VERSION_DEC; then
|
||||
AC_MSG_ERROR($FREETYPE_VERSION - version $FREETYPE_MIN_VERSION from release $FREETYPE_MIN_RELEASE required)
|
||||
fi
|
||||
AC_MSG_RESULT($FREETYPE_VERSION - OK)
|
||||
|
||||
FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
|
||||
FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
|
||||
AC_SUBST(FREETYPE_CFLAGS)
|
||||
AC_SUBST(FREETYPE_LIBS)
|
||||
|
||||
CAIRO_CFLAGS="$CAIRO_CFLAGS $FREETYPE_CFLAGS"
|
||||
CAIRO_LIBS="$CAIRO_LIBS $FREETYPE_LIBS"
|
||||
|
||||
if test "x$use_freetype" != "xyes"; then
|
||||
FREETYPE_FONT_FEATURE=CAIRO_HAS_NO_FREETYPE_FONT
|
||||
AM_CONDITIONAL(CAIRO_HAS_FREETYPE_FONT, false)
|
||||
else
|
||||
FREETYPE_FONT_FEATURE=CAIRO_HAS_FREETYPE_FONT
|
||||
AM_CONDITIONAL(CAIRO_HAS_FREETYPE_FONT, true)
|
||||
fi
|
||||
AC_SUBST(FREETYPE_FONT_FEATURE)
|
||||
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl This check should default to 'yes' once we have code to actually
|
||||
dnl check for the atsui font backend.
|
||||
|
||||
AC_ARG_ENABLE(atsui,
|
||||
[ --disable-atsui Disable cairo's atsui font backend],
|
||||
[use_atsui=$enableval], [use_atsui=no])
|
||||
|
||||
if test "x$use_atsui" != "xyes"; then
|
||||
ATSUI_FONT_FEATURE=CAIRO_HAS_NO_ATSUI_FONT
|
||||
AM_CONDITIONAL(CAIRO_HAS_ATSUI_FONT, false)
|
||||
else
|
||||
ATSUI_FONT_FEATURE=CAIRO_HAS_ATSUI_FONT
|
||||
AM_CONDITIONAL(CAIRO_HAS_ATSUI_FONT, true)
|
||||
fi
|
||||
AC_SUBST(ATSUI_FONT_FEATURE)
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl Checks for precise integer types
|
||||
AC_CHECK_TYPES([uint64_t, uint128_t])
|
||||
|
||||
|
|
@ -292,7 +331,7 @@ test/Makefile
|
|||
dnl ===========================================================================
|
||||
|
||||
echo ""
|
||||
echo "cairo will be compiled with the following backends:"
|
||||
echo "cairo will be compiled with the following surface backends:"
|
||||
echo " Xlib: $use_xlib"
|
||||
echo " XCB: $use_xcb"
|
||||
echo " PostScript: $use_ps"
|
||||
|
|
@ -300,4 +339,8 @@ echo " PDF: $use_pdf"
|
|||
echo " PNG: $use_png"
|
||||
echo " glitz: $use_glitz"
|
||||
echo ""
|
||||
echo "and the following font backends:"
|
||||
echo " freetype: $use_freetype"
|
||||
echo " atsui: $use_atsui"
|
||||
echo ""
|
||||
|
||||
|
|
|
|||
|
|
@ -49,6 +49,10 @@
|
|||
|
||||
#define @GLITZ_SURFACE_FEATURE@
|
||||
|
||||
#define @FREETYPE_FONT_FEATURE@
|
||||
|
||||
#define @ATSUI_FONT_FEATURE@
|
||||
|
||||
#define @SANITY_CHECKING_FEATURE@
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -523,7 +523,7 @@ void
|
|||
cairo_font_current_transform (cairo_font_t *font,
|
||||
cairo_matrix_t *matrix);
|
||||
|
||||
#if CAIRO_HAS_FT_FONT
|
||||
#ifdef CAIRO_HAS_FREETYPE_FONT
|
||||
/* Fontconfig/Freetype platform-specific font interface */
|
||||
|
||||
#include <fontconfig/fontconfig.h>
|
||||
|
|
@ -542,7 +542,7 @@ cairo_ft_font_face (cairo_font_t *ft_font);
|
|||
FcPattern *
|
||||
cairo_ft_font_pattern (cairo_font_t *ft_font);
|
||||
|
||||
#endif /* CAIRO_HAS_FT_FONT */
|
||||
#endif /* CAIRO_HAS_FREETYPE_FONT */
|
||||
|
||||
/* Image functions */
|
||||
|
||||
|
|
|
|||
|
|
@ -500,11 +500,13 @@ typedef struct _cairo_font_backend {
|
|||
} cairo_font_backend_t;
|
||||
|
||||
/* concrete font backends */
|
||||
#ifdef CAIRO_HAS_FT_FONT
|
||||
#ifdef CAIRO_HAS_FREETYPE_FONT
|
||||
|
||||
extern const cairo_private struct _cairo_font_backend cairo_ft_font_backend;
|
||||
|
||||
#elif defined(CAIRO_HAS_ATSUI_FONT)
|
||||
#endif
|
||||
|
||||
#ifdef CAIRO_HAS_ATSUI_FONT
|
||||
|
||||
extern const cairo_private struct _cairo_font_backend cairo_atsui_font_backend;
|
||||
|
||||
|
|
@ -743,7 +745,7 @@ typedef struct _cairo_traps {
|
|||
#define CAIRO_FONT_SLANT_DEFAULT CAIRO_FONT_SLANT_NORMAL
|
||||
#define CAIRO_FONT_WEIGHT_DEFAULT CAIRO_FONT_WEIGHT_NORMAL
|
||||
|
||||
#ifdef CAIRO_HAS_FT_FONT
|
||||
#ifdef CAIRO_HAS_FREETYPE_FONT
|
||||
|
||||
#define CAIRO_FONT_FAMILY_DEFAULT "serif"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,10 +12,12 @@ text_rotate
|
|||
# here?
|
||||
EXTRA_DIST = \
|
||||
fill_rule-ref.png \
|
||||
leaky_polygon.png \
|
||||
leaky_polygon-ref.png \
|
||||
line_width-ref.png \
|
||||
move_to_show_surface-ref.png \
|
||||
text_rotate-ref.png
|
||||
move_to_show_surface-ref.png
|
||||
|
||||
# Once we can draw the text_rotate.c test case correctly, we should
|
||||
# create and add text_rotate-ref.png to the list of reference PNGs.
|
||||
|
||||
# This list is only for known bugs (not regressions). We do need to
|
||||
# fix these before the next release, but they are expected to fail for
|
||||
|
|
@ -25,9 +27,10 @@ text_rotate-ref.png
|
|||
# here. New failures due to local, uncommitted code changes are
|
||||
# regression bugs that should not be listed here. Instead they should
|
||||
# be fixed before the code is committed.
|
||||
XFAIL_TESTS = \
|
||||
move_to_show_surface \
|
||||
text_cache_crash \
|
||||
XFAIL_TESTS = \
|
||||
fill_rule \
|
||||
leaky_polygon \
|
||||
move_to_show_surface \
|
||||
text_rotate
|
||||
|
||||
check_PROGRAMS = $(TESTS)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue