head 1.162; access; symbols RELEASE_1_0_2:1.140.2.3 BRANCH_1_0:1.140.0.2 RELEASE_1_0_0:1.139 BRANCH_SCALED_GLYPH:1.126.0.2 RELEASE_0_9_2:1.124 RELEASE_0_9_0:1.119 SNAPSHOT_0_6_0:1.114 SNAPSHOT_0_5_2:1.110 SNAPSHOT_0_5_1:1.105 SNAPSHOT_0_5_0:1.103 SNAPSHOT_0_4_0:1.92 SNAPSHOT_0_3_0:1.74 SNAPSHOT_0_2_0:1.64 LGPL_CHANGE_AFTER:1.58 LGPL_CHANGE_BEFORE:1.58 SNAPSHOT_0_1_23:1.54 SNAPSHOT_0_1_22:1.51 SNAPSHOT_0_1_21:1.50 SNAPSHOT_0_1_20:1.47 SNAPSHOT_0_1_16:1.35; locks; strict; comment @# @; 1.162 date 2006.01.13.00.35.12; author cworth; state Exp; branches; next 1.161; commitid 2e0943c6f5bc4567; 1.161 date 2005.12.29.15.17.01; author memmel; state Exp; branches; next 1.160; commitid 5ce043b3fdb04567; 1.160 date 2005.12.19.21.59.34; author emmanuel; state Exp; branches; next 1.159; commitid 6a4c43a72d304567; 1.159 date 2005.12.19.19.01.42; author biesi; state Exp; branches; next 1.158; commitid c4143a703864567; 1.158 date 2005.12.19.01.20.06; author biesi; state Exp; branches; next 1.157; commitid 6e6f43a60a8a4567; 1.157 date 2005.12.17.00.23.04; author biesi; state Exp; branches; next 1.156; commitid 3ab743a35a354567; 1.156 date 2005.12.16.19.31.10; author cworth; state Exp; branches; next 1.155; commitid 24f43a315fb4567; 1.155 date 2005.12.15.16.58.08; author cworth; state Exp; branches; next 1.154; commitid 5e0043a1a09c4567; 1.154 date 2005.12.15.00.22.06; author cworth; state Exp; branches; next 1.153; commitid 84343a0b72b4567; 1.153 date 2005.12.12.19.56.40; author vladimir; state Exp; branches; next 1.152; commitid 4071439dd5d64567; 1.152 date 2005.12.08.21.09.26; author emmanuel; state Exp; branches; next 1.151; commitid 6b634398a0e54567; 1.151 date 2005.12.08.00.06.11; author cworth; state Exp; branches; next 1.150; commitid 5256439778f04567; 1.150 date 2005.12.07.19.44.28; author cworth; state Exp; branches; next 1.149; commitid 26b243973b994567; 1.149 date 2005.10.13.14.30.16; author cworth; state Exp; branches; next 1.148; commitid 348a434e6f764567; 1.148 date 2005.10.08.18.57.45; author cworth; state Exp; branches; next 1.147; commitid 2a9b434816a84567; 1.147 date 2005.10.08.17.50.08; author cworth; state Exp; branches; next 1.146; commitid 7c57434806ce4567; 1.146 date 2005.10.04.20.48.25; author andersca; state Exp; branches; next 1.145; commitid 37b84342ea8d4567; 1.145 date 2005.09.19.02.53.23; author vektor; state Exp; branches; next 1.144; commitid 61b432e28134567; 1.144 date 2005.09.19.02.37.44; author vektor; state Exp; branches; next 1.143; commitid 7cea432e24674567; 1.143 date 2005.09.14.16.07.00; author davidr; state Exp; branches; next 1.142; commitid 201943284aa04567; 1.142 date 2005.09.12.18.11.33; author cworth; state Exp; branches; next 1.141; commitid 7f554325c4d24567; 1.141 date 2005.08.31.21.43.31; author cworth; state Exp; branches; next 1.140; commitid f3a431624804567; 1.140 date 2005.08.24.17.16.14; author cworth; state Exp; branches 1.140.2.1; next 1.139; commitid 3f9a430cab5b4567; 1.139 date 2005.08.24.16.29.39; author cworth; state Exp; branches; next 1.138; commitid d71430ca0714567; 1.138 date 2005.08.24.13.48.02; author cworth; state Exp; branches; next 1.137; commitid 774a430c7a904567; 1.137 date 2005.08.24.13.07.58; author cworth; state Exp; branches; next 1.136; commitid 45ed430c712c4567; 1.136 date 2005.08.24.12.25.51; author cworth; state Exp; branches; next 1.135; commitid 2a87430c674c4567; 1.135 date 2005.08.23.22.16.37; author otaylor; state Exp; branches; next 1.134; commitid 37a0430ba0404567; 1.134 date 2005.08.23.22.11.44; author otaylor; state Exp; branches; next 1.133; commitid 32de430b9f1c4567; 1.133 date 2005.08.22.22.49.04; author tml; state Exp; branches; next 1.132; commitid e68430a563a4567; 1.132 date 2005.08.22.22.19.03; author otaylor; state Exp; branches; next 1.131; commitid 7c27430a4f534567; 1.131 date 2005.08.21.16.27.52; author otaylor; state Exp; branches; next 1.130; commitid 50914308ab844567; 1.130 date 2005.08.19.00.22.23; author otaylor; state Exp; branches; next 1.129; commitid 4e5d430526394567; 1.129 date 2005.08.18.15.28.08; author vektor; state Exp; branches; next 1.128; commitid 373f4304a8f24567; 1.128 date 2005.08.18.04.19.30; author krh; state Exp; branches; next 1.127; commitid 152943040c374567; 1.127 date 2005.08.17.22.57.45; author krh; state Exp; branches; next 1.126; commitid 111d4303c0df4567; 1.126 date 2005.08.16.23.52.35; author vektor; state Exp; branches; next 1.125; commitid 3d0c43027c344567; 1.125 date 2005.08.13.12.33.21; author cworth; state Exp; branches; next 1.124; commitid 6e1842fde88f4567; 1.124 date 2005.08.13.12.00.20; author cworth; state Exp; branches; next 1.123; commitid 601642fde0d14567; 1.123 date 2005.08.13.10.26.18; author cworth; state Exp; branches; next 1.122; commitid 3d5542fdcac74567; 1.122 date 2005.08.10.19.36.51; author cworth; state Exp; branches; next 1.121; commitid 16b242fa57504567; 1.121 date 2005.08.10.18.08.38; author cworth; state Exp; branches; next 1.120; commitid 6f7b42fa42a34567; 1.120 date 2005.08.09.16.27.39; author cworth; state Exp; branches; next 1.119; commitid 47c142f8d9794567; 1.119 date 2005.08.09.04.06.44; author cworth; state Exp; branches; next 1.118; commitid 4d6342f82bd14567; 1.118 date 2005.08.03.17.32.50; author cworth; state Exp; branches; next 1.117; commitid 545e42f0ffbf4567; 1.117 date 2005.08.01.20.33.47; author cworth; state Exp; branches; next 1.116; commitid 59b442ee87274567; 1.116 date 2005.07.31.18.19.47; author vektor; state Exp; branches; next 1.115; commitid 540f42ed16214567; 1.115 date 2005.07.28.19.45.26; author cworth; state Exp; branches; next 1.114; commitid 454442e935d44567; 1.114 date 2005.07.28.18.51.38; author cworth; state Exp; branches; next 1.113; commitid 2e3a42e929384567; 1.113 date 2005.07.28.17.43.27; author otaylor; state Exp; branches; next 1.112; commitid 160742e9193a4567; 1.112 date 2005.07.28.17.24.59; author otaylor; state Exp; branches; next 1.111; commitid cbd42e914e74567; 1.111 date 2005.07.18.18.51.42; author cworth; state Exp; branches; next 1.110; commitid 619742dbfa3c4567; 1.110 date 2005.07.18.15.31.24; author cworth; state Exp; branches; next 1.109; commitid 7f5c42dbcb4a4567; 1.109 date 2005.07.06.18.23.39; author cworth; state Exp; branches; next 1.108; commitid 21f442cc21a74567; 1.108 date 2005.07.04.10.58.43; author davidr; state Exp; branches; next 1.107; commitid 33342c916614567; 1.107 date 2005.06.26.06.24.19; author keithp; state Exp; branches; next 1.106; commitid 425442be49ec4567; 1.106 date 2005.06.21.00.06.10; author cworth; state Exp; branches; next 1.105; commitid 1c8042b759f04567; 1.105 date 2005.06.20.23.35.40; author cworth; state Exp; branches; next 1.104; commitid 15d542b752ca4567; 1.104 date 2005.05.18.16.41.47; author cworth; state Exp; branches; next 1.103; commitid 2b47428b70494567; 1.103 date 2005.05.18.01.39.56; author cworth; state Exp; branches; next 1.102; commitid d19428a9cea4567; 1.102 date 2005.05.10.21.54.48; author cworth; state Exp; branches; next 1.101; commitid a3442812da74567; 1.101 date 2005.05.10.21.48.05; author cworth; state Exp; branches; next 1.100; commitid 75a42812c144567; 1.100 date 2005.05.09.15.34.57; author cworth; state Exp; branches; next 1.99; commitid 1c36427f831c4567; 1.99 date 2005.05.07.04.33.22; author cworth; state Exp; branches; next 1.98; commitid 2451427c450b4567; 1.98 date 2005.04.07.19.05.52; author cworth; state Exp; branches; next 1.97; 1.97 date 2005.03.30.22.00.31; author cworth; state Exp; branches; next 1.96; 1.96 date 2005.03.30.21.34.51; author cworth; state Exp; branches; next 1.95; 1.95 date 2005.03.29.19.24.10; author tor; state Exp; branches; next 1.94; 1.94 date 2005.03.28.21.58.26; author krh; state Exp; branches; next 1.93; 1.93 date 2005.03.09.03.34.04; author cworth; state Exp; branches; next 1.92; 1.92 date 2005.03.09.01.36.24; author cworth; state Exp; branches; next 1.91; 1.91 date 2005.03.08.16.51.48; author cworth; state Exp; branches; next 1.90; 1.90 date 2005.03.07.20.40.29; author cworth; state Exp; branches; next 1.89; 1.89 date 2005.03.04.17.41.34; author otaylor; state Exp; branches; next 1.88; 1.88 date 2005.03.04.04.16.23; author davidr; state Exp; branches; next 1.87; 1.87 date 2005.03.04.03.09.24; author davidr; state Exp; branches; next 1.86; 1.86 date 2005.03.04.02.04.51; author davidr; state Exp; branches; next 1.85; 1.85 date 2005.03.04.01.40.04; author davidr; state Exp; branches; next 1.84; 1.84 date 2005.02.24.16.20.14; author otaylor; state Exp; branches; next 1.83; 1.83 date 2005.02.22.18.43.26; author cworth; state Exp; branches; next 1.82; 1.82 date 2005.02.06.01.17.19; author cworth; state Exp; branches; next 1.81; 1.81 date 2005.02.06.01.01.29; author otaylor; state Exp; branches; next 1.80; 1.80 date 2005.02.02.05.45.51; author otaylor; state Exp; branches; next 1.79; 1.79 date 2005.02.01.00.11.37; author otaylor; state Exp; branches; next 1.78; 1.78 date 2005.01.27.23.46.16; author otaylor; state Exp; branches; next 1.77; 1.77 date 2005.01.27.19.35.25; author otaylor; state Exp; branches; next 1.76; 1.76 date 2005.01.25.20.21.32; author davidr; state Exp; branches; next 1.75; 1.75 date 2005.01.23.20.49.56; author cworth; state Exp; branches; next 1.74; 1.74 date 2005.01.21.20.48.11; author cworth; state Exp; branches; next 1.73; 1.73 date 2005.01.21.04.41.40; author cworth; state Exp; branches; next 1.72; 1.72 date 2005.01.20.16.28.54; author cworth; state Exp; branches; next 1.71; 1.71 date 2005.01.17.17.40.00; author krh; state Exp; branches; next 1.70; 1.70 date 2005.01.17.17.18.37; author krh; state Exp; branches; next 1.69; 1.69 date 2005.01.11.18.03.01; author keithp; state Exp; branches; next 1.68; 1.68 date 2005.01.07.07.20.07; author krh; state Exp; branches; next 1.67; 1.67 date 2005.01.05.22.29.31; author krh; state Exp; branches; next 1.66; 1.66 date 2004.11.08.21.34.58; author dajobe; state Exp; branches; next 1.65; 1.65 date 2004.11.03.23.28.37; author davidr; state Exp; branches; next 1.64; 1.64 date 2004.10.27.20.13.39; author cworth; state Exp; branches; next 1.63; 1.63 date 2004.10.26.23.59.22; author cworth; state Exp; branches; next 1.62; 1.62 date 2004.10.26.21.38.43; author cworth; state Exp; branches; next 1.61; 1.61 date 2004.10.04.11.55.46; author davidr; state Exp; branches; next 1.60; 1.60 date 2004.09.11.14.59.27; author davidr; state Exp; branches; next 1.59; 1.59 date 2004.09.11.11.23.17; author davidr; state Exp; branches; next 1.58; 1.58 date 2004.06.21.22.13.52; author davidr; state Exp; branches; next 1.57; 1.57 date 2004.06.11.15.08.27; author davidr; state Exp; branches; next 1.56; 1.56 date 2004.05.28.19.37.15; author keithp; state Exp; branches; next 1.55; 1.55 date 2004.05.20.23.42.56; author graydon; state Exp; branches; next 1.54; 1.54 date 2004.05.11.15.19.47; author cworth; state Exp; branches; next 1.53; 1.53 date 2004.05.11.12.31.16; author davidr; state Exp; branches; next 1.52; 1.52 date 2004.04.30.03.26.56; author davidr; state Exp; branches; next 1.51; 1.51 date 2004.04.16.15.56.45; author cworth; state Exp; branches; next 1.50; 1.50 date 2004.04.09.21.30.38; author davidr; state Exp; branches; next 1.49; 1.49 date 2004.04.09.21.19.47; author davidr; state Exp; branches; next 1.48; 1.48 date 2004.04.09.21.14.56; author davidr; state Exp; branches; next 1.47; 1.47 date 2004.04.06.16.36.12; author davidr; state Exp; branches; next 1.46; 1.46 date 2004.03.31.02.45.00; author cworth; state Exp; branches; next 1.45; 1.45 date 2004.03.20.17.54.20; author dajobe; state Exp; branches; next 1.44; 1.44 date 2004.03.20.16.20.46; author dajobe; state Exp; branches; next 1.43; 1.43 date 2004.02.24.20.39.29; author oandrieu; state Exp; branches; next 1.42; 1.42 date 2004.02.24.20.27.52; author oandrieu; state Exp; branches; next 1.41; 1.41 date 2004.02.18.02.38.23; author cworth; state Exp; branches; next 1.40; 1.40 date 2004.02.03.07.24.14; author jamey; state Exp; branches; next 1.39; 1.39 date 2003.12.16.15.20.20; author cworth; state Exp; branches; next 1.38; 1.38 date 2003.12.12.19.44.16; author cworth; state Exp; branches; next 1.37; 1.37 date 2003.12.11.20.43.58; author cworth; state Exp; branches; next 1.36; 1.36 date 2003.12.11.17.35.07; author cworth; state Exp; branches; next 1.35; 1.35 date 2003.12.08.20.31.22; author cworth; state Exp; branches; next 1.34; 1.34 date 2003.12.05.16.53.07; author cworth; state Exp; branches; next 1.33; 1.33 date 2003.12.03.20.27.44; author cworth; state Exp; branches; next 1.32; 1.32 date 2003.11.18.21.21.29; author cworth; state Exp; branches; next 1.31; 1.31 date 2003.11.18.15.28.16; author james; state Exp; branches; next 1.30; 1.30 date 2003.11.10.16.16.34; author cworth; state Exp; branches; next 1.29; 1.29 date 2003.11.08.18.28.04; author dajobe; state Exp; branches; next 1.28; 1.28 date 2003.11.07.02.33.28; author cworth; state Exp; branches; next 1.27; 1.27 date 2003.11.04.16.58.53; author cworth; state Exp; branches; next 1.26; 1.26 date 2003.11.04.16.33.45; author cworth; state Exp; branches; next 1.25; 1.25 date 2003.11.04.03.17.31; author cworth; state Exp; branches; next 1.24; 1.24 date 2003.11.01.05.30.35; author cworth; state Exp; branches; next 1.23; 1.23 date 2003.10.31.18.41.37; author cworth; state Exp; branches; next 1.22; 1.22 date 2003.10.30.20.39.49; author cworth; state Exp; branches; next 1.21; 1.21 date 2003.10.24.18.01.37; author cworth; state Exp; branches; next 1.20; 1.20 date 2003.09.30.18.39.07; author cworth; state Exp; branches; next 1.19; 1.19 date 2003.09.29.15.36.29; author cworth; state Exp; branches; next 1.18; 1.18 date 2003.09.25.22.01.28; author cworth; state Exp; branches; next 1.17; 1.17 date 2003.09.25.15.01.38; author cworth; state Exp; branches; next 1.16; 1.16 date 2003.09.16.13.45.19; author cworth; state Exp; branches; next 1.15; 1.15 date 2003.09.15.20.17.32; author cworth; state Exp; branches; next 1.14; 1.14 date 2003.09.10.00.38.10; author cworth; state Exp; branches; next 1.13; 1.13 date 2003.09.05.22.29.49; author cworth; state Exp; branches; next 1.12; 1.12 date 2003.09.05.15.35.08; author cworth; state Exp; branches; next 1.11; 1.11 date 2003.09.04.13.52.01; author cworth; state Exp; branches; next 1.10; 1.10 date 2003.08.05.12.04.27; author cworth; state Exp; branches; next 1.9; 1.9 date 2003.08.01.05.41.44; author rth; state Exp; branches; next 1.8; 1.8 date 2003.07.30.18.21.54; author cworth; state Exp; branches; next 1.7; 1.7 date 2003.07.30.15.30.50; author cworth; state Exp; branches; next 1.6; 1.6 date 2003.07.18.18.34.19; author cworth; state Exp; branches; next 1.5; 1.5 date 2003.05.08.21.21.48; author nlevitt; state Exp; branches; next 1.4; 1.4 date 2003.04.25.20.34.00; author cworth; state Exp; branches; next 1.3; 1.3 date 2003.04.23.14.23.46; author cworth; state Exp; branches; next 1.2; 1.2 date 2003.04.23.05.08.58; author keithp; state Exp; branches; next 1.1; 1.1 date 2003.04.17.20.24.29; author cworth; state Exp; branches; next ; 1.140.2.1 date 2005.09.12.18.11.48; author cworth; state Exp; branches; next 1.140.2.2; commitid 7fc64325c4e24567; 1.140.2.2 date 2005.09.19.02.56.32; author vektor; state Exp; branches; next 1.140.2.3; commitid 782432e28cb4567; 1.140.2.3 date 2005.10.04.00.48.04; author cworth; state Exp; branches; next 1.140.2.4; commitid 724b4341d1414567; 1.140.2.4 date 2005.10.04.04.56.24; author cworth; state Exp; branches; next 1.140.2.5; commitid 511543420b754567; 1.140.2.5 date 2005.10.04.20.49.33; author andersca; state Exp; branches; next 1.140.2.6; commitid 386b4342eacd4567; 1.140.2.6 date 2005.10.08.17.58.11; author cworth; state Exp; branches; next 1.140.2.7; commitid 36c434808ac4567; 1.140.2.7 date 2005.12.07.19.45.15; author cworth; state Exp; branches; next ; commitid 274443973bc84567; desc @@ 1.162 log @ 2006-01-12 Carl Worth * configure.in: Add a new CAIRO_HAS_MULTI_PAGE_SURFACES automake conditional. * test/.cvsignore: * test/Makefile.am: * test/pdf-clip.c: * test/pdf-surface.c: * test/ps-surface.c: Remove backend-specific tests (ps-surface, pdf-surface, and pdf-clip) that are now redundant with the ps and pdf support in the rest of the test suite. * test/multi-page.c: (draw), (draw_five_pages), (main): Add a new one-off test for testing show_page with both the ps and pdf backends. @ text @AC_PREREQ(2.54) # cairo package version number, (as distinct from shared library version) # An odd micro number indicates in-progress development, (eg. from CVS) # An even micro number indicates a released version. m4_define(cairo_version_major, 1) m4_define(cairo_version_minor, 1) m4_define(cairo_version_micro, 1) AC_INIT([cairo], cairo_version_major.cairo_version_minor.cairo_version_micro, [http://bugs.freedesktop.org/enter_bug.cgi?product=cairo]) AC_CONFIG_SRCDIR(src/cairo.h) AC_CONFIG_HEADERS(config.h) AM_INIT_AUTOMAKE([1.7]) dnl =========================================================================== # libtool shared library version # Increment if the interface has additions, changes, removals. LT_CURRENT=5 # Increment any time the source changes; set to # 0 if you increment CURRENT LT_REVISION=0 # Increment if any interfaces have been added; set to 0 # if any interfaces have been removed. removal has # precedence over adding, so set to 0 if both happened. LT_AGE=3 dnl =========================================================================== VERSION_INFO="$LT_CURRENT:$LT_REVISION:$LT_AGE" AC_SUBST(VERSION_INFO) LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE` AC_SUBST(LT_CURRENT_MINUS_AGE) CAIRO_VERSION_MAJOR=cairo_version_major() CAIRO_VERSION_MINOR=cairo_version_minor() CAIRO_VERSION_MICRO=cairo_version_micro() AC_SUBST(CAIRO_VERSION_MAJOR) AC_SUBST(CAIRO_VERSION_MINOR) AC_SUBST(CAIRO_VERSION_MICRO) AC_SUBST(CAIRO_VERSION_OTHER) AM_MAINTAINER_MODE AC_PROG_CC AC_PROG_CPP AM_PROG_LIBTOOL AC_STDC_HEADERS AC_C_BIGENDIAN dnl =========================================================================== dnl === Local macros dnl =========================================================================== # _CHECK_FUNCS_WITH_FLAGS(FUNCTION..., CFLAGS, LIBS # [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) # Like AC_CHECK_FUNCS but with additional CFLAGS and LIBS # -------------------------------------------------------------------- AC_DEFUN([_CHECK_FUNCS_WITH_FLAGS], [ save_cflags="$CFLAGS" save_libs="$LIBS" CFLAGS="$CFLAGS $2" LIBS="$LIBS $3" AC_CHECK_FUNCS($1, $4, $5) CFLAGS="$save_cflags" LIBS="$save_libs" ]) dnl =========================================================================== AC_CHECK_FUNCS(vasnprintf) AC_CHECK_LIBM LIBS="$LIBS $LIBM" dnl =========================================================================== PKG_PROG_PKG_CONFIG dnl =========================================================================== AC_ARG_ENABLE(xlib, [ --disable-xlib Disable cairo's Xlib backend], [use_xlib=$enableval], [use_xlib=yes]) if test "x$use_xlib" = "xyes"; then dnl Check for Xrender header files if the Xrender package is not installed: PKG_CHECK_MODULES(XRENDER, xrender >= 0.6, [ XRENDER_REQUIRES=xrender use_xlib=yes], [ AC_CHECK_HEADER(X11/extensions/Xrender.h, [ AC_PATH_XTRA XRENDER_LIBS="$X_LIBS -lXrender -lXext -lX11 $X_EXTRA_LIBS" use_xlib=yes], [ use_xlib="no (requires Xrender http://freedesktop.org/Software/xlibs)"])]) _CHECK_FUNCS_WITH_FLAGS(XrmFinalize, $XRENDER_CFLAGS, $XRENDER_LIBS) fi AM_CONDITIONAL(CAIRO_HAS_XLIB_SURFACE, test "x$use_xlib" = "xyes") if test "x$use_xlib" = "xyes"; then XLIB_SURFACE_FEATURE="#define CAIRO_HAS_XLIB_SURFACE 1" fi AC_SUBST(XLIB_SURFACE_FEATURE) AC_SUBST(XRENDER_REQUIRES) CAIRO_CFLAGS="$CAIRO_CFLAGS $XRENDER_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $XRENDER_LIBS" AC_ARG_ENABLE(quartz, [ --enable-quartz Enable cairo's Quartz backend], [use_quartz=$enableval], [use_quartz=no]) if test "x$use_quartz" = "xyes"; then dnl There is no pkgconfig for quartz; lets do a header check AC_CHECK_HEADER(Carbon/Carbon.h, [use_quartz=yes], [use_quartz=no]) fi AM_CONDITIONAL(CAIRO_HAS_QUARTZ_SURFACE, test "x$use_quartz" = "xyes") if test "x$use_quartz" = "xyes"; then QUARTZ_SURFACE_FEATURE="#define CAIRO_HAS_QUARTZ_SURFACE 1" QUARTZ_LIBS="-Xlinker -framework -Xlinker Carbon" fi AC_SUBST(QUARTZ_SURFACE_FEATURE) CAIRO_LIBS="$CAIRO_LIBS $QUARTZ_LIBS" dnl =========================================================================== AC_ARG_ENABLE(xcb, [ --enable-xcb Enable cairo's XCB backend], [use_xcb=$enableval], [use_xcb=no]) if test "x$use_xcb" = "xyes"; then PKG_CHECK_MODULES(XCB, xcb, [use_xcb=yes], [ use_xcb="no (requires XCB http://xcb.freedesktop.org)"]) fi AM_CONDITIONAL(CAIRO_HAS_XCB_SURFACE, test "x$use_xcb" = "xyes") if test "x$use_xcb" = "xyes"; then XCB_SURFACE_FEATURE="#define CAIRO_HAS_XCB_SURFACE 1" fi AC_SUBST(XCB_SURFACE_FEATURE) CAIRO_CFLAGS="$CAIRO_CFLAGS $XCB_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $XCB_LIBS" dnl =========================================================================== AC_MSG_CHECKING([for some Win32 platform]) case "$host" in *-*-mingw*|*-*-cygwin*) cairo_platform_win32=yes ;; *) cairo_platform_win32=no ;; esac AC_MSG_RESULT([$cairo_platform_win32]) AC_ARG_ENABLE(win32, [ --disable-win32 Disable cairo's Microsoft Windows backend], [use_win32=$enableval], [use_win32="yes"]) if test "x$cairo_platform_win32" != "xyes" ; then use_win32=no fi if test "x$use_win32" = "xyes"; then CAIRO_LIBS="$CAIRO_LIBS -lgdi32 -lmsimg32" fi AM_CONDITIONAL(CAIRO_HAS_WIN32_SURFACE, test "x$use_win32" = "xyes") if test "x$use_win32" = "xyes"; then WIN32_SURFACE_FEATURE="#define CAIRO_HAS_WIN32_SURFACE 1" fi AC_SUBST(WIN32_SURFACE_FEATURE) AM_CONDITIONAL(CAIRO_HAS_WIN32_FONT, test "x$use_win32" = "xyes") if test "x$use_win32" = "xyes"; then WIN32_FONT_FEATURE="#define CAIRO_HAS_WIN32_FONT 1" fi AC_SUBST(WIN32_FONT_FEATURE) dnl =========================================================================== AC_MSG_CHECKING([for BeOS/Zeta]) case "$host" in *-*-beos) cairo_platform_beos=yes ;; *) cairo_platform_beos=no ;; esac AC_MSG_RESULT([$cairo_platform_beos]) AC_ARG_ENABLE(beos, [ --enable-beos Disable cairo's BeOS/Zeta backend], [use_beos=$enableval], [use_beos=no]) if test "x$cairo_platform_beos" != "xyes" ; then if test "x$use_beos" = "xyes"; then AC_MSG_WARN([The BeOS backend requires a BeOS platform; disabling]) use_beos=no fi fi if test "x$use_beos" = "xyes"; then AC_PROG_CXX dnl Add libbe and libzeta if available AC_CHECK_LIB(be,main,CAIRO_LIBS="$CAIRO_LIBS -lbe") AC_CHECK_LIB(zeta,main,CAIRO_LIBS="$CAIRO_LIBS -lzeta") fi AM_CONDITIONAL(CAIRO_HAS_BEOS_SURFACE, test "x$use_beos" = "xyes") if test "x$use_beos" = "xyes"; then BEOS_SURFACE_FEATURE="#define CAIRO_HAS_BEOS_SURFACE 1" fi AC_SUBST(BEOS_SURFACE_FEATURE) dnl =========================================================================== AC_ARG_ENABLE(png, [ --disable-png Disable cairo's PNG functions], [use_png=$enableval], [use_png=yes]) if test "x$use_png" = "xyes"; then use_png=no # libpng13 is GnuWin32's libpng-1.2.8 :-( for l in libpng12 libpng13 libpng10 ; do if $PKG_CONFIG --exists $l ; then PNG_REQUIRES=$l use_png=yes break fi done if test "x$use_png" = "xyes" ; then # Sets PNG_CFLAGS, PNG_LIBS PKG_CHECK_MODULES(PNG, $PNG_REQUIRES) else AC_MSG_WARN([Could not find libpng in the pkg-config search path]) fi fi AM_CONDITIONAL(CAIRO_HAS_PNG_FUNCTIONS, test "x$use_png" = "xyes") if test "x$use_png" = "xyes"; then PNG_FUNCTIONS_FEATURE="#define CAIRO_HAS_PNG_FUNCTIONS 1" else AC_MSG_WARN([*** To run the tests, cairo must be built with png support ***]) fi AC_SUBST(PNG_FUNCTIONS_FEATURE) CAIRO_CFLAGS="$CAIRO_CFLAGS $PNG_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $PNG_LIBS" AC_SUBST(PNG_REQUIRES) dnl =========================================================================== AC_ARG_ENABLE(glitz, [ --enable-glitz Enable cairo's glitz backend], [use_glitz=$enableval], [use_glitz=no]) if test "x$use_glitz" = "xyes"; then PKG_CHECK_MODULES(GLITZ, glitz >= 0.5.1, [ GLITZ_REQUIRES=glitz use_glitz=yes], [use_glitz="no (requires glitz http://freedesktop.org/Software/glitz)"]) fi if test "x$use_glitz" = "xyes";then PKG_CHECK_MODULES(GLITZ_AGL, glitz-agl >= 0.5.1, [have_glitz_agl=yes], [have_glitz_agl=no]) PKG_CHECK_MODULES(GLITZ_EGL, glitz-egl >= 0.5.1, [have_glitz_egl=yes], [have_glitz_egl=no]) PKG_CHECK_MODULES(GLITZ_GLX, glitz-glx >= 0.5.1, [have_glitz_glx=yes], [have_glitz_glx=no]) PKG_CHECK_MODULES(GLITZ_WGL, glitz-wgl >= 0.5.1, [have_glitz_wgl=yes], [have_glitz_wgl=no]) if test "x$have_glitz_agl" = "xyes";then AC_DEFINE(CAIRO_CAN_TEST_GLITZ_AGL_SURFACE, 1, [define if glitz backend can be tested against agl]) fi if test "x$have_glitz_egl" = "xyes";then AC_DEFINE(CAIRO_CAN_TEST_GLITZ_EGL_SURFACE, 1, [define if glitz backend can be tested against egl]) fi if test "x$have_glitz_glx" = "xyes";then AC_DEFINE(CAIRO_CAN_TEST_GLITZ_GLX_SURFACE, 1, [define if glitz backend can be tested against glx]) fi if test "x$have_glitz_wgl" = "xyes";then AC_DEFINE(CAIRO_CAN_TEST_GLITZ_WGL_SURFACE, 1, [define if glitz backend can be tested against wgl]) fi fi AM_CONDITIONAL(CAIRO_CAN_TEST_GLITZ_AGL_SURFACE, test "x$have_glitz_agl" = "xyes") AM_CONDITIONAL(CAIRO_CAN_TEST_GLITZ_EGL_SURFACE, test "x$have_glitz_egl" = "xyes") AM_CONDITIONAL(CAIRO_CAN_TEST_GLITZ_GLX_SURFACE, test "x$have_glitz_glx" = "xyes") AM_CONDITIONAL(CAIRO_CAN_TEST_GLITZ_WGL_SURFACE, test "x$have_glitz_wgl" = "xyes") AM_CONDITIONAL(CAIRO_HAS_GLITZ_SURFACE, test "x$use_glitz" = "xyes") if test "x$use_glitz" = "xyes"; then GLITZ_SURFACE_FEATURE="#define CAIRO_HAS_GLITZ_SURFACE 1" fi AC_SUBST(GLITZ_SURFACE_FEATURE) CAIRO_CFLAGS="$CAIRO_CFLAGS $GLITZ_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $GLITZ_LIBS" AC_SUBST(GLITZ_REQUIRES) dnl =========================================================================== AC_ARG_ENABLE(directfb, [ --enable-directfb Enable cairo's directfb backend], [use_directfb=$enableval], [use_directfb=no]) if test "x$use_directfb" = "xyes"; then PKG_CHECK_MODULES(DIRECTFB, directfb, [use_directfb=yes], [ use_directfb="no (requires directfb http://www.directfb.org)"]) fi AM_CONDITIONAL(CAIRO_HAS_DIRECTFB_SURFACE, test "x$use_directfb" = "xyes") if test "x$use_directfb" = "xyes"; then DIRECTFB_SURFACE_FEATURE="#define CAIRO_HAS_DIRECTFB_SURFACE 1" fi AC_SUBST(DIRECTFB_SURFACE_FEATURE) CAIRO_CFLAGS="$CAIRO_CFLAGS $DIRECTFB_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $DIRECTFB_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]) _CHECK_FUNCS_WITH_FLAGS(FcFini, $FONTCONFIG_CFLAGS, $FONTCONFIG_LIBS) fi CAIRO_CFLAGS="$CAIRO_CFLAGS $FONTCONFIG_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $FONTCONFIG_LIBS" # We use pkg-config to look for freetype2, but fall back to # freetype-config if it fails. We prefer pkg-config, since we can # then just put freetype2 >= $FREETYPE_MIN_VERSION in # Requires.private, but at least up to 2003-06-07, there was no # freetype2.pc in the release. # # Freetype versions come in three forms: # release (such as 2.1.5) # libtool (such as 9.4.3) (returned by freetype-config and pkg-config) # platform-specific/soname (such as 6.3.4) # and they recommend you never use the platform-specific version # (see docs/VERSION.DLL in freetype2 sources) # # Set these as appropriate: # release number - for information only FREETYPE_MIN_RELEASE=2.1.0 # libtool-specific version - this is what is checked FREETYPE_MIN_VERSION=8.0.2 if test "x$use_freetype" = "xyes"; then PKG_CHECK_MODULES(FREETYPE, freetype2 >= $FREETYPE_MIN_VERSION, [freetype_pkgconfig=yes], [freetype_pkgconfig=no]) if test "x$freetype_pkgconfig" = "xyes"; then FREETYPE_REQUIRES="freetype2 >= $FREETYPE_MIN_VERSION fontconfig" else if test -z "$FREETYPE_CONFIG"; then AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) fi if test "$FREETYPE_CONFIG" = "no" ; then AC_MSG_WARN([No freetype-config script found in path or FREETYPE_CONFIG]) use_freetype=no else 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_RESULT($FREETYPE_VERSION - Too old) AC_MSG_WARN([$FREETYPE_VERSION - version $FREETYPE_MIN_VERSION from release $FREETYPE_MIN_RELEASE required]) use_freetype=no else AC_MSG_RESULT($FREETYPE_VERSION - OK) FREETYPE_CONFIG_CFLAGS=`$FREETYPE_CONFIG --cflags` FREETYPE_CONFIG_LIBS=`$FREETYPE_CONFIG --libs` FREETYPE_CFLAGS=$FREETYPE_CONFIG_CFLAGS FREETYPE_LIBS=$FREETYPE_CONFIG_LIBS FREETYPE_REQUIRES=fontconfig fi fi fi fi have_ft_load_sfnt_table=no if test "x$use_freetype" = "xyes"; then AC_SUBST(FREETYPE_CFLAGS) AC_SUBST(FREETYPE_LIBS) AC_SUBST(FREETYPE_CONFIG_CFLAGS) AC_SUBST(FREETYPE_CONFIG_LIBS) AC_SUBST(FREETYPE_REQUIRES) temp_save_libs="$LIBS" temp_save_cflags="$CFLAGS" LIBS="$LIBS $FREETYPE_LIBS" CFLAGS="$CFLAGS $FREETYPE_CFLAGS" AC_CHECK_MEMBER(FT_Bitmap_Size.y_ppem, HAVE_FT_BITMAP_SIZE_Y_PPEM=1, HAVE_FT_BITMAP_SIZE_Y_PPEM=0, [#include #include FT_FREETYPE_H]) AC_DEFINE_UNQUOTED(HAVE_FT_BITMAP_SIZE_Y_PPEM,$HAVE_FT_BITMAP_SIZE_Y_PPEM, [FT_Bitmap_Size structure includes y_ppem field]) AC_CHECK_FUNC(FT_Load_Sfnt_Table, have_ft_load_sfnt_table=yes) AC_CHECK_FUNCS(FT_GlyphSlot_Embolden) LIBS="$temp_save_libs" CFLAGS="$temp_save_cflags" fi CAIRO_CFLAGS="$CAIRO_CFLAGS $FREETYPE_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $FREETYPE_LIBS" AM_CONDITIONAL(CAIRO_HAS_FT_FONT, test "x$use_freetype" = "xyes") if test "x$use_freetype" = "xyes"; then FT_FONT_FEATURE="#define CAIRO_HAS_FT_FONT 1" fi AC_SUBST(FT_FONT_FEATURE) dnl =========================================================================== AC_CHECK_HEADERS([pthread.h], have_pthread=yes, have_pthread=no) AM_CONDITIONAL(HAVE_PTHREAD, test "x$have_pthread" = "xyes") dnl =========================================================================== AC_ARG_ENABLE(ps, [ --disable-ps Disable cairo's PostScript backend], [use_ps=$enableval], [use_ps=yes]) if test x"$have_ft_load_sfnt_table" != "xyes" ; then AC_MSG_WARN([PS backend requires FreeType 2.1.4 or newer, disabling]) use_ps=no fi # The postscript module requires zlib. AC_CHECK_LIB(z, compress, [AC_CHECK_HEADER(zlib.h, [], [use_ps="no (requires zlib http://www.gzip.org/zlib/)"])], [use_ps="no (requires zlib http://www.gzip.org/zlib/)"]) AM_CONDITIONAL(CAIRO_HAS_PS_SURFACE, test "x$use_ps" = "xyes") if test "x$use_ps" = "xyes"; then PS_SURFACE_FEATURE="#define CAIRO_HAS_PS_SURFACE 1" PS_LIBS=-lz fi AC_SUBST(PS_SURFACE_FEATURE) CAIRO_LIBS="$CAIRO_LIBS $PS_LIBS" AC_SUBST(PS_LIBS) dnl =========================================================================== AC_ARG_ENABLE(pdf, [ --disable-pdf Disable cairo's PDF backend], [use_pdf=$enableval], [use_pdf=yes]) if test x"$have_ft_load_sfnt_table" != "xyes" ; then AC_MSG_WARN([PDF backend requires FreeType 2.1.4 or newer, disabling]) use_pdf=no fi test_pdf=no AM_CONDITIONAL(CAIRO_HAS_PDF_SURFACE, test "x$use_pdf" = "xyes") if test "x$use_pdf" = "xyes"; then PDF_SURFACE_FEATURE="#define CAIRO_HAS_PDF_SURFACE 1" PDF_LIBS=-lz PKG_CHECK_MODULES(POPPLER, poppler-glib >= 0.4.1 pango gtk+-2.0, [test_pdf=yes], [test_pdf=no]) if test "x$test_pdf" = "xyes"; then AC_DEFINE([CAIRO_CAN_TEST_PDF_SURFACE], 1, [Define to 1 if the PDF backend can be tested (need poppler and other dependencies for pdf2png)]) else AC_MSG_WARN([PDF backend will not be tested since poppler is not available]) fi fi AC_SUBST(PDF_SURFACE_FEATURE) AM_CONDITIONAL(CAIRO_CAN_TEST_PDF_SURFACE, test "x$test_pdf" = "xyes") AC_SUBST(POPPLER_CFLAGS) AC_SUBST(POPPLER_LIBS) AM_CONDITIONAL(CAIRO_HAS_MULTI_PAGE_SURFACES, test "x$use_ps" = "xyes" -o "x$use_pdf" = "xyes") CAIRO_LIBS="$CAIRO_LIBS $PDF_LIBS" AC_SUBST(PDF_LIBS) dnl =========================================================================== AC_ARG_ENABLE(svg, [ --enable-svg Enable cairo's SVG backend], [use_svg=$enableval], [use_svg=no]) if test x"$have_ft_load_sfnt_table" != "xyes" ; then AC_MSG_WARN([SVG backend requires FreeType 2.1.4 or newer, disabling]) use_svg=no fi if test "x$use_svg" = "xyes" ; then use_svg=no if $PKG_CONFIG --exists libxml-2.0 ; then # Sets XML_CFLAGS, XML_LIBS PKG_CHECK_MODULES(XML, libxml-2.0) use_svg=yes else AC_MSG_WARN([SVG requires libxml2, which is not found in pkg-config search path, disabling]) fi fi AM_CONDITIONAL(CAIRO_HAS_SVG_SURFACE, test "x$use_svg" = "xyes") if test "x$use_svg" = "xyes"; then SVG_SURFACE_FEATURE="#define CAIRO_HAS_SVG_SURFACE 1" PKG_CHECK_MODULES(LIBRSVG, librsvg-2.0 gdk-2.0, [test_svg=yes], [test_svg=no]) if test "x$test_svg" = "xyes"; then AC_DEFINE([CAIRO_CAN_TEST_SVG_SURFACE], 1, [Define to 1 if the SVG backend can be tested (need librsvg)]) else AC_MSG_WARN([SVG backend will not be tested since a librsvg is not available]) fi fi AC_SUBST(SVG_SURFACE_FEATURE) AM_CONDITIONAL(CAIRO_CAN_TEST_SVG_SURFACE, test "x$test_svg" = "xyes") AC_SUBST(LIBRSVG_CFLAGS) AC_SUBST(LIBRSVG_LIBS) CAIRO_CFLAGS="$CAIRO_CFLAGS $XML_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $XML_LIBS" 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, [ --enable-atsui Enable cairo's atsui font backend], [use_atsui=$enableval], [use_atsui=no]) if test "x$use_atsui" = "xyes"; then dnl There is no pkgconfig for atsui; lets do a header check AC_CHECK_HEADER(Carbon/Carbon.h, [use_atsui=yes], [use_atsui=no]) fi AM_CONDITIONAL(CAIRO_HAS_ATSUI_FONT, test "x$use_atsui" = "xyes") if test "x$use_atsui" = "xyes"; then ATSUI_FONT_FEATURE="#define CAIRO_HAS_ATSUI_FONT 1" fi AC_SUBST(ATSUI_FONT_FEATURE) dnl =========================================================================== dnl Checks for precise integer types AC_CHECK_HEADERS([stdint.h inttypes.h sys/int_types.h]) AC_CHECK_TYPES([uint64_t, uint128_t]) dnl Use lots of warning flags with GCC WARN_CFLAGS="" if test "x$GCC" = "xyes"; then WARN_CFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes \ -Wmissing-prototypes -Wmissing-declarations \ -Wnested-externs -fno-strict-aliasing" fi CAIRO_CFLAGS="$CAIRO_CFLAGS $WARN_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS" AC_SUBST(CAIRO_CFLAGS) AC_SUBST(CAIRO_LIBS) dnl =========================================================================== dnl Check for gtk-doc and docbook GTK_DOC_CHECK([1.3]) dnl =========================================================================== dnl Check for recent pkg-config which supports Requires.private case `$PKG_CONFIG --version` in 0.?|0.1[0-7]) PKGCONFIG_REQUIRES="Requires"; ;; *) PKGCONFIG_REQUIRES="Requires.private"; ;; esac AC_SUBST(PKGCONFIG_REQUIRES) dnl =========================================================================== dnl Check for MMX MMX_CFLAGS="-mmmx -Winline --param inline-unit-growth=10000 --param large-function-growth=10000" have_mmx_intrinsics=no AC_MSG_CHECKING(For MMX/SSE intrinsics in the compiler) xserver_save_CFLAGS=$CFLAGS CFLAGS="$CFLAGS $MMX_CFLAGS" AC_COMPILE_IFELSE([ #if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)) #error "Need GCC >= 3.4 for MMX intrinsics" #endif #include int main () { __m64 v = _mm_cvtsi32_si64 (1); __m64 w = _mm_slli_si64 (v, 1); v = _mm_or_si64 (v, w); return _mm_cvtsi64_si32 (v); }], have_mmx_intrinsics=yes) CFLAGS=$xserver_save_CFLAGS AC_MSG_RESULT($have_mmx_intrinsics) if test $have_mmx_intrinsics = yes ; then AC_DEFINE(USE_MMX, 1, [use MMX compiler intrinsics]) else MMX_CFLAGS= fi AC_SUBST(MMX_CFLAGS) AM_CONDITIONAL(USE_MMX, test $have_mmx_intrinsics = yes) dnl =========================================================================== AC_ARG_ENABLE(gcov, [ --enable-gcov Enable gcov], [use_gcov=$enableval], [use_gcov=no]) if test "x$use_gcov" = "xyes"; then dnl we need gcc: if test "$GCC" != "yes"; then AC_MSG_ERROR([GCC is required for --enable-gcov]) fi dnl Check if ccache is being used case `shtool path $CC` in *ccache*[)] gcc_ccache=yes;; *[)] gcc_ccache=no;; esac if test "$gcc_ccache" = "yes" && (test -z "$CCACHE_DISABLE" || test "$CCACHE_DISABLE" != "1"); then AC_MSG_ERROR([ccache must be disabled when --enable-gcov option is used. You can disable ccache by setting environment variable CCACHE_DISABLE=1.]) fi ltp_version_list="1.4" AC_CHECK_PROG(LTP, lcov, lcov) AC_CHECK_PROG(LTP_GENHTML, genhtml, genhtml) if test "$LTP"; then AC_CACHE_CHECK([for ltp version], cairo_cv_ltp_version, [ cairo_cv_ltp_version=invalid ltp_version=`$LTP -v 2>/dev/null | $SED -e 's/^.* //'` for ltp_check_version in $ltp_version_list; do if test "$ltp_version" = "$ltp_check_version"; then cairo_cv_ltp_version="$ltp_check_version (ok)" fi done ]) else ltp_msg="To enable code coverage reporting you must have one of the following LTP versions installed: $ltp_version_list" AC_MSG_ERROR([$ltp_msg]) fi case $cairo_cv_ltp_version in ""|invalid[)] ltp_msg="You must have one of the following versions of LTP: $ltp_version_list (found: $ltp_version)." AC_MSG_ERROR([$ltp_msg]) LTP="exit 0;" ;; esac if test -z "$LTP_GENHTML"; then AC_MSG_ERROR([Could not find genhtml from the LTP package]) fi AC_DEFINE(HAVE_GCOV, 1, [Whether you have gcov]) dnl PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/Makefile.gcov, $abs_srcdir) dnl Remove all optimization flags from CFLAGS changequote({,}) CAIRO_CFLAGS=`echo "$CAIRO_CFLAGS" | $SED -e 's/-O[0-9]*//g'` changequote([,]) dnl Add the special gcc flags CAIRO_CFLAGS="$CAIRO_CFLAGS -O0 -fprofile-arcs -ftest-coverage" fi dnl =========================================================================== AC_ARG_ENABLE(test-surfaces, [ --enable-test-surfaces Add backends for more test suite coverage (no additional public functionality)], [use_test_surfaces=$enableval], [use_test_surfaces=no]) AM_CONDITIONAL(CAIRO_HAS_TEST_SURFACES, test "x$use_test_surfaces" = "xyes") if test "x$use_test_surfaces" = "xyes"; then AC_DEFINE(CAIRO_HAS_TEST_SURFACES, 1, [define in the extra test surface have been built into cairo for the test suite]) fi dnl =========================================================================== AC_OUTPUT([ cairo.pc Makefile pixman/Makefile pixman/src/Makefile src/Makefile src/cairo-features.h test/Makefile doc/Makefile doc/public/Makefile doc/public/version.xml ]) dnl =========================================================================== echo "" echo "cairo will be compiled with the following surface backends:" echo " image: yes (always builtin)" echo " Xlib: $use_xlib" echo " Quartz: $use_quartz" echo " XCB: $use_xcb" echo " Win32: $use_win32" echo " PostScript: $use_ps" echo " PDF: $use_pdf" echo " SVG: $use_svg" echo " glitz: $use_glitz" echo " BeOS: $use_beos" echo " DirectFB: $use_directfb" echo "" echo "the following font backends:" echo " FreeType: $use_freetype" echo " Win32: $use_win32" echo " ATSUI: $use_atsui" echo "" echo "the following features:" echo " PNG functions: $use_png" echo "" echo "and the following debug options:" echo " gcov support: $use_gcov" echo " test surfaces: $use_test_surfaces" echo "" echo "using CFLAGS:" echo $CAIRO_CFLAGS echo "" if test x"$use_freetype" != "xyes" && \ test x"$use_win32" != "xyes" && \ test x"$use_atsui" != "xyes" ; then AC_MSG_ERROR([Cairo requires at least one font backend. Please install freetype and fontconfig, then try again: http://freetype.org/ http://fontconfig.org/ ]) fi WARNING_MESSAGE=' *** The @@BACKEND@@ backend is still under active development and *** is included in this release only as a preview. It does not *** fully work yet and incompatible changes may yet be made *** to @@BACKEND@@-backend specific API. ' if test x"$use_glitz" = "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/Glitz/' fi if test x"$use_xcb" = "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/XCB/' fi if test x"$use_quartz" = "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/Quartz/' fi if test x"$use_quartz" = "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/ATSUI/' fi if test x"$use_beos" = "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/BeOS/' fi if test x"$use_directfb" == "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/DirectFB/' fi @ 1.161 log @New directfb backend for cairo includes test suite and example to run the test is in the comment at the top of cairo-test-directfb.c enable with --enable-directfb @ text @d518 2 @ 1.160 log @2005-12-19 Emmanuel Pacaud * configure.in: CAIRO_CAN_TEST_SVG_SURFACE depends on librsvg. * src/cairo-svg-surface.c: cairo_svg_surface_t owns a xml node, for support of svg_surface_composite. (_cairo_svg_surface_create_for_document): init xml_node. All surfaces except first one are stored in defs node. (emit_composite_image_pattern): returns pattern size, and don't call emit_transform if is_pattern == TRUE. (emit_composite_svg_pattern): do something. (emit_composite_pattern): returns pattern size. (_cairo_svg_surface_composite): xml_node is stored in cairo_svg_surface_t now. (emit_surface_pattern): emit surface pattern width here. Fix property names. (_cairo_svg_path_close_path): don't close path if no current point. (_cairo_svg_surface_fill_rectangles): new. (_cairo_svg_surface_fill): emit fill rule. xml_node is in surface now. (_cairo_svg_surface_composite_trapezoids): xml_node is in surface now. (_cairo_svg_surface_stroke): ditto. (_cairo_svg_surface_intersect_clip_path): ditto. Emit fill rule. * test/.cvsignore: ignore svg2png. * test/Makefile.am: build svg2png utility. * test/cairo-test.c (create_svg_surface): new. (svg_surface_write_to_png): new. (cleanup_svg): new. (cairo_test_expecting): test SVG backend if CAIRO_HAS_SVG_SURFACE && CAIRO_CAN_TEST_SVG_SURFACE. * test/svg2png.c: new. @ text @d325 20 d756 1 d810 4 @ 1.159 log @2005-12-19 Christian Biesinger * configure.in: * src/cairo-beos-surface.cpp: Some final changes to the beos backend before checkin were wrong, fixing. @ text @d527 6 d536 4 @ 1.158 log @2005-12-19 Christian Biesinger * INSTALL: Mention new --enable-svg option * README: Add notes for the new BeOS backend * configure.in: Add disabled by default BeOS backend * src/Makefile.am: Add BeOS files * src/cairo-beos-surface.cpp: New * src/cairo-beos.h: New * src/cairo-features.h.in: BEOS_SURFACE_FEATURE * src/cairoint.h: BeOS mutex functions * test/.cvsignore: Ignore files generates by the BeOS tests * test/Makefile.am: Add cairo-test-beos.* * test/cairo-test-beos.cpp: New. (Must be a C++ file, hence not part of cairo-test.c) * test/cairo-test-beos.h: New. * test/cairo-test.c: (cairo_test_expecting): Test BeOS backend. @ text @d215 1 a215 1 # use_beos=no @ 1.157 log @2005-12-17 Christian Biesinger * configure.in: make the SVG backend freetype message actually mention SVG rather than PDF. @ text @d193 40 d725 1 d776 3 @ 1.156 log @ 2005-12-16 Carl Worth * configure.in: Add a new option --enable-test-surfaces. * src/Makefile.am: * src/test-fallback-surface.h: * src/test-fallback-surface.c: (_test_fallback_surface_create), (_test_fallback_surface_create_for_data), (_test_fallback_surface_create_similar), (_test_fallback_surface_finish), (_test_fallback_surface_acquire_source_image), (_test_fallback_surface_release_source_image), (_test_fallback_surface_acquire_dest_image), (_test_fallback_surface_release_dest_image), (_test_fallback_surface_get_extents): New surface backend for testing only. It has as many NULL backend entries as possible. * test/Makefile.am: * test/cairo-test.c: (create_test_fallback_surface), (cleanup_test_fallback), (cairo_test_expecting): Add support to test the new test_fallback backend. @ text @d469 1 a469 1 AC_MSG_WARN([PDF backend requires FreeType 2.1.4 or newer, disabling]) @ 1.155 log @ 2005-12-15 Carl Worth * configure.in: Make poppler check require poppler >= 0.4.1. @ text @d584 2 a585 2 [ --enable-gcov Enable gcov], [use_gcov=$enableval], [use_gcov=no]) d648 11 d676 1 d696 2 d700 1 @ 1.154 log @ 2005-12-14 Carl Worth * configure.in: Add preliminary support for --enable-gcov. Thanks to Pierre-Alain Joye (with inspiration from the PHP gcov support by Jani Taskinen and Ilia Alshanetsky). * src/.cvsignore: * test/.cvsignore: Ignore *.gcda and *.gcno gcov data files. @ text @d445 1 a445 1 PKG_CHECK_MODULES(POPPLER, poppler-glib pango gtk+-2.0, [test_pdf=yes], [test_pdf=no]) @ 1.153 log @2005-12-12 Vladimir Vukicevic * configure.in: bump glitz req to 0.5.1, test for backends * test/cairo-test.c: Add glitz backend (original patches from sunmoon1997@@gmail.com), including glx, wgl, and agl support. Add CAIRO_TEST_TARGET environment variable for limiting backends to test. * test/make-html.pl: Takes all *.log files and spits out html to stdout that can be used to view all test results at once. @ text @d91 2 a92 2 [ --disable-xlib Disable cairo's Xlib backend], [use_xlib=$enableval], [use_xlib=yes]) d583 65 d679 1 a679 1 echo "and the following features:" d681 5 @ 1.152 log @2005-12-08 Emmanuel Pacaud * configure.in: add optionnal disabled by default SVG backend. * src/Makefile.am: include SVG backend files. * src/cairo-features.h.in: include SVG_SURFACE_FEATURE. * src/cairo-output-stream.c: rename dtostr to _cairo_dtostr for use in cairo-svg-surface.c. * src/cairoint.h: _cairo_dtostr declaration. * src/cairo-svg.h: new. * src/cairo-svg-surface.c: new. * test/Makefile.am: build svg-surface and svg-clip. * test/svg-surface.c: new. * test/svg-surface.h: new. @ text @d238 1 a238 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.5.0, [ d243 29 @ 1.151 log @ 2005-12-07 Carl Worth * configure.in: Add checks for poppler and friends which are needed by pdf2png. Set CAIRO_CAN_TEST_PDF_SURFACE as both a #define and an automake conditional. * test/Makefile.am: Build pdf2png if possible. * test/cairo-test.c: (create_pdf_surface), (pdf_surface_write_to_png), (cleanup_pdf), (cairo_test_expecting): Add support for testing the PDF backend. * test/pdf2png.c: (main): New utility program to convert a PDF file into a PNG image using poppler (thanks to Kristian Høgsberg). * test/.cvsignore: Ignore new stuff generated by PDF backend testing. @ text @d435 31 d571 4 a574 4 echo " Xlib: $use_xlib" echo " Quartz: $use_quartz" echo " XCB: $use_xcb" echo " Win32: $use_win32" d576 3 a578 2 echo " PDF: $use_pdf" echo " glitz: $use_glitz" d581 3 a583 3 echo " FreeType: $use_freetype" echo " Win32: $use_win32" echo " ATSUI: $use_atsui" @ 1.150 log @ 2005-12-07 Carl Worth * configure.in: Use more portable shell syntax, ('test =' rather than 'test =='). Thanks to Richard Lloyd and Klaus Heinz. Closes bug #4823. @ text @d411 1 d416 6 d425 4 @ 1.149 log @ 2005-10-13 Carl Worth Reviewed by: otaylor * configure.in: Increment libtool versioning to 5:0:3 in anticipation of 1.2.0 which will add interfaces. The motivation for this is to make the 1.1.1 release install a library which will be considered newer than 1.0.2. * Makefile.am: Add a release-verify-soname-major check to verify that the soname major number is always 2 as part of the release-publish target. @ text @d562 1 a562 1 if test x"$use_glitz" == "xyes" ; then d566 1 a566 1 if test x"$use_xcb" == "xyes" ; then d570 1 a570 1 if test x"$use_quartz" == "xyes" ; then d574 1 a574 1 if test x"$use_quartz" == "xyes" ; then @ 1.148 log @ 2005-10-08 Carl Worth * configure.in: Enable PS and PDF backends by default, (in preparation for 1.2.0) @ text @d22 1 a22 1 LT_CURRENT=4 d26 1 a26 1 LT_REVISION=2 d31 1 a31 1 LT_AGE=2 @ 1.147 log @ 2005-10-08 Carl Worth * configure.in: Fix typo leading to truncated error message (Christian Biesinger ). @ text @d375 2 a376 2 [ --enable-ps Enable cairo's PostScript backend], [use_ps=$enableval], [use_ps=no]) d403 2 a404 2 [ --enable-pdf Enable cairo's PDF backend], [use_pdf=$enableval], [use_pdf=no]) a577 7 if test x"$use_pdf" == "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/PDF/' fi if test x"$use_ps" == "xyes" ; then echo "$WARNING_MESSAGE" | sed 's/@@BACKEND@@/PostScript/' fi @ 1.146 log @2005-10-04 Anders Carlsson * configure.in: Invoke PKG_PROG_PKG_CONFIG so $PKG_CONFIG will be set early on. @ text @d222 1 a222 1 AC_MSG_WARN("*** To run the tests, cairo must be built with png support ***) @ 1.145 log @ * configure.in: Fix the MMX test to only check for MMX intrinsics and not the SSE intrinsics. @ text @d86 4 @ 1.144 log @ Bug #4414, reviewed by otaylor, cworth. * configure.in: Remove -msse from the MMX CFLAGS as it causes gcc to emit SSE instructions, however the detection code only checks for processors supporting MMX and does not require SSE. @ text @a487 1 #include d490 2 a491 1 v = _mm_shuffle_pi16 (v, _MM_SHUFFLE(3, 3, 3, 3)); @ 1.143 log @Track changes to glitz and update glyph caching in glitz backend @ text @d477 1 a477 1 MMX_CFLAGS="-mmmx -msse -Winline --param inline-unit-growth=10000 --param large-function-growth=10000" @ 1.142 log @ 2005-09-12 Carl Worth Fix for bug #4401 as reported by Tim Mooney: * configure.in: Don't bother checking for sincos function. * src/cairo-matrix.c: (cairo_matrix_init_rotate): Don't use sincos function since it is apparently buggy on some platforms, (Tru64 at least). @ text @d234 1 a234 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.4.4, [ @ 1.141 log @ 2005-08-31 Carl Worth * configure.in: Increment CAIRO_VERSION to 1.1.1 after making branch tag BRANCH_1_0. @ text @a83 2 AC_CHECK_FUNCS(sincos) @ 1.140 log @ 2005-08-24 Carl Worth * configure.in: Increment CAIRO_VERSION to 1.0.1 after tagging RELEASE_1_0_0. @ text @d7 1 a7 1 m4_define(cairo_version_minor, 0) @ 1.140.2.1 log @ 2005-09-12 Carl Worth Fix for bug #4401 as reported by Tim Mooney: * configure.in: Don't bother checking for sincos function. * src/cairo-matrix.c: (cairo_matrix_init_rotate): Don't use sincos function since it is apparently buggy on some platforms, (Tru64 at least). @ text @d84 2 @ 1.140.2.2 log @ Bug #4414, reviewed by otaylor, cworth. * configure.in: Remove -msse from the MMX CFLAGS as it causes gcc to emit SSE instructions, however the detection code only checks for processors supporting MMX and does not require SSE. Fix the MMX test to only check for MMX intrinsics and not the SSE intrinsics. @ text @d477 1 a477 1 MMX_CFLAGS="-mmmx -Winline --param inline-unit-growth=10000 --param large-function-growth=10000" d488 1 d491 1 a491 2 __m64 w = _mm_slli_si64 (v, 1); v = _mm_or_si64 (v, w); @ 1.140.2.3 log @ 2005-10-03 Carl Worth * configure.in: Increment CAIRO_VERSION to 1.0.2 and libtool versioning to 4:3:2. * NEWS: Add notes for the 1.0.2 release. @ text @d8 1 a8 1 m4_define(cairo_version_micro, 2) d26 1 a26 1 LT_REVISION=3 @ 1.140.2.4 log @ 2005-10-03 Carl Worth * configure.in: Increment CAIRO_VERSION to 1.0.3 after tagging RELEASE_1_0_2. @ text @d8 1 a8 1 m4_define(cairo_version_micro, 3) @ 1.140.2.5 log @2005-10-04 Anders Carlsson * configure.in: Invoke PKG_PROG_PKG_CONFIG so $PKG_CONFIG will be set early on. @ text @a85 4 PKG_PROG_PKG_CONFIG dnl =========================================================================== @ 1.140.2.6 log @ 2005-10-08 Carl Worth * configure.in: Fix typo leading to truncated error message (Christian Biesinger ). @ text @d222 1 a222 1 AC_MSG_WARN([*** To run the tests, cairo must be built with png support ***]) @ 1.140.2.7 log @ 2005-12-07 Carl Worth * configure.in: Use more portable shell syntax, ('test =' rather than 'test =='). Thanks to Richard Lloyd and Klaus Heinz. Closes bug #4823. @ text @d562 1 a562 1 if test x"$use_glitz" = "xyes" ; then d566 1 a566 1 if test x"$use_xcb" = "xyes" ; then d570 1 a570 1 if test x"$use_quartz" = "xyes" ; then d574 1 a574 1 if test x"$use_quartz" = "xyes" ; then d578 1 a578 1 if test x"$use_pdf" = "xyes" ; then d582 1 a582 1 if test x"$use_ps" = "xyes" ; then @ 1.139 log @ 2005-08-24 Carl Worth * configure.in: Increment CAIRO_VERSION to 1.0.0 and libtool versioning to 4:2:2. @ text @d8 1 a8 1 m4_define(cairo_version_micro, 0) @ 1.138 log @ 2005-08-24 Carl Worth * INSTALL: Put glitz in the experimental section. * configure.in: Give glitz the experimental treatment, (disable it by default. @ text @d6 3 a8 3 m4_define(cairo_version_major, 0) m4_define(cairo_version_minor, 9) m4_define(cairo_version_micro, 3) d22 1 a22 1 LT_CURRENT=3 d26 1 a26 1 LT_REVISION=1 d31 1 a31 1 LT_AGE=1 @ 1.137 log @2005-08-24 Carl Worth * configure.in: Disable ATSUI by default as well. @ text @d232 2 a233 2 [ --disable-glitz Disable cairo's glitz backend], [use_glitz=$enableval], [use_glitz=yes]) d560 4 @ 1.136 log @ 2005-08-24 Carl Worth * configure.in: Give PostScript and PDF backends the experimental treatment, disabling them by default. @ text @d426 2 a427 2 [ --disable-atsui Disable cairo's atsui font backend], [use_atsui=$enableval], [use_atsui=yes]) d568 4 @ 1.135 log @2005-08-23 Owen Taylor * configure.in: Reverse the help text for --enable-xcb, --enable-quartz. @ text @d373 2 a374 2 [ --disable-ps Disable cairo's PostScript backend], [use_ps=$enableval], [use_ps=yes]) d401 2 a402 2 [ --disable-pdf Disable cairo's PDF backend], [use_pdf=$enableval], [use_pdf=yes]) d567 8 @ 1.134 log @2005-08-23 Owen Taylor * configure.in: Disable XCB and Quartz backends unless explicitely enabled. Add a big warning message if they are enabled about bugs and API instability. @ text @d117 1 a117 1 [ --disable-quartz Disable cairo's quartz backend], d136 1 a136 1 [ --disable-xcb Disable cairo's XCB backend], d168 1 a168 1 [ --disable-win32 Disable cairo's Microsoft Windows backend], @ 1.133 log @2005-08-22 Tor Lillqvist * configure.in: Calculate LT_CURRENT_MINUS_AGE (which forms part of the DLL name on Win32), and AC_SUBST it. * Makefile.am: Add target "zips" to create zip file based distribution for Win32. * src/Makefile.am: Produce a cairo.def file for distribution by preprocessing the relevant header files and grepping for declarations of functions that start with cairo_. Works for now, will have to modify later if necessary. Use the .def file when linking on Win32. @ text @d118 1 a118 1 [use_quartz=$enableval], [use_quartz=yes]) d137 1 a137 1 [use_xcb=$enableval], [use_xcb=yes]) d552 15 @ 1.132 log @2005-08-22 Owen Taylor Support artificial bold fonts with FC_EMBOLDEN; patch from Jackey Yang and sunmoon1997. * configure.in: Check for FT_GlyphSlot_Embolden() * src/cairo-ft-font.c: Call FT_GlyphSlot_Embolden for fonts where FC_EMBOLDEN is set but that aren't bold. Add another private flag for this. @ text @d37 4 @ 1.131 log @2005-08-21 Owen Taylor * configure.in: Check for FT_Load_Sfnt_Table and disable the PDF/PS backends if not found. (#4144, Billy Biggs) @ text @d346 1 @ 1.130 log @2005-08-18 Owen Taylor Reviewed by: krh * configure.in: Fix tests to just disable FreeType if a too-old FreeType is found, rather than erroring out. (#2298) @ text @d324 2 d344 3 d371 2 a372 2 if test x"$use_freetype" != "xyes" ; then AC_MSG_WARN([PS backend requires FreeType, disabling]) d399 2 a400 2 if test x"$use_freetype" != "xyes" ; then AC_MSG_WARN([PDF backend requires FreeType, disabling]) @ 1.129 log @ * doc/public/version.xml.in: Add an autoconf-generated version file to advertise what cairo version the manual was generated for. Idea taken from the GTK+ documentation. * doc/public/cairo-docs.xml: Include the version number, along with the title, in a bookinfo section. * doc/public/Makefile.am: Add the version.xml.in to the dist. * doc/public/.cvsignore: Ignore version.xml. * configure.in: Generate doc/public/version.xml. @ text @d298 4 a301 4 AC_MSG_ERROR(No freetype-config script found in path or FREETYPE_CONFIG) fi AC_MSG_CHECKING(freetype2 libtool version) d303 1 a303 1 FREETYPE_VERSION=`$FREETYPE_CONFIG --version` d305 15 a319 4 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) a320 7 AC_MSG_RESULT($FREETYPE_VERSION - OK) FREETYPE_CONFIG_CFLAGS=`$FREETYPE_CONFIG --cflags` FREETYPE_CONFIG_LIBS=`$FREETYPE_CONFIG --libs` FREETYPE_CFLAGS=$FREETYPE_CONFIG_CFLAGS FREETYPE_LIBS=$FREETYPE_CONFIG_LIBS FREETYPE_REQUIRES=fontconfig d322 1 d324 1 @ 1.128 log @2005-08-18 Kristian Høgsberg * configure.in: Fix typo in freetype configure check. @ text @d504 1 @ 1.127 log @2005-08-17 Kristian Høgsberg * configure.in: Try to use pkg-config to detect freetype2, then fall back to the existing freetype-config based check. @ text @d314 1 a314 1 FREETYPE_CFLAGS=$FREETYPE_CONFIG_FLAGS @ 1.126 log @ * configure.in: Add a check for the MMX intrinsics used by pixman. gcc >= 3.4 is required. @ text @d263 5 a267 2 # Test for freetype2 separate from pkg-config since at least up to # 2003-06-07, there was no freetype2.pc in the release. d271 1 a271 1 # libtool (such as 9.4.3) (returned by freetype-config) d285 4 a288 6 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 d290 1 a290 1 AC_MSG_CHECKING(freetype2 libtool version) d292 1 a292 1 FREETYPE_VERSION=`$FREETYPE_CONFIG --version` d294 23 a316 4 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) a317 1 AC_MSG_RESULT($FREETYPE_VERSION - OK) a318 3 FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags` FREETYPE_LIBS=`$FREETYPE_CONFIG --libs` FREETYPE_REQUIRES=fontconfig d321 2 @ 1.125 log @ 2005-08-13 Carl Worth * configure.in: Increment CAIRO_VERSION to 0.9.3 after tagging RELEASE_0_9_2. * Makefile.am (release-publish): Slight rewording of announcement email. @ text @d442 34 @ 1.124 log @ 2005-08-13 Carl Worth * NEWS: Added notes for release 0.9.2. * configure.in: Increment CAIRO_VERSION to 0.9.2 and libtool versioning to 3:1:1. * RELEASING: Remove some more 'snapshot' language. Make it more clear that the libtool versioning numbers need to be updated. @ text @d8 1 a8 1 m4_define(cairo_version_micro, 2) @ 1.123 log @ 2005-08-13 Carl Worth * src/cairoint.h: Turn the mutex code back on. It looks like the deadlocks have disappeared as of the cairo_scaled_font_map patch from two days ago. * configure.in: Setup an automake conditional for the HAVE_PTHREAD case. * test/Makefile.am: Link all tests with -lpthread if available, so that we can get some testing of cairo with mutexes turned on. @ text @d8 1 a8 1 m4_define(cairo_version_micro, 1) d22 1 a22 1 LT_CURRENT=2 d26 1 a26 1 LT_REVISION=0 d31 1 a31 1 LT_AGE=0 @ 1.122 log @ 2005-08-10 Carl Worth From Keith Packard , Build pixman internally as a private part of cairo, with suitable name changes to avoid any visible pixman symbols in the cairo library: * Makefile.am: Descend into pixman. * cairo.pc.in: Drop libpixman from Requires. * configure.in: Don't check for libpixman. Check version of pkg-config and use Requires.private instead of Requires in cairo.pc if possible. Generate pixman Makefiles. * pixman/Makefile.am: Rip out release-publish target and installation of libpixman.pc. * pixman/src/Makefile.am: Add pixman-remap.h. Drop libpixman.la target. * pixman/src/icint.h: Fix to include config.h rather than ../config.h * pixman/src/pixman-remap.h: This is the cpp magic to rename all pixman functions from the various fb, Fb, INT_pixman, pixman, Render, _Render, or no prefix to _cairo_pixman_ prefixes. * pixman/src/pixman.h: Include pixman-remap.h to get all the cairo-internalized names. * src/Makefile.am: * test/Makefile.am: Add -Ipixman/src to get at pixman-remap.h. @ text @d333 2 a334 5 # # The FreeType backend uses pthread locking when avaialble # AC_CHECK_HEADERS([pthread.h]) @ 1.121 log @ 2005-08-10 Carl Worth Patch from Behdad Esfahbod : * configure.in: Update to use AC_INIT and AM_INIT_AUTOMAKE in recommended ways. Add support for substituting CAIRO_VERSION_MAJOR/MINOR/MICRO into generated headers. * src/cairo-features.h.in: Add CAIRO_VERSION_MAJOR/MINOR/MICRO and CAIRO_VERSION_STRING which are generated by configure. @ text @a249 6 PKG_CHECK_MODULES(PIXMAN, libpixman >= 0.1.5) CAIRO_CFLAGS="$CAIRO_CFLAGS $PIXMAN_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $PIXMAN_LIBS" dnl =========================================================================== d435 10 d448 2 @ 1.120 log @2005-08-09 Carl Worth * configure.in: Add -head to CAIRO_VERSION after tagging with RELEASE_0_9_0. @ text @d3 13 a15 1 AC_INIT(src/cairo.h) a18 3 # Package version number, (as distinct from shared library version) CAIRO_VERSION=0.9.0-head d33 2 d37 7 a43 5 dnl =========================================================================== AM_INIT_AUTOMAKE(cairo, $CAIRO_VERSION) AM_CONFIG_HEADER(config.h) @ 1.119 log @ 2005-08-08 Carl Worth * NEWS: Added notes for release 0.9.0. * configure.in: Increment CAIRO_VERSION to 0.9.0. Increment LT_CURRENT to 2 to mark the beginning of proper soname management. @ text @d8 1 a8 1 CAIRO_VERSION=0.9.0 @ 1.118 log @ 2005-08-03 Carl Worth Fix for bug #3951: * configure.in: Add new _CHECK_FUNCS_WITH_FLAGS to abstract out the pain of temporarily setting flags for AC_CHECK_FUNCS. Use this to check for the existence of FcFini. * test/cairo-test.c: (cairo_test_expecting): Make call to FcFini conditional on HAVE_FCFINI. * test/text-cache-crash.c: (main): Remove stale comment about cleaning up memory which is now handled by cairo-test.c. @ text @d8 1 a8 1 CAIRO_VERSION=0.6.0-head d13 1 a13 1 LT_CURRENT=1 @ 1.117 log @ 2005-08-01 Carl Worth * src/cairo-debug.h: New public header file. * src/cairo-debug.c: (cairo_debug_reset_static_data): New function to reset all static data (eg. caches) to their initial state. * Makefile.am: Fix check-valgrind target to depend on the 'all' target. * configure.in: Add check for a new, proposed, XrmFinalize function. * src/Makefile.am: Add cairo-debug.c. * src/cairo.h: * src/cairo-features.h.in: Move the definition of CAIRO_BEGIN_DECLS to cairo-features.h so that it can be shared between public header files, and so that it doesn't clutter cairo.h * src/cairoint.h: * src/cairo-font.c: (_get_global_simple_cache), (_get_outer_font_cache), (_get_inner_font_cache), (_cairo_unlock_global_image_glyph_cache), (_cairo_font_reset_static_data): * src/cairo-ft-font.c: (_cairo_ft_font_reset_static_data): * src/cairo-xlib-screen.c: (_cairo_xlib_close_display), (_cairo_xlib_screen_info_reset), (_cairo_xlib_screen_reset_static_data): * src/cairo-xlib-surface.c: (_unlock_xlib_glyphset_caches), (_destroy_glyphset_cache_recurse), (_cairo_xlib_surface_reset_static_data): Implement reset_static_data in all modules as required. * test/xlib-surface.c: (main): * test/cairo-test.h: * test/cairo-test.c: (cairo_test_for_target), (cairo_test_expecting): Call cairo_debug_reset_static_data and FcFini so that we can have all tests be valgrind-clean with respect to memory leaks and still-reachable data. @ text @d40 21 d85 1 a85 7 save_cflags="$CFLAGS" save_libs="$LIBS" CFLAGS="$CFLAGS $XRENDER_CFLAGS" LIBS="$LIBS $XRENDER_LIBS" AC_CHECK_FUNCS(XrmFinalize) CFLAGS="$save_cflags" LIBS="$save_libs" d250 1 @ 1.116 log @ reviewed by: keithp * src/cairo-ft-font.c: (_ft_unscaled_font_set_scale): Support versions of freetype without exact FT_Bitmap_Size.x/y_ppem values by using the pixel width and height values instead. * configure.in: Add a check for FT_Bitmap_Size.y_ppem. @ text @d64 7 @ 1.115 log @ * configure.in: Add -head to CAIRO_VERSION after tagging with SNAPSHOT_0_6_0. @ text @d276 14 @ 1.114 log @ * NEWS: Added notes for snapshot 0.6.0 * configure.in: Increment CAIRO_VERSION to 0.6.0 @ text @d8 1 a8 1 CAIRO_VERSION=0.6.0 @ 1.113 log @2005-07-28 Owen Taylor * configure.in Makefile.am: Skip tests/ directory if libpng was disabled. (#3423, reported by Steve Chaplin) @ text @d8 1 a8 1 CAIRO_VERSION=0.5.2-head @ 1.112 log @2005-07-28 Owen Taylor * configure.in: Disable PS surface build if no freetyp @ text @d180 2 @ 1.111 log @ * configure.in: Add -head to CAIRO_VERSION after tagging with SNAPSHOT_0_5_2. @ text @a153 23 AC_ARG_ENABLE(ps, [ --disable-ps Disable cairo's PostScript backend], [use_ps=$enableval], [use_ps=yes]) # The postscript module requires zlib. AC_CHECK_LIB(z, compress, [AC_CHECK_HEADER(zlib.h, [], [use_ps="no (requires zlib http://www.gzip.org/zlib/)"])], [use_ps="no (requires zlib http://www.gzip.org/zlib/)"]) AM_CONDITIONAL(CAIRO_HAS_PS_SURFACE, test "x$use_ps" = "xyes") if test "x$use_ps" = "xyes"; then PS_SURFACE_FEATURE="#define CAIRO_HAS_PS_SURFACE 1" PS_LIBS=-lz fi AC_SUBST(PS_SURFACE_FEATURE) CAIRO_LIBS="$CAIRO_LIBS $PS_LIBS" AC_SUBST(PS_LIBS) dnl =========================================================================== d295 28 @ 1.110 log @ * NEWS: Added notes for snapshot 0.5.2 * configure.in: Increment CAIRO_VERSION to 0.5.2 @ text @d8 1 a8 1 CAIRO_VERSION=0.5.2 @ 1.109 log @ * configure.in: Require libpixman >= 0.1.5, (since 0.1.4 crashes on some X servers). @ text @d8 1 a8 1 CAIRO_VERSION=0.5.1-head @ 1.108 log @Use frame buffer objects for accelerated offscreen drawing in glitz backend @ text @d236 1 a236 1 PKG_CHECK_MODULES(PIXMAN, libpixman >= 0.1.4) @ 1.107 log @2005-06-25 Keith Packard reviewed by: cworth * configure.in: * src/cairo-cache.c: (_cairo_cache_shrink_to), (_cairo_cache_lookup): * src/cairo-font.c: (_lock_global_simple_cache), (_unlock_global_simple_cache), (_lock_global_font_cache), (_unlock_global_font_cache), (_cairo_lock_global_image_glyph_cache), (_cairo_unlock_global_image_glyph_cache), (_cairo_get_global_image_glyph_cache): * src/cairo-ft-font.c: (_lock_global_ft_cache), (_unlock_global_ft_cache): * src/cairo-xlib-surface.c: (_xlib_glyphset_cache_create_entry), (_xlib_glyphset_cache_destroy_entry), (_lock_xlib_glyphset_caches), (_unlock_xlib_glyphset_caches), (_get_glyphset_cache), (_cairo_xlib_surface_show_glyphs): * src/cairoint.h: Provide locking macros, implement with pthreads. Add _cairo_cache_shrink_to which reduces cache memory usage to a specified level. Change global glyph and xlib glyphset caches behaviour to only shrink cache on unlock. This is done by telling the cache code to never shrink (max_memory == 0), and then manually shrinking using _cairo_cache_shrink_to from the unlock function. Fix Carl's variable renaming mixing (cache = cache). @ text @d218 1 a218 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.4.0, [ @ 1.106 log @ * configure.in: Add -head to CAIRO_VERSION after tagging with SNAPSHOT_0_5_1. @ text @d310 8 @ 1.105 log @ * NEWS: Added notes for snapshot 0.5.1 * configure.in: Increment CAIRO_VERSION to 0.5.1 @ text @d8 1 a8 1 CAIRO_VERSION=0.5.1 @ 1.104 log @ * configure.in: Add -head to CAIRO_VERSION after tagging with SNAPSHOT_0_5_0. @ text @d8 1 a8 1 CAIRO_VERSION=0.5.0-head @ 1.103 log @ * PORTING_GUIDE: Added porting guide to help with transition to cairo 0.5 API. * NEWS: Added notes for snapshot 0.5.0 * configure.in: Increment CAIRO_VERSION to 0.5.0 @ text @d8 1 a8 1 CAIRO_VERSION=0.5.0 @ 1.102 log @ * configure.in: Fix URLs for glitz and xlibs, (thanks to Jason Dorje Short ). @ text @d8 1 a8 1 CAIRO_VERSION=0.4.0-head @ 1.101 log @ * configure.in: Update to current canonical URL for XCB. @ text @d63 1 a63 1 use_xlib="no (requires Xrender http://freedesktop.org/software/xlibs)"])]) d220 1 a220 1 use_glitz=yes], [use_glitz="no (requires glitz http://freedesktop.org/software/glitz)"]) @ 1.100 log @ * configure.in: * src/cairo-features.h.in: Change cairo-features again so that either #if or #ifdef will work to test any feature. @ text @d102 1 a102 1 use_xcb="no (requires XCB http://freedesktop.org/software/xcb)"]) @ 1.99 log @ * configure.in: * src/cairo-features.h.in: Change definitions of everything in cairo-features.h to prefer #if over #ifdef. * src/cairo-atsui.h: * src/cairo-cache.c: * src/cairo-ft-private.h: * src/cairo-ft.h: * src/cairo-glitz.h: * src/cairo-pdf.h: * src/cairo-ps.h: * src/cairo-quartz.h: * src/cairo-win32.h: * src/cairo-xcb.h: * src/cairo-xlib.h: * src/cairo.c: * src/cairo.h: * src/cairoint.h: * test/cairo-test.c: Track #ifdef -> #if changes. * util/cairo-api-update: Add support to automatically change all #ifdef CAIRO_HAS to #if CAIRO_HAS. @ text @d68 1 a68 3 XLIB_SURFACE_FEATURE=1 else XLIB_SURFACE_FEATURE=0 d88 1 a88 1 QUARTZ_SURFACE_FEATURE=1 a89 2 else QUARTZ_SURFACE_FEATURE=0 d107 1 a107 3 XCB_SURFACE_FEATURE=1 else XCB_SURFACE_FEATURE=0 d142 1 a142 3 WIN32_SURFACE_FEATURE=1 else WIN32_SURFACE_FEATURE=0 d148 1 a148 3 WIN32_FONT_FEATURE=1 else WIN32_FONT_FEATURE=0 d166 1 a166 1 PS_SURFACE_FEATURE=1 a167 2 else PS_SURFACE_FEATURE=0 d202 1 a202 3 PNG_FUNCTIONS_FEATURE=1 else PNG_FUNCTIONS_FEATURE=0 d225 1 a225 3 GLITZ_SURFACE_FEATURE=1 else GLITZ_SURFACE_FEATURE=0 d304 1 a304 3 FT_FONT_FEATURE=1 else FT_FONT_FEATURE=0 d321 1 a321 1 PDF_SURFACE_FEATURE=1 a322 2 else PDF_SURFACE_FEATURE=0 d346 1 a346 3 ATSUI_FONT_FEATURE=1 else ATSUI_FONT_FEATURE=0 @ 1.98 log @ * configure.in: * src/cairo-wideint.h: * src/cairoint.h: Use configure-time checks for stdint.h vs. inttypes.h vs. sys/int_types.h rather than ad-hoc system-specific macros. Also define these types manually none of these header are available. (Thanks to Jason Dorje Short ). @ text @d66 3 a68 3 if test "x$use_xlib" != "xyes"; then XLIB_SURFACE_FEATURE=CAIRO_HAS_NO_XLIB_SURFACE AM_CONDITIONAL(CAIRO_HAS_XLIB_SURFACE, false) d70 1 a70 2 XLIB_SURFACE_FEATURE=CAIRO_HAS_XLIB_SURFACE AM_CONDITIONAL(CAIRO_HAS_XLIB_SURFACE, true) d72 1 a73 1 AC_SUBST(XLIB_SURFACE_FEATURE) d88 4 a91 3 if test "x$use_quartz" != "xyes"; then QUARTZ_SURFACE_FEATURE=CAIRO_HAS_NO_QUARTZ_SURFACE AM_CONDITIONAL(CAIRO_HAS_QUARTZ_SURFACE, false) d93 1 a93 3 QUARTZ_SURFACE_FEATURE=CAIRO_HAS_QUARTZ_SURFACE QUARTZ_LIBS="-Xlinker -framework -Xlinker Carbon" AM_CONDITIONAL(CAIRO_HAS_QUARTZ_SURFACE, true) a94 1 d109 3 a111 3 if test "x$use_xcb" != "xyes"; then XCB_SURFACE_FEATURE=CAIRO_HAS_NO_XCB_SURFACE AM_CONDITIONAL(CAIRO_HAS_XCB_SURFACE, false) d113 1 a113 2 XCB_SURFACE_FEATURE=CAIRO_HAS_XCB_SURFACE AM_CONDITIONAL(CAIRO_HAS_XCB_SURFACE, true) d115 1 a119 1 AC_SUBST(XCB_SURFACE_FEATURE) d146 3 a148 3 if test "x$use_win32" != "xyes"; then WIN32_SURFACE_FEATURE=CAIRO_HAS_NO_WIN32_SURFACE AM_CONDITIONAL(CAIRO_HAS_WIN32_SURFACE, false) d150 1 a150 2 WIN32_SURFACE_FEATURE=CAIRO_HAS_WIN32_SURFACE AM_CONDITIONAL(CAIRO_HAS_WIN32_SURFACE, true) d152 1 d154 3 a156 3 if test "x$use_win32" != "xyes"; then WIN32_FONT_FEATURE=CAIRO_HAS_NO_WIN32_FONT AM_CONDITIONAL(CAIRO_HAS_WIN32_FONT, false) d158 1 a158 2 WIN32_FONT_FEATURE=CAIRO_HAS_WIN32_FONT AM_CONDITIONAL(CAIRO_HAS_WIN32_FONT, true) a159 2 AC_SUBST(WIN32_SURFACE_FEATURE) d174 4 a177 3 if test "x$use_ps" != "xyes"; then PS_SURFACE_FEATURE=CAIRO_HAS_NO_PS_SURFACE AM_CONDITIONAL(CAIRO_HAS_PS_SURFACE, false) d179 1 a179 3 PS_SURFACE_FEATURE=CAIRO_HAS_PS_SURFACE PS_LIBS=-lz AM_CONDITIONAL(CAIRO_HAS_PS_SURFACE, true) d181 1 a184 1 AC_SUBST(PS_SURFACE_FEATURE) d212 3 a214 3 if test "x$use_png" != "xyes"; then PNG_FUNCTIONS_FEATURE=CAIRO_HAS_NO_PNG_FUNCTIONS AM_CONDITIONAL(CAIRO_HAS_PNG_FUNCTIONS, false) d216 1 a216 2 PNG_FUNCTIONS_FEATURE=CAIRO_HAS_PNG_FUNCTIONS AM_CONDITIONAL(CAIRO_HAS_PNG_FUNCTIONS, true) d218 1 a222 1 AC_SUBST(PNG_FUNCTIONS_FEATURE) d237 3 a239 3 if test "x$use_glitz" != "xyes"; then GLITZ_SURFACE_FEATURE=CAIRO_HAS_NO_GLITZ_SURFACE AM_CONDITIONAL(CAIRO_HAS_GLITZ_SURFACE, false) d241 1 a241 2 GLITZ_SURFACE_FEATURE=CAIRO_HAS_GLITZ_SURFACE AM_CONDITIONAL(CAIRO_HAS_GLITZ_SURFACE, true) d243 1 a247 1 AC_SUBST(GLITZ_SURFACE_FEATURE) a251 14 AC_ARG_ENABLE(sanity-checking, [ --disable-sanity Disable cairo's sanity checking routines], [check_sanity=$enableval], [check_sanity=yes]) if test "x$check_sanity" != "xyes"; then SANITY_CHECKING_FEATURE=CAIRO_NO_SANITY_CHECKING else SANITY_CHECKING_FEATURE=CAIRO_DO_SANITY_CHECKING fi AC_SUBST(SANITY_CHECKING_FEATURE) dnl =========================================================================== d318 3 a320 3 if test "x$use_freetype" != "xyes"; then FT_FONT_FEATURE=CAIRO_HAS_NO_FT_FONT AM_CONDITIONAL(CAIRO_HAS_FT_FONT, false) d322 1 a322 2 FT_FONT_FEATURE=CAIRO_HAS_FT_FONT AM_CONDITIONAL(CAIRO_HAS_FT_FONT, true) d337 4 a340 3 if test "x$use_pdf" != "xyes"; then PDF_SURFACE_FEATURE=CAIRO_HAS_NO_PDF_SURFACE AM_CONDITIONAL(CAIRO_HAS_PDF_SURFACE, false) d342 1 a342 3 PDF_SURFACE_FEATURE=CAIRO_HAS_PDF_SURFACE PDF_LIBS=-lz AM_CONDITIONAL(CAIRO_HAS_PDF_SURFACE, true) d344 1 a347 1 AC_SUBST(PDF_SURFACE_FEATURE) d364 3 a366 3 if test "x$use_atsui" != "xyes"; then ATSUI_FONT_FEATURE=CAIRO_HAS_NO_ATSUI_FONT AM_CONDITIONAL(CAIRO_HAS_ATSUI_FONT, false) d368 1 a368 2 ATSUI_FONT_FEATURE=CAIRO_HAS_ATSUI_FONT AM_CONDITIONAL(CAIRO_HAS_ATSUI_FONT, true) @ 1.97 log @ * configure.in: Fix typo I had introduced into Jason's patch that made configure fail. @ text @d401 1 @ 1.96 log @ A few fixes courtesy of Jason Dorje Short : * configure.in: Disable PS backend if zlib is not found. * src/cairo-win32-font.c: (_cairo_win32_font_glyph_path): Fix mistyped parameter. * src/cairo-win32-surface.c: (_cairo_win32_surface_finish): Fix missing return value. @ text @d178 2 a179 2 [use_ps="no (requires zlib "http://www.gzip.org/zlib/)"])], [use_ps="no (requires zlib "http://www.gzip.org/zlib/)"]) @ 1.95 log @Update quartz backend to compilable/workable version and re-enable. @ text @d175 6 @ 1.94 log @2005-03-28 Kristian Høgsberg * src/cairo-png.c (cairo_image_surface_write_png) (cairo_image_surface_create_from_png): New PNG utility functions. * src/cairo_pdf_surface.c, src/cairo-pdf.h: Reverse the naming of the pdf constructors so the callback based ones have the long names. @ text @d82 1 a82 1 [use_quartz=$enableval], [use_quartz="no (temporarily disabled while code is out of sync)"]) @ 1.93 log @ * configure.in: Add -head to CAIRO_VERSION after tagging with SNAPSHOT_0_4_0. @ text @d192 1 a192 1 [ --disable-png Disable cairo's PNG backend], d215 2 a216 2 PNG_SURFACE_FEATURE=CAIRO_HAS_NO_PNG_SURFACE AM_CONDITIONAL(CAIRO_HAS_PNG_SURFACE, false) d218 2 a219 2 PNG_SURFACE_FEATURE=CAIRO_HAS_PNG_SURFACE AM_CONDITIONAL(CAIRO_HAS_PNG_SURFACE, true) d225 1 a225 1 AC_SUBST(PNG_SURFACE_FEATURE) a437 1 echo " PNG: $use_png" d440 1 a440 1 echo "and the following font backends:" d445 2 a456 1 @ 1.92 log @ * configure.in: Increment CAIRO_VERSION to 0.4.0 * NEWS: Added notes for snapshot 0.4.0 @ text @d8 1 a8 1 CAIRO_VERSION=0.4.0 @ 1.91 log @ * configure.in: Require libpixman >= 0.1.4. @ text @d8 1 a8 1 CAIRO_VERSION=0.3.0-head @ 1.90 log @ * configure.in: Make configure fail if no font backend is available. Point the user at freetype and fontconfig. @ text @d270 1 a270 1 PKG_CHECK_MODULES(PIXMAN, libpixman >= 0.1.2) @ 1.89 log @2005-03-04 Owen Taylor * src/cairoint.h src/cairo_pattern.c src/cairo_glitz_surface.c: Add _cairo_pattern_is_opaque, use it rather than pattern->alpha == 1.0. @ text @d447 10 @ 1.88 log @Update xcb backend @ text @d140 1 a140 1 [use_win32=$enableval], [use_win32="no (temporarily disabled while code is out of sync)"]) @ 1.87 log @Fixed variable assignments in configure.in @ text @d105 1 a105 1 [use_xcb=$enableval], [use_xcb="no (temporarily disabled while code is out of sync)"]) d232 1 a232 1 [use_glitz=$enableval], [use_glitz="yes"]) @ 1.86 log @Major update to glitz backend @ text @d82 1 a82 1 [use_quartz=$enableval], [use_quartz=no (temporarily disabled while code is out of sync)]) d140 1 a140 1 [use_win32=$enableval], [use_win32=no (temporarily disabled while code is out of sync)]) @ 1.85 log @Change to cairo_surface_t like structure of of cairo_pattern_t @ text @d232 1 a232 1 [use_glitz=$enableval], [use_glitz="no (temporarily disabled while code is out of sync)"]) @ 1.84 log @2005-02-24 Owen Taylor * src/cairo_win32_surface.c (_cairo_win32_surface_destroy): When we created a DC/bitmap pair, delete the DC before the Bitmap so that the Bitmap will be released from the DC and can be destroyed. (Reported by Hans Breuer) * configure.in cairo.pc.in: Only require fontconfig if building FreeType font backend. * configure.in: Fix output when reporting Win32 font backend. @ text @d82 1 a82 1 [use_quartz=$enableval], [use_quartz=yes]) d140 1 a140 1 [use_win32=$enableval], [use_win32=yes]) @ 1.83 log @ * configure.in: Temporarily disable XCB backend by default. @ text @d326 2 a327 1 FREETYPE_LIBS=`$FREETYPE_CONFIG --libs` d330 1 d443 1 a443 1 echo " Win32: false" @ 1.82 log @ * configure.in: Add message stating why glitz backend is disabled. @ text @d105 1 a105 1 [use_xcb=$enableval], [use_xcb=yes]) @ 1.81 log @2005-02-05 Owen Taylor * src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs): Don't free *glyphs when succeeding! (Reported by Øyvind Kolås) * configure.in: Temporarily disable glitz by default. @ text @d232 1 a232 1 [use_glitz=$enableval], [use_glitz=no]) @ 1.80 log @2005-02-02 Owen Taylor * src/cairo_win32_font.c: Mostly-functioning Win32 font backend; no glyph paths yet. * configure.in: Turn on building of the Win32 font backend. * src/cairo-win32-private.h src/Makefile.am: Private header for the Win32 backend. * src/cairo-win32-private.h src/cairo_win32_surface.c: Internally export _cairo_win32_print_gdi_error() for use in the font code. * src/cairo-win32-private.h src/cairo_win32_surface.c: Add _cairo_win32_surface_create_dib to create a DIB surface. src/cairo-win32-private.h src/cairo_win32_surface.c: Add _cairo_surface_is_win32() * configure.in: Check for vasnprintf. * test/cairo_test.c (xasprintf): Add a simple fixed-buffer size snprintf fallback in the absence of vasnprintf. @ text @d232 1 a232 1 [use_glitz=$enableval], [use_glitz=yes]) @ 1.79 log @2005-01-31 Owen Taylor * configure.in src/cairo-features.h.in: Add a check for the Windows platform and --enable-win32. Also add some (currently always off) stubs for native Win32 fonts. * configure.in: Make building the PDF backend conditional on having FreeType. * src/Makefile.am src/cairo_win32_surface.c src/cairo_win32_font.c src/cairo-win32.h: Add a Win32 backend using GDI and software fallbacks Font code is not yet there yet, but it works with the fontconfig backend. * src/cairo_gdip_font.cpp src/cairo_gdip_surface.cpp: Remove remnants of a GDI+ based backend. * src/cairoint.h: Prefer platform-specific font backends to the fontconfig backend. @ text @d40 2 d158 1 a158 1 if true || test "x$use_win32" != "xyes"; then @ 1.78 log @2005-01-27 Owen Taylor * src/cairo.[ch] src/cairo_font.c src/cairo_ft_font.c src/cairo_ps_surface.c src/cairo_xlib_surface.c: Move docs from docs/reference, with a fair bit of addition and rewriting. * doc/reference/: Remove old-format docs. * configure.in: Add a AC_PREREQ(2.54) (Jason Dorje Short) @ text @d125 44 a188 20 AC_ARG_ENABLE(pdf, [ --disable-pdf Disable cairo's PDF backend], [use_pdf=$enableval], [use_pdf=yes]) if test "x$use_pdf" != "xyes"; then PDF_SURFACE_FEATURE=CAIRO_HAS_NO_PDF_SURFACE AM_CONDITIONAL(CAIRO_HAS_PDF_SURFACE, false) else PDF_SURFACE_FEATURE=CAIRO_HAS_PDF_SURFACE PDF_LIBS=-lz AM_CONDITIONAL(CAIRO_HAS_PDF_SURFACE, true) fi CAIRO_LIBS="$CAIRO_LIBS $PDF_LIBS" AC_SUBST(PDF_SURFACE_FEATURE) AC_SUBST(PDF_LIBS) dnl =========================================================================== d194 16 a209 6 PKG_CHECK_MODULES(PNG, libpng12, [ PNG_REQUIRES=libpng12 use_png=yes], [ PKG_CHECK_MODULES(PNG, libpng10, [ PNG_REQUIRES=libpng10 use_png=yes], [use_png="no (requires libpng http://www.libpng.org)"])]) d343 25 d431 1 d438 3 a440 2 echo " freetype: $use_freetype" echo " atsui: $use_atsui" @ 1.77 log @2005-01-27 Owen Taylor * configure.in Makefile.am docs/Makefile.am docs/public/*: Add framework for doing docs via gtk-doc. * src/cairo.[ch] src/cairo-matrix.c: Add some inline docs for arcs and matrices. * gtk-doc.m4 acinclude.m4: Check in files from gtk-doc to make the dependency on gtk-doc optional. * autogen.sh (LANG): Add --enable-gtk-doc to the default args. @ text @d1 2 @ 1.76 log @Track changes to glitz @ text @d349 3 d359 2 @ 1.75 log @ * RELEASING: Add instructions for handling the new -head suffix of CAIRO_VERSION at release-time. * configure.in: Append -head to CAIRO_VERSION to indicate state between snapshots. @ text @d197 1 a197 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.3.0, [ @ 1.74 log @ * configure.in: Increment CAIRO_VERSION to 0.3.0 * NEWS: Add notes for snapshot 0.3.0 @ text @d6 1 a6 1 CAIRO_VERSION=0.3.0 @ 1.73 log @ * src/cairo-atsui.h: Created new public header cairo-atsui.h. Build fixes for Quartz backend courtesy of Geoff Norton : * configure.in: Fix check for atsui font backend. * src/Makefile.am: Add conditional compilation for cairo_atsui_font.c and cairo_ft_font.c. * src/cairo_quartz_surface.c: Add missing include of cairo-quartz.h. * src/cairo-quartz.h: Add include of Carbon/Carbon.h. * src/cairo-features.h.in: Advertise availability of Quartz surface. * src/Makefile.am: Install cairo-quartz.h, and conditionally compile cairo_quartz_surface.c. * configure.in: Add autofoo checks to detect quartz backend. @ text @d6 1 a6 1 CAIRO_VERSION=0.2.0 @ 1.72 log @ * src/cairoint.h: Track various renamings. * src/cairo_xlib_surface.c: * src/cairo_ps_surface.c: * src/cairo_png_surface.c: * src/cairo_pdf_surface.c: * src/cairo_glitz_surface.c: * src/cairo_ft_font.c: Insert new includes for backend-specific header files. * src/cairo_gdip_surface.cpp: * src/cairo_gdip_font.cpp: Remove redundant include of cairo-features.h. * src/cairo.h (CAIRO_H): Rename header-exclusion macro from _CAIRO_H_ to CAIRO_H. Remove platform-specific grubbing for cairo-features.h and pixman.h in odd places. Remove all backend-specific prototypes, (as they are now in their own header files). Remove deprecated * src/cairo.c (cairo_sane_state): Remove printf. * src/cairo-features.h.in: Convert to utf-8. Use the proper name for multiple-header exclusion (CAIRO_FEATURES_H). Track rename of FREETYPE_FONT_FEATURE to FT_FONT_FEATURE. * src/Makefile.am (cairoinclude_HEADERS): Split cairo.h up into cairo.h, cairo-ft.h, cairo-glitz.h, cairo-pdf.h, cairo-png.h, cairo-ps.h, cairo-xcb.h, cairo-xlib.h. Update for rename of cairo_wideint.h to cairo-wideint.h. * configure.in: Rename CAIRO_HAS_FREETYPE_FONT to CAIRO_HAS_FT_FONT, (to match cairo_ft_font functions and cairo-ft.h). * cairo.pc.in (Cflags): Update for public header files now in /cairo. @ text @d70 3 d76 20 a95 2 AC_SUBST(XLIB_SURFACE_FEATURE) AC_SUBST(XRENDER_REQUIRES) d312 6 a317 1 [use_atsui=$enableval], [use_atsui=no]) d363 1 @ 1.71 log @2005-01-17 Kristian Høgsberg * src/cairo_pdf_surface.c: Add preliminary text support, including support for truetype font subsetting. * src/cairoint.h: Change type of 'surface' argument in show_glyphs to void * as it is for all other surface virtual functions. * src/cairo_xlib_surface.c (_cairo_xlib_surface_show_glyphs): Update accordingly. * configure.in: Add check for endianess. * src/cairo_array.c (_cairo_array_grow_by): Fix bug in array growing loop. (_cairo_array_append): Accept NULL for elements argument, in which case we just allocate space in the array. @ text @d276 2 a277 2 FREETYPE_FONT_FEATURE=CAIRO_HAS_NO_FREETYPE_FONT AM_CONDITIONAL(CAIRO_HAS_FREETYPE_FONT, false) d279 2 a280 2 FREETYPE_FONT_FEATURE=CAIRO_HAS_FREETYPE_FONT AM_CONDITIONAL(CAIRO_HAS_FREETYPE_FONT, true) d282 1 a282 1 AC_SUBST(FREETYPE_FONT_FEATURE) @ 1.70 log @2005-01-17 Kristian Høgsberg * 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. @ text @d36 1 @ 1.69 log @2005-01-11 Keith Packard * cairo.pc.in: * configure.in: * src/Makefile.am: Fix math library detection to use autotools helper * src/cairo_cache.c: (_cache_sane_state), (_cairo_cache_lookup): Remove cache memory usage assertions as single objects can be larger than the cache size * src/cairo_ft_font.c: (_cairo_ft_font_compute_transform), (_cairo_ft_font_install_transform), (_install_font_scale), (_cairo_ft_font_font_extents), (_cairo_ft_font_glyph_extents), (_cairo_ft_font_create_glyph): Decompose font matrix transformations into a couple of helper routines. Return all metrics in font space. * src/cairo_glitz_surface.c: (_glitz_format): Eliminate compiler warning * src/cairo_gstate.c: (_cairo_gstate_current_font_extents), (_cairo_gstate_text_to_glyphs), (_cairo_gstate_glyph_extents): Expect glyph metrics to be in font space. Compute text extents by fetching one glyph metric at a time, transforming to user space and computing the overall bounding box. * src/cairo_matrix.c: (_cairo_matrix_set_rotate), (_cairo_matrix_compute_scale_factors): use 'sincos' where available. Scale factors now ensure the non-scale transform is area preserving. Scale factors requires another parameter to mark the fixed axis. * src/cairo_wideint.c: * src/cairo_wideint.h: Change license to LGPL Mark int32x32_64_mul as broken (which it still is) * src/cairo_xlib_surface.c: (_cairo_xlib_surface_show_glyphs32), (_cairo_xlib_surface_show_glyphs16), (_cairo_xlib_surface_show_glyphs8): Ensure each glyph is located as close to the specified position as possible * src/cairoint.h: interface change to _cairo_matrix_compute_scale_factors @ text @a209 4 PKG_CHECK_MODULES(FONTCONFIG, fontconfig) CAIRO_CFLAGS="$CAIRO_CFLAGS $FONTCONFIG_CFLAGS" CAIRO_LIBS="$CAIRO_LIBS $FONTCONFIG_LIBS" d214 14 d245 24 a268 2 if test -z "$FREETYPE_CONFIG"; then AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) d270 10 a279 2 if test "$FREETYPE_CONFIG" = "no" ; then AC_MSG_ERROR(No freetype-config script found in path or FREETYPE_CONFIG) d281 1 d283 1 a283 1 AC_MSG_CHECKING(freetype2 libtool version) d285 2 a286 1 FREETYPE_VERSION=`$FREETYPE_CONFIG --version` d288 10 a297 4 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) d299 1 a299 9 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" a301 1 d334 1 a334 1 echo "cairo will be compiled with the following backends:" d342 4 @ 1.68 log @2005-01-07 Kristian Høgsberg * configure.in: Add -lz to CAIRO_LIBS when compiling the PDF backend. * src/cairo_pdf_surface.c (emit_image_data): Don't use compressBound, since it's only available in zlib 1.2 and newer. @ text @d37 6 d277 1 a277 1 CAIRO_LIBS="$CAIRO_LIBS -lm" @ 1.67 log @2005-01-05 Kristian Høgsberg * src/cairo_pdf_surface.c: New PDF backend. * src/cairo.h: Add PDF surface constructors. * src/cairo_array.c: New file - generic array implementation. * src/cairoint.h: Add cairo_array prototypes. * src/Makefile.am (libcairo_la_SOURCES): Add cairo_array.c and cairo_pdf_surface.c. @ text @d124 1 d128 2 d131 1 @ 1.66 log @2004-11-08 Dave Beckett * configure.in: require libpixman 0.1.2 since src/cairo_glitz_surface.c depends on two new functions of 0.1.2 - pixman_format_get_masks and pixman_image_get_format @ text @d115 16 d289 1 @ 1.65 log @Tracking changes to glitz @ text @d188 1 a188 1 PKG_CHECK_MODULES(PIXMAN, libpixman >= 0.1.1) @ 1.64 log @ * configure.in: Increment CAIRO_VERSION to 0.2.0. * NEWS: Add notes for snapshot 0.2.0. @ text @d149 1 a149 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.2.3, [ @ 1.63 log @ * configure.in: Shell doesn't like whitespace around assignment operator. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.23 @ 1.62 log @ * test/.cvsignore: * test/Makefile.am: * test/README: * test/cairo_test.c: * test/cairo_test.h: * test/line_width-ref.png: * test/line_width.c: * test/move_to_show_surface-ref.png: * test/move_to_show_surface.c: * test/read_png.c: * test/read_png.h: * test/write_png.c: * test/write_png.h: * test/xmalloc.c: * test/xmalloc.h: Add initial regression test suite. * configure.in: Don't AC_SUBST a dozen different FOO_CFLAGS and FOO_LIBS. Instead, incrementally build up just CAIRO_CFLAGS and CAIRO_LIBS. * cairo.pc.in (Libs): Don't list flags that should get picked up via dependency information through Requires. * BUGS (font-size): Add description of move_to_show_surface. @ text @d251 1 a251 1 CAIRO_LIBS = "$CAIRO_LIBS -lm" @ 1.61 log @Do not use VBOs and PBOs for immediate mode drawing @ text @d63 3 a66 2 AC_SUBST(XRENDER_CFLAGS) AC_SUBST(XRENDER_LIBS) d88 3 a91 2 AC_SUBST(XCB_CFLAGS) AC_SUBST(XCB_LIBS) d108 2 d136 3 a139 2 AC_SUBST(PNG_CFLAGS) AC_SUBST(PNG_LIBS) d162 3 a164 2 AC_SUBST(GLITZ_LIBS) AC_SUBST(GLITZ_CFLAGS) d185 6 a190 1 PKG_CHECK_MODULES(CAIRO, libpixman >= 0.1.1) a231 1 a234 3 AC_SUBST(CAIRO_CFLAGS) AC_SUBST(CAIRO_LIBS) d249 6 a254 1 AC_SUBST(WARN_CFLAGS) d263 1 @ 1.60 log @Tracking color stop coordinate changes to glitz's gradient filters @ text @d144 1 a144 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.2.2, [ @ 1.59 log @Replaced the gl backend with the new glitz backend @ text @d144 1 a144 1 PKG_CHECK_MODULES(GLITZ, glitz >= 0.2.1, [ @ 1.58 log @Glitz updates and a minor clipping fix @ text @d139 8 a146 8 AC_ARG_ENABLE(gl, [ --disable-gl Disable cairo's OpenGL backend], [use_gl=$enableval], [use_gl=yes]) if test "x$use_gl" = "xyes"; then PKG_CHECK_MODULES(GL, glitz >= 0.1.5, [ GL_REQUIRES=glitz use_gl=yes], [use_gl="no (requires glitz http://freedesktop.org/software/glitz)"]) d149 3 a151 3 if test "x$use_gl" != "xyes"; then GL_SURFACE_FEATURE=CAIRO_HAS_NO_GL_SURFACE AM_CONDITIONAL(CAIRO_HAS_GL_SURFACE, false) d153 2 a154 2 GL_SURFACE_FEATURE=CAIRO_HAS_GL_SURFACE AM_CONDITIONAL(CAIRO_HAS_GL_SURFACE, true) d157 4 a160 4 AC_SUBST(GL_LIBS) AC_SUBST(GL_CFLAGS) AC_SUBST(GL_SURFACE_FEATURE) AC_SUBST(GL_REQUIRES) d261 1 a261 1 echo " OpenGL: $use_gl" @ 1.57 log @Software multi-sample support @ text @d144 1 a144 1 PKG_CHECK_MODULES(GL, glitz >= 0.1.4, [ @ 1.56 log @2004-05-28 Keith Packard * configure.in: * src/Makefile.am: Add WARN_CFLAGS, autodetection for 64/128 bit ints and cairo_wideint.[ch] * src/cairo_gstate.c: (_cairo_gstate_show_glyphs): Check status return from _cairo_gstate_glyph_extents * src/cairo_pattern.c: (_cairo_image_data_set_radial), (_cairo_pattern_get_image): * src/cairo_png_surface.c: (_cairo_png_surface_copy_page): * src/cairo_surface.c: (_cairo_surface_composite): Quiet compiler warnings about uninitialized variables * src/cairo_traps.c: (_det16_32), (_det32_64), (_fixed_16_16_to_fixed_32_32), (_line_segs_intersect_ceil): Switch to alternate exact line intersection code. * src/cairo_wideint.c: (_cairo_uint64_divrem), (_cairo_uint32_to_uint64), (_cairo_int32_to_int64), (_cairo_uint32s_to_uint64), (_cairo_uint64_add), (_cairo_uint64_sub), (_cairo_uint32x32_64_mul), (_cairo_uint64_mul), (_cairo_uint64_lsl), (_cairo_uint64_rsl), (_cairo_uint64_rsa), (_cairo_uint64_lt), (_cairo_uint64_eq), (_cairo_int64_lt), (_cairo_uint64_not), (_cairo_uint64_negate), (_cairo_leading_zeros32), (_cairo_uint64x32_normalized_divrem), (_cairo_int64_divrem), (_cairo_uint128_divrem), (_cairo_uint32_to_uint128), (_cairo_int32_to_int128), (_cairo_uint64_to_uint128), (_cairo_int64_to_int128), (_cairo_uint128_add), (_cairo_uint128_sub), (uint64_lo), (uint64_hi), (uint64_shift32), (_cairo_uint64x64_128_mul), (_cairo_uint128_mul), (_cairo_uint128_lsl), (_cairo_uint128_rsl), (_cairo_uint128_rsa), (_cairo_uint128_lt), (_cairo_int128_lt), (_cairo_uint128_eq), (_cairo_uint128x64_normalized_divrem), (_cairo_leading_zeros64), (_cairo_int128_negate), (_cairo_int128_not), (_cairo_int128_divrem): * src/cairo_wideint.h: Add 64/128-bit wide integer arithmetic. * src/cairoint.h: Switch to stdint.h types (and new wide types). @ text @d144 1 a144 1 PKG_CHECK_MODULES(GL, glitz >= 0.1.2, [ @ 1.55 log @2004-05-20 Graydon Hoare * configure.in: Add sanity checking feature configury. * src/cairo-features.h.in: Add sanity checking feature. * src/cairo.c: Add sanity checking. * src/cairoint.h: Add prototypes. * src/cairo_fixed.c (_cairo_fixed_is_integer): (_cairo_fixed_integer_part): New functions. * src/cairo_matrix.c (_cairo_matrix_is_integer_translation): New function. * src/cairo_gstate.c (extract_transformed_rectangle): Use fixed functions. (_cairo_gstate_clip): Arithmetic fixes. (_cairo_gstate_clip_and_composite_trapezoids): (_cairo_gstate_show_surface): (_cairo_gstate_show_text): (_cairo_gstate_show_glyphs): Corrections to clipping. * src/cairo_xlib_surface.c (_cairo_xlib_surface_composite): Add XCopyArea fast path. (_cairo_xlib_surface_set_clip_region): Drive clip to drawable. @ text @d230 16 @ 1.54 log @ * configure.in: Increment CAIRO_VERSION to 0.1.23. * NEWS: Added notes for snapshot 0.1.23. * RELEASING: Add reminder to mention incompatible API changes in NEWS. Re-order steps to avoid clobbering pre-existing tar files. @ text @d164 14 @ 1.53 log @Better surface pattern support @ text @d6 1 a6 1 CAIRO_VERSION=0.1.22 @ 1.52 log @Updated linear and radial patterns @ text @d144 1 a144 1 PKG_CHECK_MODULES(GL, glitz >= 0.1.1, [ @ 1.51 log @ * NEWS: Added notes for snapshot 0.1.22. * configure.in: Now depends on libpixman 0.1.1. Bump version to 0.1.22. @ text @d144 1 a144 1 PKG_CHECK_MODULES(GL, glitz >= 0.1.0, [ @ 1.50 log @Bump version to 0.1.21 @ text @d6 1 a6 1 CAIRO_VERSION=0.1.21 d165 1 a165 1 PKG_CHECK_MODULES(CAIRO, libpixman >= 0.1.0) @ 1.49 log @Added OpenGL surface backend @ text @d6 1 a6 1 CAIRO_VERSION=0.1.20 @ 1.48 log @Automatically detect available backends @ text @d139 25 d231 1 @ 1.47 log @Added new pattern API @ text @d43 12 a59 7 dnl Check for Xrender header files if the Xrender package is not installed: PKG_CHECK_MODULES(XRENDER, xrender >= 0.6,[ XRENDER_REQUIRES=xrender],[ AC_CHECK_HEADER(X11/extensions/Xrender.h,[ AC_PATH_XTRA XRENDER_LIBS="$X_LIBS -lXrender -lXext -lX11 $X_EXTRA_LIBS"],[ AC_MSG_ERROR(Xrender not found perhaps use --disable-xlib?)])]) d72 6 a77 1 [use_xcb=$enableval], [use_xcb=no]) a83 1 PKG_CHECK_MODULES(XCB, xcb) d112 11 a122 2 [ --enable-png Enable cairo's PNG backend], [use_png=$enableval], [use_png=no]) a128 4 PKG_CHECK_MODULES(PNG, libpng12, [PNG_REQUIRES=libpng12],[ PKG_CHECK_MODULES(PNG, libpng10, [PNG_REQUIRES=libpng10])]) d197 11 @ 1.46 log @ * configure.in: Add checks for Xrender.h in xrender.pc is not found. Remove AC_HELP_STRING to be compatible with older versions of autoconf (thanks to Bill Spitzak ). @ text @d6 1 a6 1 CAIRO_VERSION=0.1.19 a61 1 AC_SUBST(XRENDER_LIBS) d93 1 a93 1 PS_SURFACE_LIBS=-lz a96 1 AC_SUBST(PS_SURFACE_LIBS) d98 1 @ 1.45 log @ * configure.in: Move the PNG_CFLAGS/_LIBS substitutes outside the conditional, to match what is already done for XCB. Do the same for XRENDER_CFLAGS/LIBS. @ text @d40 1 a40 1 AC_HELP_STRING([--disable-xlib], [Disable cairo's Xlib backend]), d48 7 a54 2 PKG_CHECK_MODULES(XRENDER, xrender >= 0.6) XRENDER_REQUIRES=xrender d62 1 d67 1 a67 1 AC_HELP_STRING([--disable-xcb], [Disable cairo's XCB backend]), d86 1 a86 1 AC_HELP_STRING([--disable-ps], [Disable cairo's PostScript backend]), d104 1 a104 1 AC_HELP_STRING([--enable-png], [Enable cairo's PNG backend]), @ 1.44 log @ * configure.in: Substitute PNG_CFLAGS, PNG_LIBS on the configure path when use_png is not enabled to prevent the substituions being undefined. @ text @d54 2 a103 3 dnl match what PKG_CHECK_MODULES does for PNG below AC_SUBST(PNG_CFLAGS) AC_SUBST(PNG_LIBS) d114 2 @ 1.43 log @forgot the SUBST for PNG_REQUIRES @ text @d102 3 @ 1.42 log @autoconf support for the PNG backend. Bump version to 0.1.19. @ text @d112 1 @ 1.41 log @ * configure.in: Bump version to 0.1.18. Includes new functions cairo_current_path, cairo_current_path_flat, cairo_surface_get_filter. Support for XCB backend. Fixes for building in cygwin. Adds cairo_surface_get_filter. * src/cairo.h: * src/cairo.c (cairo_current_path): (cairo_current_path_flat): Add new path query functions. * src/cairo_gstate.c (_gpi_move_to): (_gpi_line_to): (_gpi_curve_to): (_gpi_close_path): (_cairo_gstate_interpret_path): Implement support for cairo_current_path and cairo_current_path_flat. These functions just provide an interface to _cairo_path_interpret and take care of mapping from device space back to user space. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.18 d95 20 @ 1.40 log @Ported the Xlib surface backend to XCB. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.17 @ 1.39 log @ * configure.in: Bump version to 0.1.17 for new functions: cairo_text_extents, cairo_glyph_extents, cairo_text_path, cairo_glyph_path. * src/cairo.h: * src/cairo.c (cairo_text_path): (cairo_glyph_path): Re-enable cairo_text_path and cairo_glyph_path. * src/cairo_gstate.c (_cairo_gstate_glyph_path): Add missing transformation. * src/cairo_ft_font.c (_move_to): (_line_to): (_conic_to): (_cubic_to): (_cairo_ft_font_glyph_path): Initial implementation of glyph_path. @ text @d58 19 @ 1.38 log @ * src/cairo.h: * src/cairo-features.h.in: * src/Makefile.am (libcairo_ps_sources): Add conditionals for ps_surface functions, etc. * configure.in: Get rid of AC_PATH_XTRA. Instead, find X includes/libraries only via pkg-config xrender. Switch option from --without-x to --disable-xlib Add option --disable-ps * cairo.pc.in (Libs): Add -lz only if ps_surface backend is compiled. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.16 @ 1.37 log @ * src/cairoint.h (slim_hidden_proto1): Directly fold in slim stuff rather than depending on it from an external package. * src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): * src/cairo_image_surface.c: Switch from libic to libpixman. * src/cairo.h: Include pixman.h not ic.h. (__external_linkage): Directly fold in slim stuff rather than depending on it from an external package. * configure.in (PKG_CHECK_MODULES): * cairo.pc.in (Requires): Look for libpixman instead of libic and slim. @ text @d39 3 a41 1 AC_PATH_XTRA d43 1 a43 1 if test "x$have_x" != "xyes"; then d45 1 d50 1 d56 17 a72 3 dnl This is needed for conditional compilation of xlib code in Makefile.am : dnl XXX: I'd prefer to have only one test of $have_x, would that be easy? AM_CONDITIONAL(CAIRO_HAS_XLIB_SURFACE, test x$have_x = xyes) @ 1.36 log @ * cairo.pc.in (Requires): * configure.in: Add xrender to cairo.pc Renders line if needed. @ text @d59 1 a59 1 PKG_CHECK_MODULES(CAIRO, slim >= 0.2.0 libic >= 0.1.3) @ 1.35 log @ * configure.in: Bump version to 0.1.16 since it actually has a hope of building, (due to fix for broken cairo-xlib.h includes). @ text @d46 1 d50 1 @ 1.34 log @ * configure.in: Bump version to 0.1.15 for new CAIRO_HAS_XLIB_SURFACE macro. * src/cairo.h: Add missing #include * Rename cairo-config.h to cairo-features.h. * configure.in: Rename XLIB_BACKEND_DEFINE to XLIB_SURFACE_FEATURE. Rename AM_CONDITIONAL HAVE_XLIB_BACKEND to CAIRO_HAS_XLIB_SURFACE. Rename user-visibile macro CAIRO_HAS_XLIB_BACKEND to CAIRO_HAS_XLIB_SURFACE. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.15 @ 1.33 log @ * configure.in: Bumped version to 0.1.14 to indicate dropped cairo-xlib.h and new cairo-config.h. * New support for "./configure --without-x" to compile without the xlib backend. Many thanks to Sasha V. . * configure.in: We do three things here: Make the pkg-config check for xrender conditional, set XLIB_BACKEND_DEFINE to either CAIRO_HAS_XLIB_BACKEND or CAIRO_HAS_NO_XLIB_BACKEND to be substituted into cairo-config.h, and set an AM_CONDITIONAL for HAVE_XLIB_BACKEND to enable conditional compilation of cairo_xlib_surface.c. Perhaps that could be simplified a tad, but it's what we have working now. Also split up various PKG_CHECK_MODULES into separate checks. * src/cairo_gstate.c: Remove errant reference to cairo_gstate_set_drawable. * src/cairo.h: Move xlib-specific calls in from old cairo-xlib.h, now guarded in #ifdef CAIRO_HAS_XLIB_BACKEND. * src/Makefile.am (libcairo_xlib_sources): Make compilation of cairo_xlib_surface.c conditional. (INCLUDES, libcairo_la_LIBADD): Add the new variables from splitting up the PKG_CHECK_MODULES calls. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.14 d42 1 a42 1 XLIB_BACKEND_DEFINE=CAIRO_HAS_NO_XLIB_BACKEND d44 1 a44 1 XLIB_BACKEND_DEFINE=CAIRO_HAS_XLIB_BACKEND d48 1 a48 1 AC_SUBST(XLIB_BACKEND_DEFINE) d52 1 a52 1 AM_CONDITIONAL(HAVE_XLIB_BACKEND, test x$have_x = xyes) d112 1 a112 1 src/cairo-config.h @ 1.32 log @ * configure.in: Bump version to 0.1.13 for new freetype header compatibility. Fix comments regarding freetype version checking. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.13 d41 13 d56 2 a57 1 PKG_CHECK_MODULES(CAIRO, fontconfig slim >= 0.2.0 libic >= 0.1.3 xrender >= 0.6) d112 1 @ 1.31 log @2003-11-18 James Henstridge * cairo.pc.in (Cflags): add FREETYPE_CFLAGS/LIBS to Libs/Cflags rather than requiring "freetype2", which doesn't exist in anything but the most recent version of freetype. * configure.in (FREETYPE_LIBS): add freetype cflags/libs substitutions. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.12 d50 1 a50 1 # libtool (such as 9.4.3) d59 1 a59 1 # platform-specific version - this is what is checked @ 1.30 log @ * configure.in: Fix typo (thanks to John Ellson ) * TODO: Add TODO items for intersection problem, programmatic patterns, missing text functions. @ text @d80 4 a83 2 CAIRO_CFLAGS="$CAIRO_CFLAGS `$FREETYPE_CONFIG --cflags`" CAIRO_LIBS="$CAIRO_LIBS `$FREETYPE_CONFIG --libs`" d86 3 @ 1.29 log @Use freetype-config to get the freetype2 compiling and linking flags rather than use pkg-config which requires a quite new freetype2 to get freetype2.pc @ text @d80 1 a80 1 CAIRO_CFLAGS="CAIRO_CFLAGS `$FREETYPE_CONFIG --cflags`" @ 1.28 log @ * configure.in (CAIRO_VERSION): Bumped version to 0.1.12 for new cairo_in_stroke and cairo_in_fill functions. * src/cairo.h: * src/cairo.c (cairo_in_stroke): (cairo_in_fill): Added new cairo_in_stroke and cairo_in_fill. * src/cairo_traps.c (_cairo_trap_contains): (_cairo_traps_contain): * src/cairo_gstate.c (_cairo_gstate_in_stroke): (_cairo_gstate_in_fill): New functions to support for cairo_in_stroke and cairo_in_fill. Many thanks to Thomas Hunger for the initial implementation which demonstrated how easy this would be and pushed me to go and write it already. * src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids): * src/cairo_traps.c (_line_segs_intersect_ceil): * src/cairo_path.c (_cairo_path_move_to): (_cairo_path_line_to): (_cairo_path_curve_to): Fixed to use _cairo_fixed_from_double instead of XDoubleToFixed. @ text @d43 41 a83 1 PKG_CHECK_MODULES(CAIRO, fontconfig freetype2 slim >= 0.2.0 libic >= 0.1.3 xrender >= 0.6) @ 1.27 log @Add explicit fontconfig and freetype2 dependencies that were implicitly dropped along with Xft. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.11 @ 1.26 log @Fix configure.in and cairo.pc.in now that cairo no longer depends on Xft. @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim >= 0.2.0 libic >= 0.1.3 xrender >= 0.6) @ 1.25 log @Add support for cairo_copy_page. Fixes so PS output can be more than one page. Bump version to 0.1.11 for new cairo_copy_page. @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim >= 0.2.0 libic >= 0.1.3 xft xrender >= 0.6) @ 1.24 log @Implemented preliminary PostScript output support. Added cairo_show_page. Bumped version number to 0.1.10 @ text @d6 1 a6 1 CAIRO_VERSION=0.1.10 @ 1.23 log @Moved all libic-related drawing into cairo_image_surface.c @ text @d6 1 a6 1 CAIRO_VERSION=0.1.9 @ 1.22 log @* src/cairo_ft_font.c: A set of changes to eliminate the static FT_Library field, (which could introduce nasty problems with respect to threading). With the new code, each font created with the toy API will own its own FT_Library. Meanwhile, cairo_ft_font_create now accepts an FT_Library parameter. Bumped version number to 0.1.9 @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim >= 0.2.0 libic >= 0.1.1 xft xrender >= 0.6) @ 1.21 log @Fixes to eliminate a few compiler warnings. Bump version to 0.1.8 for recent font API changes. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.8 @ 1.20 log @Changed cairo_copy to copy graphics state from one cairo_t to another rather than allocating a new cairo_t. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.7 @ 1.19 log @Added cairo_arc and cairo_arc_negative. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.6 @ 1.18 log @Removed support for cairo_path_t and related functions. Bumped version to 0.1.5 @ text @d6 1 a6 1 CAIRO_VERSION=0.1.5 @ 1.17 log @Expose a cairo_path_t object with related functions: cairo_set_path, cairo_current_path, cairo_path_move_to, cairo_path_line_to, etc. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.4 @ 1.16 log @Add cairo_reference and cairo_surface_reference @ text @d6 1 a6 1 CAIRO_VERSION=0.1.3 @ 1.15 log @Force explicit dependency on Xrender >= 0.6. Make _cairo_x11_surface_put_image static. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.2 @ 1.14 log @Updated calls to slim_hidden_def to track changes in slim 0.2.0 @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim >= 0.2.0 libic >= 0.1.1 xft) @ 1.13 log @Preliminary support for running Cairo with X servers without the Render extension. This is still horribly slow. Removed many uses of X-specific macros, (eg. XDoubleToFixed) @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim libic >= 0.1.1 xft) @ 1.12 log @Added cairo_copy. Bumbed version to 0.1.2. @ text @d43 1 a43 1 PKG_CHECK_MODULES(CAIRO, slim libic xft) @ 1.11 log @Changed names of all cairo_get_* functions to cairo_current_*. Added magic DEPRECATE macro so that using the old names will give useful warnings/errors. Bumped version number to 0.1.1 @ text @d6 1 a6 1 CAIRO_VERSION=0.1.1 @ 1.10 log @Removed version requirements from dependencies on slim, libic, and Xft. @ text @d6 1 a6 1 CAIRO_VERSION=0.1.0 @ 1.9 log @ * cairo.pc.in: Depend on slim. * configure.in: Check for slim. * src/cairo.h: Include slim_{export,import}.h as needed; mark all symbols __external_linkage. * src/cairoint.h: Include slim_internal.h; mark all symbols __internal_linkage. Provide slim_hidden_proto symbols as needed. * src/cairo.c, src/cairo_matrix.c, src/cairo_surface.c, Provide slim_hidden_def symbols as needed. * src/cairo_traps.c (cairo_traps_add_trap): Mark static. (cairo_traps_add_trap_from_points): Likewise. @ text @d43 1 a43 5 XFT_REQUIRED=2.1.1 LIBIC_REQUIRED=0.1.0 SLIM_REQUIRED=0.1.0 PKG_CHECK_MODULES(CAIRO, xft >= $XFT_REQUIRED libic >= $LIBIC_REQUIRED slim >= $SLIM_REQUIRED) @ 1.8 log @fixed some typos in the libic PKG_CHECK @ text @d45 1 d47 1 a47 1 PKG_CHECK_MODULES(CAIRO, xft >= $XFT_REQUIRED libic >= $LIBIC_REQUIRED) @ 1.7 log @Made all changes necessary to abandon the Xc library, (sucking the functionality up into cairo_surface_t instead). Eliminated most of the remaining X datatypes (XFixed, XPointFixed, XLineFixed, XTrapezoid). Fixed some numerical problems relating to pen initialization and intersection calculation. @ text @a26 5 LIBIC_REQUIRES=0.1.0 XFT_REQUIRED=2.1.1 dnl =========================================================================== d43 4 a46 1 PKG_CHECK_MODULES(CAIRO, xft >= $XFT_REQUIRED, libic >= $LIBIC_REQUIRED) @ 1.6 log @Renamed everything from Xr* to cairo_* @ text @d27 1 a27 1 XC_REQUIRED=0.1.0 d48 1 a48 1 PKG_CHECK_MODULES(CAIRO, xc >= $XC_REQUIRED xft >= $XFT_REQUIRED) @ 1.5 log @Lowercase pkg-config module name and distribution tarball name. @ text @d1 1 a1 1 AC_INIT(src/Xr.h) d6 1 a6 1 XR_VERSION=0.1.0 d32 1 a32 1 AM_INIT_AUTOMAKE(xr, $XR_VERSION) d48 3 a50 3 PKG_CHECK_MODULES(XR, xc >= $XC_REQUIRED xft >= $XFT_REQUIRED) AC_SUBST(XR_CFLAGS) AC_SUBST(XR_LIBS) d55 1 a55 1 xr.pc @ 1.4 log @Fixed libtool versioning @ text @d32 1 a32 1 AM_INIT_AUTOMAKE(Xr, $XR_VERSION) d48 1 a48 1 PKG_CHECK_MODULES(XR, Xc >= $XC_REQUIRED xft >= $XFT_REQUIRED) d55 1 a55 1 Xr.pc @ 1.3 log @Cleanup whitespace in configure output @ text @d5 2 a6 6 XR_MAJOR_VERSION=0 XR_MINOR_VERSION=1 XR_MICRO_VERSION=0 AC_SUBST(XR_MAJOR_VERSION) AC_SUBST(XR_MINOR_VERSION) AC_SUBST(XR_MICRO_VERSION) d8 1 a8 1 XR_VERSION=$XR_MAJOR_VERSION.$XR_MINOR_VERSION.$XR_MICRO_VERSION d10 13 a22 1 VERSION_INFO=`expr $XR_MAJOR_VERSION + $XR_MINOR_VERSION`:$XR_MICRO_VERSION:$XR_MINOR_VERSION @ 1.2 log @Require proper Xft version @ text @d40 1 a40 4 PKG_CHECK_MODULES(XR, Xc >= $XC_REQUIRED xft >= $XFT_REQUIRED ) @ 1.1 log @Switched to autotools. Dropped XrPush/PopGroup. Supports non-X Xc rendering. @ text @d20 1 d40 1 a40 1 PKG_CHECK_MODULES(XR, \ d42 1 @