diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/autogen.sh cairomm-1.8.4/autogen.sh --- cairomm-1.8.0/autogen.sh 2008-10-06 15:26:11.000000000 +0200 +++ cairomm-1.8.4/autogen.sh 2009-08-13 18:08:52.000000000 +0200 @@ -1,54 +1,7 @@ -#! /bin/sh -set -e - -# $Id: autogen.sh,v 1.4 2007-03-24 03:05:33 jjongsma Exp $ -# -# Copyright (c) 2002 Daniel Elstner -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License VERSION 2 as -# published by the Free Software Foundation. You are not allowed to -# use any other version of the license; unless you got the explicit -# permission from the author to do so. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. - - -dir=`echo "$0" | sed 's,[^/]*$,,'` -test "x${dir}" = "x" && dir='.' - -if test "x`cd "${dir}" 2>/dev/null && pwd`" != "x`pwd`" -then - echo "This script must be executed directly from the source directory." - exit 1 -fi - -LIBTOOLIZE=${LIBTOOLIZE:-libtoolize} -AUTOCONF=${AUTOCONF:-autoconf} -AUTOMAKE=${AUTOMAKE:-automake} -AUTOHEADER=${AUTOHEADER:-autoheader} - -ACLOCAL_FLAGS="-I m4" -ACLOCAL=`echo $AUTOMAKE | sed s/automake/aclocal/` - -rm -f config.cache acconfig.h - -do_cmd() { - echo "- $@" - $@ -} - -do_cmd $ACLOCAL $ACLOCAL_FLAGS -do_cmd $AUTOHEADER -do_cmd $LIBTOOLIZE --force -do_cmd $AUTOCONF -do_cmd $AUTOMAKE --add-missing --gnu -do_cmd ./configure "$@" +#! /bin/sh -e +test -n "$srcdir" || srcdir=`dirname "$0"` +test -n "$srcdir" || srcdir=. + +mm-common-prepare --force --copy "$srcdir" +autoreconf --force --install "$srcdir" +test -n "$NOCONFIGURE" || "$srcdir/configure" --enable-maintainer-mode "$@" diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/cairommconfig.h cairomm-1.8.4/cairomm/cairommconfig.h --- cairomm-1.8.0/cairomm/cairommconfig.h 2009-01-27 05:06:26.000000000 +0100 +++ cairomm-1.8.4/cairomm/cairommconfig.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,90 +0,0 @@ -/* cairomm/cairommconfig.h. Generated from cairommconfig.h.in by configure. */ -/* cairomm/cairommconfig.h.in. Generated from configure.in by autoheader. */ - -/* Defined when the --enable-api-exceptions configure argument was given */ -#define CAIROMM_EXCEPTIONS_ENABLED 1 - -/* cairomm major version */ -#define CAIROMM_MAJOR_VERSION 1 - -/* cairomm micro version */ -#define CAIROMM_MICRO_VERSION 0 - -/* cairomm minor version */ -#define CAIROMM_MINOR_VERSION 8 - -/* define if the Boost library is available */ -#define HAVE_BOOST - -/* define if the Boost::Unit_Test_Framework library is available */ -#define HAVE_BOOST_UNIT_TEST_FRAMEWORK - -/* Define to 1 if you have the header file. */ -#define HAVE_DLFCN_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_LIST 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MAP 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MATH_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ -#define LT_OBJDIR ".libs/" - -/* Name of package */ -#define PACKAGE "cairomm" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "" - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Version number of package */ -#define VERSION "1.8.0" diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/cairommconfig.h.in cairomm-1.8.4/cairomm/cairommconfig.h.in --- cairomm-1.8.0/cairomm/cairommconfig.h.in 2009-01-27 05:06:29.000000000 +0100 +++ cairomm-1.8.4/cairomm/cairommconfig.h.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,89 +0,0 @@ -/* cairomm/cairommconfig.h.in. Generated from configure.in by autoheader. */ - -/* Defined when the --enable-api-exceptions configure argument was given */ -#undef CAIROMM_EXCEPTIONS_ENABLED - -/* cairomm major version */ -#undef CAIROMM_MAJOR_VERSION - -/* cairomm micro version */ -#undef CAIROMM_MICRO_VERSION - -/* cairomm minor version */ -#undef CAIROMM_MINOR_VERSION - -/* define if the Boost library is available */ -#undef HAVE_BOOST - -/* define if the Boost::Unit_Test_Framework library is available */ -#undef HAVE_BOOST_UNIT_TEST_FRAMEWORK - -/* Define to 1 if you have the header file. */ -#undef HAVE_DLFCN_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_LIST - -/* Define to 1 if you have the header file. */ -#undef HAVE_MAP - -/* Define to 1 if you have the header file. */ -#undef HAVE_MATH_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRING - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H - -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ -#undef LT_OBJDIR - -/* Name of package */ -#undef PACKAGE - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Version number of package */ -#undef VERSION diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/cairomm.h cairomm-1.8.4/cairomm/cairomm.h --- cairomm-1.8.0/cairomm/cairomm.h 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/cairomm.h 2009-08-13 18:09:31.000000000 +0200 @@ -31,7 +31,7 @@ * */ -#include +#include #include #include #include diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/context.cc cairomm-1.8.4/cairomm/context.cc --- cairomm-1.8.0/cairomm/context.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/context.cc 2009-08-13 18:09:31.000000000 +0200 @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include +#include #include #include #include @@ -29,9 +29,7 @@ #endif /* Solaris et. al. need math.h for M_PI too */ -#ifdef HAVE_MATH_H -# include -#endif +#include using namespace Cairo::Private; @@ -209,12 +207,24 @@ check_object_status_and_throw_exception(*this); } +void Context::transform(const cairo_matrix_t& matrix) +{ + cairo_transform(cobj(), &matrix); + check_object_status_and_throw_exception(*this); +} + void Context::set_matrix(const Matrix& matrix) { cairo_set_matrix(cobj(), &matrix); check_object_status_and_throw_exception(*this); } +void Context::set_matrix(const cairo_matrix_t& matrix) +{ + cairo_set_matrix(cobj(), &matrix); + check_object_status_and_throw_exception(*this); +} + void Context::set_identity_matrix() { cairo_identity_matrix(cobj()); @@ -467,12 +477,24 @@ check_object_status_and_throw_exception(*this); } +void Context::set_font_matrix(const cairo_matrix_t& matrix) +{ + cairo_set_font_matrix(cobj(), &matrix); + check_object_status_and_throw_exception(*this); +} + void Context::get_font_matrix(Matrix& matrix) const { cairo_get_font_matrix(const_cast(cobj()), &matrix); check_object_status_and_throw_exception(*this); } +void Context::get_font_matrix(cairo_matrix_t& matrix) const +{ + cairo_get_font_matrix(const_cast(cobj()), &matrix); + check_object_status_and_throw_exception(*this); +} + void Context::set_font_options(const FontOptions& options) { cairo_set_font_options(cobj(), options.cobj()); @@ -698,6 +720,12 @@ check_object_status_and_throw_exception(*this); } +void Context::get_matrix(cairo_matrix_t& matrix) +{ + cairo_get_matrix(cobj(), &matrix); + check_object_status_and_throw_exception(*this); +} + Matrix Context::get_matrix() const { Cairo::Matrix m; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/context.h cairomm-1.8.4/cairomm/context.h --- cairomm-1.8.0/cairomm/context.h 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/context.h 2009-08-08 05:29:43.000000000 +0200 @@ -307,6 +307,9 @@ */ void transform(const Matrix& matrix); + /* To keep 1.6.x ABI */ + void transform(const cairo_matrix_t& matrix); + /** Modifies the current transformation matrix (CTM) by setting it equal to * matrix. * @@ -314,6 +317,9 @@ */ void set_matrix(const Matrix& matrix); + /* To keep 1.6.x ABI */ + void set_matrix(const cairo_matrix_t& matrix); + /** Resets the current transformation matrix (CTM) by setting it equal to the * identity matrix. That is, the user-space and device-space axes will be * aligned and one user-space unit will transform to one device-space unit. @@ -471,6 +477,10 @@ * * @param dx the X offset * @param dy the Y offset + * + * It is an error to call this function with no current point. Doing + * so will cause this to shutdown with a status of + * CAIRO_STATUS_NO_CURRENT_POINT. Cairomm will then throw an exception. */ void rel_move_to(double dx, double dy); @@ -490,6 +500,10 @@ * * @param dx the X offset to the end of the new line * @param dy the Y offset to the end of the new line + * + * It is an error to call this function with no current point. Doing + * so will cause this to shutdown with a status of + * CAIRO_STATUS_NO_CURRENT_POINT. Cairomm will then throw an exception. */ void rel_line_to(double dx, double dy); @@ -514,6 +528,10 @@ * @param dy2 the Y offset to the second control point * @param dx3 the X offset to the end of the curve * @param dy3 the Y offset to the end of the curve + * + * It is an error to call this function with no current point. Doing + * so will cause this to shutdown with a status of + * CAIRO_STATUS_NO_CURRENT_POINT. Cairomm will then throw an exception. */ void rel_curve_to(double dx1, double dy1, double dx2, double dy2, double dx3, double dy3); @@ -703,6 +721,10 @@ void get_font_matrix(Matrix& matrix) const; void set_font_options(const FontOptions& options); + /* To keep 1.6.x ABI */ + void set_font_matrix(const cairo_matrix_t& matrix); + void get_font_matrix(cairo_matrix_t& matrix) const; + //TODO: Documentation. /** * @since 1.8 @@ -815,6 +837,10 @@ * @param matrix return value for the matrix */ void get_matrix(Matrix& matrix); + + /* To keep 1.6.x ABI */ + void get_matrix(cairo_matrix_t& matrix); + /** @since 1.8 */ Matrix get_matrix() const; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/context_surface_quartz.cc cairomm-1.8.4/cairomm/context_surface_quartz.cc --- cairomm-1.8.0/cairomm/context_surface_quartz.cc 2008-12-20 18:03:14.000000000 +0100 +++ cairomm-1.8.4/cairomm/context_surface_quartz.cc 2009-08-13 18:08:52.000000000 +0200 @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include +#include #include #include diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/context_surface_win32.cc cairomm-1.8.4/cairomm/context_surface_win32.cc --- cairomm-1.8.0/cairomm/context_surface_win32.cc 2008-12-20 18:03:14.000000000 +0100 +++ cairomm-1.8.4/cairomm/context_surface_win32.cc 2009-08-13 18:08:52.000000000 +0200 @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include +#include #include #include diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/context_surface_xlib.cc cairomm-1.8.4/cairomm/context_surface_xlib.cc --- cairomm-1.8.0/cairomm/context_surface_xlib.cc 2008-12-20 18:03:14.000000000 +0100 +++ cairomm-1.8.4/cairomm/context_surface_xlib.cc 2009-08-13 18:08:52.000000000 +0200 @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include +#include #include #include diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/filelist.am cairomm-1.8.4/cairomm/filelist.am --- cairomm-1.8.0/cairomm/filelist.am 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/cairomm/filelist.am 2009-08-13 18:08:52.000000000 +0200 @@ -0,0 +1,44 @@ +## This file is part of cairomm. + +cairomm_cc = \ + context.cc \ + context_surface_quartz.cc \ + context_surface_win32.cc \ + context_surface_xlib.cc \ + exception.cc \ + fontface.cc \ + fontoptions.cc \ + matrix.cc \ + path.cc \ + pattern.cc \ + private.cc \ + quartz_font.cc \ + quartz_surface.cc \ + scaledfont.cc \ + surface.cc \ + win32_font.cc \ + win32_surface.cc \ + xlib_surface.cc + +cairomm_public_h = \ + cairomm.h \ + context.h \ + enums.h \ + exception.h \ + fontface.h \ + fontoptions.h \ + matrix.h path.h \ + pattern.h \ + quartz_font.h \ + quartz_surface.h \ + refptr.h \ + scaledfont.h \ + surface.h \ + types.h \ + win32_font.h \ + win32_surface.h \ + xlib_surface.h + +cairomm_private_h = \ + context_private.h \ + private.h diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/Makefile.am cairomm-1.8.4/cairomm/Makefile.am --- cairomm-1.8.0/cairomm/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/Makefile.am 2009-08-13 18:08:52.000000000 +0200 @@ -1,26 +1,30 @@ -SUBDIRS = +## Copyright (c) 2009 Openismus GmbH +## +## This file is part of cairomm. +## +## cairomm is free software: you can redistribute it and/or modify it +## under the terms of the GNU Lesser General Public License as published +## by the Free Software Foundation, either version 2.1 of the License, +## or (at your option) any later version. +## +## cairomm is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +## See the GNU Lesser General Public License for more details. +## +## You should have received a copy of the GNU Lesser General Public License +## along with this library. If not, see . -INCLUDES = -I$(top_srcdir) @CAIROMM_CFLAGS@ +include $(srcdir)/filelist.am -h_sources_public = cairomm.h context.h enums.h fontface.h fontoptions.h matrix.h path.h pattern.h quartz_font.h quartz_surface.h surface.h xlib_surface.h win32_font.h win32_surface.h exception.h refptr.h scaledfont.h types.h cairommconfig.h -h_sources_private = private.h context_private.h -cc_sources = context.cc fontface.cc fontoptions.cc matrix.cc path.cc pattern.cc quartz_font.cc quartz_surface.cc surface.cc xlib_surface.cc win32_font.cc win32_surface.cc exception.cc scaledfont.cc -cc_sources_private = private.cc context_surface_quartz.cc context_surface_win32.cc context_surface_xlib.cc - -# Support for DLL on cygwin/mingw using libtool > 1.4 -if PLATFORM_WIN32 -win32_dlls_ldflags = -no-undefined -Wl,--export-all-symbols -else -win32_dlls_ldflags = -endif +AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I. $(CAIROMM_CFLAGS) +AM_CXXFLAGS = $(CAIROMM_WXXFLAGS) lib_LTLIBRARIES = libcairomm-1.0.la -libcairomm_1_0_la_LDFLAGS = -version-info $(GENERIC_LIBRARY_VERSION) $(win32_dlls_ldflags) -libcairomm_1_0_la_LIBADD = @CAIROMM_LIBS@ -libcairomm_1_0_la_SOURCES = $(cc_sources) $(h_sources_public) $(h_sources_private) $(cc_sources_private) -# Install the headers: -library_includedir=$(includedir)/cairomm-1.0/cairomm -library_include_HEADERS = $(h_sources_public) +libcairomm_1_0_la_SOURCES = $(cairomm_cc) $(cairomm_private_h) +libcairomm_1_0_la_LDFLAGS = -no-undefined -version-info $(CAIROMM_SO_VERSION) +libcairomm_1_0_la_LIBADD = $(CAIROMM_LIBS) -EXTRA_DIST = cairommconfig.h.in +cairomm_includedir = $(includedir)/$(CAIROMM_MODULE_NAME)/cairomm +cairomm_include_HEADERS = $(cairomm_public_h) diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/pattern.cc cairomm-1.8.4/cairomm/pattern.cc --- cairomm-1.8.0/cairomm/pattern.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/pattern.cc 2009-07-05 14:06:39.000000000 +0200 @@ -65,6 +65,18 @@ check_object_status_and_throw_exception(*this); } +void Pattern::set_matrix(const cairo_matrix_t& matrix) +{ + cairo_pattern_set_matrix(m_cobject, (cairo_matrix_t*)&matrix); + check_object_status_and_throw_exception(*this); +} + +void Pattern::get_matrix(cairo_matrix_t& matrix) const +{ + cairo_pattern_get_matrix(m_cobject, (cairo_matrix_t*)&matrix); + check_object_status_and_throw_exception(*this); +} + Matrix Pattern::get_matrix() const { Cairo::Matrix m; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/pattern.h cairomm-1.8.4/cairomm/pattern.h --- cairomm-1.8.0/cairomm/pattern.h 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/pattern.h 2009-07-05 14:06:39.000000000 +0200 @@ -59,6 +59,9 @@ /** @since 1.8 */ Matrix get_matrix() const; + /* To keep 1.6.x ABI */ + void set_matrix(const cairo_matrix_t& matrix); + void get_matrix(cairo_matrix_t& matrix) const; PatternType get_type() const; typedef cairo_pattern_t cobject; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/scaledfont.cc cairomm-1.8.4/cairomm/scaledfont.cc --- cairomm-1.8.0/cairomm/scaledfont.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/scaledfont.cc 2009-07-05 14:06:39.000000000 +0200 @@ -31,8 +31,8 @@ m_cobject = cairo_scaled_font_reference(cobj); } -ScaledFont::ScaledFont(const RefPtr& font_face, const Matrix& font_matrix, - const Matrix& ctm, const FontOptions& options) +ScaledFont::ScaledFont(const RefPtr& font_face, const cairo_matrix_t& font_matrix, + const cairo_matrix_t& ctm, const FontOptions& options) { m_cobject = cairo_scaled_font_create(font_face->cobj(), @@ -54,6 +54,12 @@ return RefPtr(new ScaledFont(font_face, font_matrix, ctm, options)); } +RefPtr ScaledFont::create(const RefPtr& font_face, const cairo_matrix_t& font_matrix, + const cairo_matrix_t& ctm, const FontOptions& options) +{ + return RefPtr(new ScaledFont(font_face, font_matrix, ctm, options)); +} + void ScaledFont::extents(FontExtents& extents) const { cairo_scaled_font_extents(m_cobject, static_cast(&extents)); @@ -103,12 +109,25 @@ check_object_status_and_throw_exception(*this); } +void ScaledFont::get_font_matrix(cairo_matrix_t& font_matrix) const +{ + cairo_scaled_font_get_font_matrix(m_cobject, + &font_matrix); + check_object_status_and_throw_exception(*this); +} + void ScaledFont::get_ctm(Matrix& ctm) const { cairo_scaled_font_get_ctm(m_cobject, &ctm); check_object_status_and_throw_exception(*this); } +void ScaledFont::get_ctm(cairo_matrix_t& ctm) const +{ + cairo_scaled_font_get_ctm(m_cobject, &ctm); + check_object_status_and_throw_exception(*this); +} + FontType ScaledFont::get_type() const { cairo_font_type_t font_type = cairo_scaled_font_get_type(m_cobject); diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairomm/scaledfont.h cairomm-1.8.4/cairomm/scaledfont.h --- cairomm-1.8.0/cairomm/scaledfont.h 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/cairomm/scaledfont.h 2009-07-05 14:06:39.000000000 +0200 @@ -82,6 +82,9 @@ */ static RefPtr create(const RefPtr& font_face, const Matrix& font_matrix, const Matrix& ctm, const FontOptions& options = FontOptions()); + /* To keep 1.6.x ABI */ + static RefPtr create(const RefPtr& font_face, const cairo_matrix_t& font_matrix, + const cairo_matrix_t& ctm, const FontOptions& options = FontOptions()); // NOTE: the constructor doesn't take a RefPtr because the // FontFace object can be changed in this constructor (in the case of user // fonts, the FontFace becomes immutable, i.e. you can't call any set_*_func() @@ -164,11 +167,15 @@ * @since 1.2 */ void get_font_matrix(Matrix& font_matrix) const; + /* To keep 1.6.x ABI */ + void get_font_matrix(cairo_matrix_t& font_matrix) const; /** Gets the CTM with which the ScaledFont was created. * @since 1.2 */ void get_ctm(Matrix& ctm) const; + /* To keep 1.6.x ABI */ + void get_ctm(cairo_matrix_t& ctm) const; /** Gets the type of scaled Font * @since 1.2 @@ -215,8 +222,9 @@ void get_scale_matrix(Matrix& scale_matrix) const; protected: - ScaledFont(const RefPtr& font_face, const Matrix& font_matrix, - const Matrix& ctm, const FontOptions& options = FontOptions()); + /* Cairo::Matrix parameters changed to cairo_matrix_t */ + ScaledFont(const RefPtr& font_face, const cairo_matrix_t& font_matrix, + const cairo_matrix_t& ctm, const FontOptions& options = FontOptions()); /** The underlying C cairo object that is wrapped by this ScaledFont */ cobject* m_cobject; }; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/cairommconfig.h.in cairomm-1.8.4/cairommconfig.h.in --- cairomm-1.8.0/cairommconfig.h.in 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/cairommconfig.h.in 2009-08-13 18:08:52.000000000 +0200 @@ -0,0 +1,13 @@ +/* This file is part of cairomm. */ + +/* Defined when the --enable-api-exceptions configure argument was given */ +#undef CAIROMM_EXCEPTIONS_ENABLED + +/* Major version number of cairomm. */ +#undef CAIROMM_MAJOR_VERSION + +/* Minor version number of cairomm. */ +#undef CAIROMM_MINOR_VERSION + +/* Micro version number of cairomm. */ +#undef CAIROMM_MICRO_VERSION diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/ChangeLog cairomm-1.8.4/ChangeLog --- cairomm-1.8.0/ChangeLog 2009-01-27 05:08:40.000000000 +0100 +++ cairomm-1.8.4/ChangeLog 2009-08-13 18:51:42.000000000 +0200 @@ -1,3 +1,169 @@ +2009-08-13 Daniel Elstner + + Distribute mm-common documentation utilities + + * docs/Makefile.am (dist_noinst_DATA): List the utility scripts + installed by mm-common-prepare here, so they will be distributed. + +2009-08-13 Daniel Elstner + + Add missing call to MM_CONFIG_DOCTOOL_DIR + + * configure.ac: Call MM_CONFIG_DOCTOOL_DIR([docs]) to indicate to + mm-common-prepare that this module cannot depend on the utilities + shipped with glibmm, and needs its own copies. + +2009-08-13 Daniel Elstner + + Fix left-over cairomm/cairommconfig.h includes + + * cairomm/cairomm.h: Remove directory prefix from cairommconfig.h + include statement. + * cairomm/context.cc: Include unconditionally instead of + conditionally including . + * examples/surfaces/*.cc: ditto, + * examples/text/text-rotate.cc: ditto. + +2009-08-13 Daniel Elstner + + Review and clean up after build overhaul + + * autogen.sh: Pass --enable-maintainer-mode to ./configure since the + automatic rebuild of the reference documentation is only enabled in + maintainer mode. AM_MAINTAINER_MODE is already in configure.ac. + * configure.ac (AC_CONFIG_HEADERS): Prepend build/config.h to the + list of header files, because the first file in the list has its .in + file generated by autoheader, and will thus include every AC_DEFINE + from every Autoconf macro that is used. The macros defined in the + installed cairommconfig.h header should be namespaced and limited to + meta information about the installed cairomm library. + Also move cairommconfig.h to the top-level directory, in order to + avoid the need to add the cairomm/ subdirectory to the include path. + (PKG_CHECK_MODULES): Collapse the checks for optional cairo modules + into a loop, and use PKG_CHECK_EXISTS() instead of the full-blown + PKG_CHECK_MODULES(). Also, be a bit cleverer about the lists of .pc + files and module names generated along the way. + (AC_CONFIG_FILES): List all potentially installed files literally, + instead of creating the list of output files dynamically. This is + much simpler and also gets us free shipping. Remove data/Makefile. + * cairommconfig.h.in: Add file to repository, as it should not be + autogenerated. Of the content, keep only the CAIROMM_ namespaced + macros. + * cairomm/context*.cc: Remove cairomm/ prefix from cairommconfig.h + include statements. This was already wrong before, but moving the + file around made it visible. + * Makefile.am: Clean up a bit. + (DIST_SUBDIRS): Have Automake figure it out automatically. + (cairomm_include_HEADERS): Remove, as cairomm/cairomm.h is already + installed in cairomm/Makefile.am. + (nodist_cairomm_libinclude_HEADERS): Relocate cairommconfig.h to + the top-level directory. + (nodist_pkgconfig_DATA): Use $(CAIROMM_INSTALL_PC) substitution from + configure.ac to install the appropriate pkg-config data files. + * cairomm/Makefile.am: Rewrite without using compile-binding.am, as + it is not really the appropriate tool for the cairomm job. + * cairomm/filelist.am (cairomm_cc): Rename from $(files_extra_cc). + (cairomm_public_h): Rename variable from $(files_extra_h) and remove + cairommconfig.h from the list. + (cairomm_private_h): Rename variable from $(files_extra_ph). + * docs/Makefile.am (doc_input): Adjust variable names. + (dist_noinst_DATA): Add reference/cairomm.css to the list. + (pubdocbase): Define for completeness. + (htmlrefpub): Correct documentation URL. + * docs/Doxyfile.in: Strip trailing whitespace from every line. + (STRIP_FROM_PATH), (STRIP_FROM_INC_PATH), (INCLUDE_PATH): Do not + strip the cairomm/ subdirectory prefix from the displayed filenames. + (EXCLUDE): Remove list of files to exclude, since the list of input + files is specified explicitly with the new build organization. + (EXPAND_AS_DEFINED): Expand version number macros, although at the + moment they are probably not used anywhere in the public headers. + * data/cairomm-*.pc.in: Use @PACKAGE_VERSION@ instead of @VERSION@. + * data/cairomm-1.0.pc.in (htmlrefpub): Correct documentation URL. + (Cflags): Add missing -I${libdir}/@CAIROMM_MODULE_NAME@/include. + * data/Makefile.am: Delete now unused build file. + * docs/reference/Makefile.am: Delete left-over build file. + +2009-08-12 David King + + * MSVC_Net2005/**/Makefile.am: + * MSVC_Net2008/**/Makefile.am: Remove recursive build files. + * MSVC_Net2005/filelist.am: + * MSVC_Net2008/filelist.am: Recursively list all files that should go + into the distribution. + * configure.ac (AC_CONFIG_FILES): Remove all Makefile outputs to the + MSVC subdirectories. + (AC_CONFIG_COMMANDS): Copy the configuration header files into the + MSVC subdirectories by making config.status execute custom + configuration commands. This is easier than doing it at the Makefile + level, where it was previously implemented. + * Makefile.am: Include the filelist.am files from the MSVC + subdirectories. + (SUBDIRS): Remove MSVC_Net200[58] directories from the list. + (dist_noinst_DATA): Distribute the MSVC project files. + (DISTCLEANFILES): Include the copied configuration header files in a + distclean. + +2009-08-12 David King + + * .gitignore: Add new generated documentation files. + * Makefile.am: Remove old documentation generation build. + * configure.ac: + * docs/reference/Makefile.am: Remove, with switch to non-recursive + documentation build. + * data/cairomm-1.0.pc.in: + * docs/Makefile.am: Switch to new documentation build infrastructure + from mm-common. + * docs/reference/Doxyfile.in: Modernise and disable several unused + features of the Doxygen output. + +2009-08-12 David King + + * .gitignore: Add INSTALL, mm-common *.am files and .dirstamp. + * Makefile.am: Change VERSION to PACKAGE_VERSION. Begin transition + to use of new build infrastructure. + * cairomm/Makefile.am: Simplify by moving significant portions to + toplevel Makefile.am. + * cairomm/filelist.am: List of files for libcairomm. Move private + source files to files_extra_cc. + * configure.ac: Use MM_INIT_MODULE and remove example subdirectory + Makefile.am. + * examples/surfaces/Makefile.am: + * examples/text/Makefile.am: Remove. + * examples/Makefile.am: Convert examples tree to non-recursive + build, with single, slimmer Makefile.am. + +2009-08-11 David King + + * autogen.sh: Replace with a simple wrapper around mm-common-prepare + and autoreconf. + * build/*.m4: Move from m4 directory. + * Makefile.am: Rename m4 directory to build. + * configure.ac: Rename from configure.in, as it is recommended by + Autoconf developers and currently required by mm-common-prepare. Major + update to take advantage of mm-common build infrastructure. + * INSTALL: Remove from repository, using GNU install instructions + instead. + * cairomm/Makefile.am: Remove unnecessary win32 conditionals. + +2009-07-07 Christopher Harvey + + * cairomm/context.h + + Added some documentation to the rel_* functions in the Context class + about their behavior when there is no current point. + +2009-07-05 Jānis Rukšāns + + Reviewed by Jonathon Jongsma + + * cairomm/context.cc: + * cairomm/context.h: + * cairomm/pattern.cc: + * cairomm/pattern.h: + * cairomm/scaledfont.cc: + * cairomm/scaledfont.h: Restore 1.6.x ABI / API that was + unintentionally broken by the matrix changes in the 1.8.x series + 2009-01-26 Jonathon Jongsma * NEWS: diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/configure.ac cairomm-1.8.4/configure.ac --- cairomm-1.8.0/configure.ac 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/configure.ac 2009-10-19 16:01:52.000000000 +0200 @@ -0,0 +1,143 @@ +## Copyright (c) 2009 Openismus GmbH +## +## This file is part of cairomm. +## +## cairomm is free software: you can redistribute it and/or modify it +## under the terms of the GNU Lesser General Public License as published +## by the Free Software Foundation, either version 2.1 of the License, +## or (at your option) any later version. +## +## cairomm is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +## See the GNU Lesser General Public License for more details. +## +## You should have received a copy of the GNU Lesser General Public License +## along with this library. If not, see . + +AC_INIT([cairomm], [1.8.4], [cairo@cairographics.org], [cairomm]) +AC_PREREQ([2.62]) + +AC_CONFIG_SRCDIR([cairomm/cairomm.h]) +AC_CONFIG_AUX_DIR([build]) +AC_CONFIG_MACRO_DIR([build]) +AC_CONFIG_HEADERS([build/config.h cairommconfig.h]) + +AM_INIT_AUTOMAKE([1.10 -Wno-portability no-define nostdinc tar-pax]) +AM_MAINTAINER_MODE +AC_ARG_VAR([ACLOCAL_FLAGS], [aclocal flags, e.g. -I ]) + +MM_INIT_MODULE([cairomm-1.0], m4_expand([AC_PACKAGE_VERSION])) +MM_CONFIG_DOCTOOL_DIR([docs]) + +# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html +AC_SUBST([CAIROMM_SO_VERSION], [5:0:4]) + +AC_PROG_CXX +AC_DISABLE_STATIC +AC_LIBTOOL_WIN32_DLL +AC_PROG_LIBTOOL +PKG_PROG_PKG_CONFIG + +AC_SUBST([CAIROMM_MODULES], ['cairo >= 1.8.0 sigc++-2.0']) +cairomm_allmodules=$CAIROMM_MODULES +CAIROMM_INSTALL_PC='data/cairomm-1.0.pc' + +for cairomm_mod in ft pdf png ps svg xlib xlib-render \ + win32 win32-font quartz quartz-font quartz-image +do + PKG_CHECK_EXISTS([cairo-$cairomm_mod], + [ + cairomm_allmodules="$cairomm_allmodules cairo-$cairomm_mod" + CAIROMM_INSTALL_PC="$CAIROMM_INSTALL_PC data/cairomm-$cairomm_mod-1.0.pc" + ]) +done +AC_SUBST([CAIROMM_INSTALL_PC]) +PKG_CHECK_MODULES([CAIROMM], [$cairomm_allmodules]) + +MM_ARG_ENABLE_DOCUMENTATION +MM_ARG_WITH_TAGFILE_DOC([libstdc++.tag], [mm-common-libstdc++]) +MM_ARG_WITH_TAGFILE_DOC([libsigc++-2.0.tag], [sigc++-2.0]) + +AC_LANG([C++]) +MM_ARG_ENABLE_WARNINGS([CAIROMM_WXXFLAGS], + [-Wall], + [-pedantic -Wall -Wextra]) + +AC_ARG_ENABLE(tests, + AC_HELP_STRING([--enable-tests=yes|no], + [enable automated tests (default is no)]), + ENABLE_TESTS=$enableval, + ENABLE_TESTS=no) + +if test x$ENABLE_TESTS = xyes ; then +####################################################### +#boost build system sucks no end. +#it is damn hard to detect the version of boost +#that is installed. All that because our friends of +#the boost project don't want to integrate to autofoo. +#So we resort to hugly hacks to detect the version of +#boost that is installed. +####################################################### + AX_BOOST_BASE([1.33.1]) + AX_BOOST_UNIT_TEST_FRAMEWORK + + dnl AX_BOOST_BASE defines a --with-boost[=DIR] option that sets + dnl $ac_boost_path as a custom boost prefix, so use that if it was specified + if test x$ac_boost_path != x; then + unit_framework_lib_candidates="$ac_boost_path/lib/libboost_unit_test_framework.a + $ac_boost_path/lib/libboost_unit_test_framework-st.a + $ac_boost_path/libboost_unit_test_framework.a + $ac_boost_path/libboost_unit_test_framework-st.a" + else + unit_framework_lib_candidates="/usr/lib/libboost_unit_test_framework-st.a + /usr/lib/libboost_unit_test_framework.a + /usr/lib64/libboost_unit_test_framework-st.a + /usr/lib64/libboost_unit_test_framework.a" + fi + for i in $unit_framework_lib_candidates ; do + if test -f $i ; then + BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB=$i + break + fi + done + if test x$BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB != x; then + AC_SUBST(BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB) + AC_MSG_NOTICE(support of automated tests enabled) + else + AC_MSG_ERROR([Tried to enable unit tests, but couldn't find Boost Unit Test framework static library candidate. You can specify a custom location using --with-boost=/path/to/lib]) + fi +else + AC_MSG_NOTICE(disabled support of automated tests) +fi + +AM_CONDITIONAL([AUTOTESTS], [test "x$ENABLE_TESTS" = xyes]) +CAIROMM_ARG_ENABLE_API_EXCEPTIONS + +AC_CONFIG_FILES([Makefile + cairomm/Makefile + tests/Makefile + examples/Makefile + docs/Makefile + docs/reference/Doxyfile + data/cairomm-1.0.pc + data/cairomm-ft-1.0.pc + data/cairomm-pdf-1.0.pc + data/cairomm-png-1.0.pc + data/cairomm-ps-1.0.pc + data/cairomm-quartz-1.0.pc + data/cairomm-quartz-font-1.0.pc + data/cairomm-quartz-image-1.0.pc + data/cairomm-svg-1.0.pc + data/cairomm-win32-1.0.pc + data/cairomm-win32-font-1.0.pc + data/cairomm-xlib-1.0.pc + data/cairomm-xlib-xrender-1.0.pc + MSVC_Net2005/cairomm/cairomm.rc + MSVC_Net2008/cairomm/cairomm.rc]) + +AC_CONFIG_COMMANDS([MSVC_Net2005/cairomm/cairommconfig.h], + [cp -f cairommconfig.h MSVC_Net2005/cairomm/cairommconfig.h]) +AC_CONFIG_COMMANDS([MSVC_Net2008/cairomm/cairommconfig.h], + [cp -f cairommconfig.h MSVC_Net2008/cairomm/cairommconfig.h]) +AC_OUTPUT diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/configure.in cairomm-1.8.4/configure.in --- cairomm-1.8.0/configure.in 2009-01-27 05:02:25.000000000 +0100 +++ cairomm-1.8.4/configure.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,339 +0,0 @@ -AC_INIT(cairomm/cairomm.h) - -#release versioning -GENERIC_MAJOR_VERSION=1 -GENERIC_MINOR_VERSION=8 -GENERIC_MICRO_VERSION=0 -GENERIC_VERSION=$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION.$GENERIC_MICRO_VERSION -AC_SUBST(GENERIC_MAJOR_VERSION) -AC_SUBST(GENERIC_MINOR_VERSION) -AC_SUBST(GENERIC_MICRO_VERSION) -AC_SUBST(GENERIC_VERSION) - -#shared library versioning -GENERIC_LIBRARY_VERSION=4:0:3 -# | | | -# +------+ | +---+ -# | | | -# current:revision:age -# | | | -# | | +- increment if interfaces have been added -# | | set to zero if interfaces have been removed -# or changed -# | +- increment if source code has changed -# | set to zero if current is incremented -# +- increment if interfaces have been added, removed or changed -AC_SUBST(GENERIC_LIBRARY_VERSION) - -VERSION=$GENERIC_VERSION - -AM_INIT_AUTOMAKE(cairomm, $GENERIC_VERSION) - -# define values for config header -AC_DEFINE_UNQUOTED([CAIROMM_MAJOR_VERSION], $GENERIC_MAJOR_VERSION, [cairomm major version]) -AC_DEFINE_UNQUOTED([CAIROMM_MINOR_VERSION], $GENERIC_MINOR_VERSION, [cairomm minor version]) -AC_DEFINE_UNQUOTED([CAIROMM_MICRO_VERSION], $GENERIC_MICRO_VERSION, [cairomm micro version]) -AC_CONFIG_HEADER(cairomm/cairommconfig.h) - -AC_PROG_CXX -AC_PROG_CXXCPP -AC_LANG_CPLUSPLUS -AC_PROG_INSTALL -AC_LIBTOOL_WIN32_DLL -AM_PROG_LIBTOOL - -dnl Used for enabling the "-no-undefined" and "-export-all-symbols" flags -dnl while generating DLLs. Borrowed from the official gtk+-2 configure.in -AC_MSG_CHECKING([for some Win32 platform]) -case "$host" in - *-*-mingw*|*-*-cygwin*) - platform_win32=yes - ;; - *) - platform_win32=no - ;; -esac -AC_MSG_RESULT([$platform_win32]) -AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes") - -AC_MSG_CHECKING([for native Win32]) -case "$host" in - *-*-mingw*) - os_win32=yes - ;; - *) - os_win32=no - ;; -esac -AC_MSG_RESULT([$os_win32]) -AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes") - -# Ensure MSVC-compatible struct packing convention is used when -# compiling for Win32 with gcc. -# What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while -# gcc2 uses "-fnative-struct". -if test x"$os_win32" = xyes; then - if test x"$GCC" = xyes; then - msnative_struct='' - AC_MSG_CHECKING([how to get MSVC-compatible struct packing]) - if test -z "$ac_cv_prog_CC"; then - our_gcc="$CC" - else - our_gcc="$ac_cv_prog_CC" - fi - case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in - 2.) - if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then - msnative_struct='-fnative-struct' - fi - ;; - *) - if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then - msnative_struct='-mms-bitfields' - fi - ;; - esac - if test x"$msnative_struct" = x ; then - AC_MSG_RESULT([no way]) - AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code]) - else - CXXFLAGS="$CXXFLAGS $msnative_struct" - AC_MSG_RESULT([${msnative_struct}]) - fi - fi -fi - -AC_CHECK_HEADERS(string list map, , exit) -dnl some platforms (e.g. Solaris) need additional C headers included so -dnl that there are always prototypes and defines available. -AC_CHECK_HEADERS(math.h) - -######################## -# Determine Dependencies -######################## -dnl base dependencies -DEPS_PC="cairo >= 1.8.0 - sigc++-2.0" - -dnl always install the 'base' pkg-config file -INSTALLED_PC="cairomm-1.0.pc" - -dnl then check and add additional dependencies -PKG_CHECK_MODULES(CAIROFT, cairo-ft, [HAS_FT=yes], [HAS_FT=no]) -if test x$HAS_FT = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-ft-1.0.pc" - DEPS_PC="$DEPS_PC cairo-ft" -fi - -PKG_CHECK_MODULES(CAIROPDF, cairo-pdf, [HAS_PDF=yes], [HAS_PDF=no]) -if test x$HAS_PDF = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-pdf-1.0.pc" - DEPS_PC="$DEPS_PC cairo-pdf" -fi - -PKG_CHECK_MODULES(CAIROPNG, cairo-png, [HAS_PNG=yes], [HAS_PNG=no]) -if test x$HAS_PNG = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-png-1.0.pc" - DEPS_PC="$DEPS_PC cairo-png" -fi - -PKG_CHECK_MODULES(CAIROPS, cairo-ps, [HAS_PS=yes], [HAS_PS=no]) -if test x$HAS_PS = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-ps-1.0.pc" - DEPS_PC="$DEPS_PC cairo-ps" -fi - -PKG_CHECK_MODULES(CAIROSVG, cairo-svg, [HAS_SVG=yes], [HAS_SVG=no]) -if test x$HAS_SVG = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-svg-1.0.pc" - DEPS_PC="$DEPS_PC cairo-svg" -fi - -PKG_CHECK_MODULES(CAIROXLIB, cairo-xlib, [HAS_XLIB=yes], [HAS_XLIB=no]) -if test x$HAS_XLIB = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-xlib-1.0.pc" - DEPS_PC="$DEPS_PC cairo-xlib" -fi - -PKG_CHECK_MODULES(CAIROXLIBXRENDER, cairo-xlib-xrender, [HAS_XLIBXRENDER=yes], [HAS_XLIBXRENDER=no]) -if test x$HAS_XLIBXRENDER = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-xlib-xrender-1.0.pc" - DEPS_PC="$DEPS_PC cairo-xlib-xrender" -fi - -PKG_CHECK_MODULES(CAIROWIN32, cairo-win32, [HAS_WIN32=yes], [HAS_WIN32=no]) -if test x$HAS_WIN32 = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-win32-1.0.pc" - DEPS_PC="$DEPS_PC cairo-win32" -fi - -PKG_CHECK_MODULES(CAIROWIN32FONT, cairo-win32-font, [HAS_WIN32FONT=yes], [HAS_WIN32FONT=no]) -if test x$HAS_WIN32FONT = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-win32-font-1.0.pc" - DEPS_PC="$DEPS_PC cairo-win32-font" -fi - -PKG_CHECK_MODULES(CAIROQUARTZ, cairo-quartz, [HAS_QUARTZ=yes], [HAS_QUARTZ=no]) -if test x$HAS_QUARTZ = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-quartz-1.0.pc" - DEPS_PC="$DEPS_PC cairo-quartz" -fi - -PKG_CHECK_MODULES(CAIROQUARTZFONT, cairo-quartz-font, [HAS_QUARTZFONT=yes], [HAS_QUARTZFONT=no]) -if test x$HAS_QUARTZFONT = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-quartz-font-1.0.pc" - DEPS_PC="$DEPS_PC cairo-quartz-font" -fi - -PKG_CHECK_MODULES(CAIROQUARTZIMAGE, cairo-quartz-image, [HAS_QUARTZIMAGE=yes], [HAS_QUARTZIMAGE=no]) -if test x$HAS_QUARTZIMAGE = xyes; then - INSTALLED_PC="$INSTALLED_PC cairomm-quartz-image-1.0.pc" - DEPS_PC="$DEPS_PC cairo-quartz-image" -fi - -PKG_CHECK_MODULES(CAIROMM, [$DEPS_PC]) - -AC_SUBST(INSTALLED_PC) - -CONFIG_PC="" -for pc in $INSTALLED_PC; do - CONFIG_PC="$CONFIG_PC data/$pc" -done - - -AC_ARG_ENABLE(tests, - AC_HELP_STRING([--enable-tests=yes|no], - [enable automated tests (default is no)]), - ENABLE_TESTS=$enableval, - ENABLE_TESTS=auto) - -if test x$ENABLE_TESTS = xauto ; then - dnl unless explicitly disabled, attempt to enable tests for developers and - dnl disable it for others - if test x$CAIROMM_DEVEL = xon ; then - ENABLE_TESTS=yes - else - ENABLE_TESTS=no - fi -fi - -if test x$ENABLE_TESTS = xyes ; then -####################################################### -#boost build system sucks no end. -#it is damn hard to detect the version of boost -#that is installed. All that because our friends of -#the boost project don't want to integrate to autofoo. -#So we resort to hugly hacks to detect the version of -#boost that is installed. -####################################################### - AX_BOOST_BASE([1.33.1]) - AX_BOOST_UNIT_TEST_FRAMEWORK - - dnl AX_BOOST_BASE defines a --with-boost[=DIR] option that sets - dnl $ac_boost_path as a custom boost prefix, so use that if it was specified - if test x$ac_boost_path != x; then - unit_framework_lib_candidates="$ac_boost_path/lib/libboost_unit_test_framework.a - $ac_boost_path/lib/libboost_unit_test_framework-st.a - $ac_boost_path/libboost_unit_test_framework.a - $ac_boost_path/libboost_unit_test_framework-st.a" - else - unit_framework_lib_candidates="/usr/lib/libboost_unit_test_framework-st.a - /usr/lib/libboost_unit_test_framework.a - /usr/lib64/libboost_unit_test_framework-st.a - /usr/lib64/libboost_unit_test_framework.a" - fi - for i in $unit_framework_lib_candidates ; do - if test -f $i ; then - BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB=$i - break - fi - done - if test x$BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB != x; then - AC_SUBST(BOOST_UNIT_TEST_FRAMEWORK_STATIC_LIB) - AC_MSG_NOTICE(support of automated tests enabled) - else - AC_MSG_ERROR([Tried to enable unit tests, but couldn't find Boost Unit Test framework static library candidate. You can specify a custom location using --with-boost=/path/to/lib]) - fi -else - AC_MSG_NOTICE(disabled support of automated tests) -fi -AM_CONDITIONAL(AUTOTESTS, test x$ENABLE_TESTS = xyes) - -dnl enable compiler warnings when the CAIROMM_DEVEL environment variable is set to 'on' -if test "x$CAIROMM_DEVEL" = "xon" ; then - CXXFLAGS="$CXXFLAGS -Wall -g -Werror -Wextra" -fi - -CAIROMM_ARG_ENABLE_API_EXCEPTIONS() - -dnl Check whether to build the documentation directory -DOCS_SUBDIR="" dnl set DOCS_SUBDIR initially blank -AC_ARG_ENABLE(docs, [AC_HELP_STRING([--enable-docs], - [build the included docs [default=yes]])],, - [enable_docs=yes]) -if test "x$enable_docs" = "xyes"; then - dnl check if doxygen is installed - AC_CHECK_PROGS(DOXYGEN, [doxygen], no) - if test x$DOXYGEN = xno; then - AC_MSG_WARN([Doxygen not found, documentation will not be rebuilt]) - else - dnl check if graphviz / dot is installed (used by doxygen) - AC_CHECK_PROGS(DOT, [dot], no) - if test x$DOT = xno; then - AC_MSG_WARN([graphviz / dot not found, documentation graphs will not be rebuilt]) - fi - fi - - DOCS_SUBDIR="docs" - AC_CONFIG_FILES( - docs/Makefile - docs/reference/Makefile - docs/reference/Doxyfile - ) -fi -AC_SUBST(DOCS_SUBDIR) - - -AC_CONFIG_FILES( - Makefile - cairomm/Makefile - - data/Makefile - - examples/Makefile - examples/surfaces/Makefile - examples/text/Makefile - - tests/Makefile - - $CONFIG_PC -) - -AC_CONFIG_FILES([ - MSVC_Net2005/Makefile - MSVC_Net2005/gendef/Makefile - MSVC_Net2005/cairomm/Makefile - MSVC_Net2005/cairomm/cairomm.rc - MSVC_Net2005/examples/Makefile - MSVC_Net2005/examples/pdf-surface/Makefile - MSVC_Net2005/examples/ps-surface/Makefile - MSVC_Net2005/examples/svg-surface/Makefile - MSVC_Net2005/examples/image-surface/Makefile - MSVC_Net2005/examples/text-rotate/Makefile - MSVC_Net2005/examples/toy-text/Makefile - MSVC_Net2005/examples/user-font/Makefile - MSVC_Net2008/Makefile - MSVC_Net2008/gendef/Makefile - MSVC_Net2008/cairomm/Makefile - MSVC_Net2008/cairomm/cairomm.rc - MSVC_Net2008/examples/Makefile - MSVC_Net2008/examples/pdf-surface/Makefile - MSVC_Net2008/examples/ps-surface/Makefile - MSVC_Net2008/examples/svg-surface/Makefile - MSVC_Net2008/examples/image-surface/Makefile - MSVC_Net2008/examples/text-rotate/Makefile - MSVC_Net2008/examples/toy-text/Makefile - MSVC_Net2008/examples/user-font/Makefile -]) - -AC_OUTPUT() diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-1.0.pc.in cairomm-1.8.4/data/cairomm-1.0.pc.in --- cairomm-1.8.0/data/cairomm-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,12 +1,19 @@ prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ +datarootdir=@datarootdir@ +datadir=@datadir@ includedir=@includedir@ -Name: cairomm -Description: C++ wrapper for cairo -Requires: cairo sigc++-2.0 -Version: @VERSION@ -Libs: -L${libdir} -lcairomm-1.0 -Cflags: -I${includedir}/cairomm-1.0 +docdir=${datarootdir}/doc/@CAIROMM_MODULE_NAME@ +doxytagfile=${docdir}/reference/@CAIROMM_MODULE_NAME@.tag +htmlrefdir=${docdir}/reference/html +htmlrefpub=http://www.cairographics.org/documentation/cairomm/reference +Name: cairomm +Description: C++ binding for the cairo graphics library +Version: @PACKAGE_VERSION@ +URL: http://www.cairographics.org/cairomm/ +Requires: @CAIROMM_MODULES@ +Libs: -L${libdir} -lcairomm-@CAIROMM_API_VERSION@ +Cflags: -I${includedir}/@CAIROMM_MODULE_NAME@ -I${libdir}/@CAIROMM_MODULE_NAME@/include diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-ft-1.0.pc.in cairomm-1.8.4/data/cairomm-ft-1.0.pc.in --- cairomm-1.8.0/data/cairomm-ft-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-ft-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-ft Description: C++ wrapper for cairo - ft support Requires: cairomm-1.0 cairo-ft -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-pdf-1.0.pc.in cairomm-1.8.4/data/cairomm-pdf-1.0.pc.in --- cairomm-1.8.0/data/cairomm-pdf-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-pdf-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-pdf Description: C++ wrapper for cairo - pdf support Requires: cairomm-1.0 cairo-pdf -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-png-1.0.pc.in cairomm-1.8.4/data/cairomm-png-1.0.pc.in --- cairomm-1.8.0/data/cairomm-png-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-png-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-png Description: C++ wrapper for cairo - png support Requires: cairomm-1.0 cairo-png -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-ps-1.0.pc.in cairomm-1.8.4/data/cairomm-ps-1.0.pc.in --- cairomm-1.8.0/data/cairomm-ps-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-ps-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-ps Description: C++ wrapper for cairo - postscript support Requires: cairomm-1.0 cairo-ps -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-quartz-1.0.pc.in cairomm-1.8.4/data/cairomm-quartz-1.0.pc.in --- cairomm-1.8.0/data/cairomm-quartz-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-quartz-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-quartz Description: C++ wrapper for cairo - quartz support Requires: cairomm-1.0 cairo-quartz -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-quartz-font-1.0.pc.in cairomm-1.8.4/data/cairomm-quartz-font-1.0.pc.in --- cairomm-1.8.0/data/cairomm-quartz-font-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-quartz-font-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-quartz-font Description: C++ wrapper for cairo - quartz font support Requires: cairomm-1.0 cairo-quartz-font -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-quartz-image-1.0.pc.in cairomm-1.8.4/data/cairomm-quartz-image-1.0.pc.in --- cairomm-1.8.0/data/cairomm-quartz-image-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-quartz-image-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-quartz-image Description: C++ wrapper for cairo - quartz image support Requires: cairomm-1.0 cairo-quartz-image -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-svg-1.0.pc.in cairomm-1.8.4/data/cairomm-svg-1.0.pc.in --- cairomm-1.8.0/data/cairomm-svg-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-svg-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-svg Description: C++ wrapper for cairo - svg support Requires: cairomm-1.0 cairo-svg -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-win32-1.0.pc.in cairomm-1.8.4/data/cairomm-win32-1.0.pc.in --- cairomm-1.8.0/data/cairomm-win32-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-win32-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-win32 Description: C++ wrapper for cairo - win32 support Requires: cairomm-1.0 cairo-win32 -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-win32-font-1.0.pc.in cairomm-1.8.4/data/cairomm-win32-font-1.0.pc.in --- cairomm-1.8.0/data/cairomm-win32-font-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-win32-font-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-win32-font Description: C++ wrapper for cairo - win32 font support Requires: cairomm-1.0 cairo-win32-font -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-xlib-1.0.pc.in cairomm-1.8.4/data/cairomm-xlib-1.0.pc.in --- cairomm-1.8.0/data/cairomm-xlib-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-xlib-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-xlib Description: C++ wrapper for cairo - xlib support Requires: cairomm-1.0 cairo-xlib -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/cairomm-xlib-xrender-1.0.pc.in cairomm-1.8.4/data/cairomm-xlib-xrender-1.0.pc.in --- cairomm-1.8.0/data/cairomm-xlib-xrender-1.0.pc.in 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/cairomm-xlib-xrender-1.0.pc.in 2009-08-13 18:08:52.000000000 +0200 @@ -1,4 +1,4 @@ Name: cairomm-xlib-xrender Description: C++ wrapper for cairo - xlib-xrender support Requires: cairomm-1.0 cairo-xlib-xrender -Version: @VERSION@ +Version: @PACKAGE_VERSION@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/data/Makefile.am cairomm-1.8.4/data/Makefile.am --- cairomm-1.8.0/data/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/data/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,26 +0,0 @@ -## Process this file with automake to produce Makefile.in - -# This is a list of all of the possible pkg-config files that can be generated. -# Specific ones to be installed are determined in configure.in -ALL_PC_IN = cairomm-1.0.pc.in \ - cairomm-ft-1.0.pc.in \ - cairomm-pdf-1.0.pc.in \ - cairomm-png-1.0.pc.in \ - cairomm-ps-1.0.pc.in \ - cairomm-quartz-1.0.pc.in \ - cairomm-quartz-font-1.0.pc.in \ - cairomm-quartz-image-1.0.pc.in \ - cairomm-svg-1.0.pc.in \ - cairomm-win32-1.0.pc.in \ - cairomm-win32-font-1.0.pc.in \ - cairomm-xlib-1.0.pc.in \ - cairomm-xlib-xrender-1.0.pc.in - -EXTRA_DIST = $(ALL_PC_IN) - -# Install the pkg-config files: -pkgconfigdir = $(libdir)/pkgconfig -# $INSTALLED_PC is computed in configure.in -pkgconfig_DATA = $(INSTALLED_PC) - -DISTCLEANFILES=$(INSTALLED_PC) diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/debian/changelog cairomm-1.8.4/debian/changelog --- cairomm-1.8.0/debian/changelog 2010-05-05 16:26:46.000000000 +0200 +++ cairomm-1.8.4/debian/changelog 2010-05-05 16:26:46.000000000 +0200 @@ -1,3 +1,10 @@ +cairomm (1.8.4-0ubuntu1) lucid-proposed; urgency=low + + * New upstream version (lp: #566986) + * Updated install and rules files for the new version changes + + -- Sebastien Bacher Wed, 05 May 2010 16:20:31 +0200 + cairomm (1.8.0-1build2) lucid; urgency=low * rebuild rest of main for armel armv7/thumb2 optimization; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/debian/libcairomm-1.0-dev.install cairomm-1.8.4/debian/libcairomm-1.0-dev.install --- cairomm-1.8.0/debian/libcairomm-1.0-dev.install 2010-05-05 16:26:46.000000000 +0200 +++ cairomm-1.8.4/debian/libcairomm-1.0-dev.install 2010-05-05 16:26:46.000000000 +0200 @@ -3,6 +3,7 @@ debian/tmp/usr/lib/libcairomm-1.0*.a debian/tmp/usr/lib/libcairomm-1.0*.la debian/tmp/usr/lib/pkgconfig +debian/tmp/usr/lib/cairomm-1.0 examples/README usr/share/doc/libcairomm-1.0-dev/examples examples/surfaces/*.cc usr/share/doc/libcairomm-1.0-dev/examples/surfaces examples/text/*.cc usr/share/doc/libcairomm-1.0-dev/examples/text diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/debian/libcairomm-1.0-doc.install cairomm-1.8.4/debian/libcairomm-1.0-doc.install --- cairomm-1.8.0/debian/libcairomm-1.0-doc.install 2010-05-05 16:26:46.000000000 +0200 +++ cairomm-1.8.4/debian/libcairomm-1.0-doc.install 2010-05-05 16:26:46.000000000 +0200 @@ -1 +1 @@ -debian/tmp/usr/share/doc/libcairomm-1.0/reference usr/share/doc/libcairomm-1.0-doc +debian/tmp/usr/share/doc/cairomm-1.0/reference usr/share/doc/libcairomm-1.0-doc diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/debian/rules cairomm-1.8.4/debian/rules --- cairomm-1.8.0/debian/rules 2010-05-05 16:26:46.000000000 +0200 +++ cairomm-1.8.4/debian/rules 2010-05-05 16:26:46.000000000 +0200 @@ -4,11 +4,14 @@ include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/rules/simple-patchsys.mk +# We want .a +DEB_CONFIGURE_EXTRA_FLAGS = --enable-static + # Make sure it depends on >= current-version #DEB_DH_MAKESHLIBS_ARGS_libcairomm-1.0-0 = -V clean:: - rm -rf docs/reference/html \ + rm -rf \ docs/reference/cairomm_doxygen_tags \ docs/reference/doxygen* \ docs/reference/undocumented.txt diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/docs/doc-install.pl cairomm-1.8.4/docs/doc-install.pl --- cairomm-1.8.0/docs/doc-install.pl 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/docs/doc-install.pl 2009-10-19 16:07:20.000000000 +0200 @@ -0,0 +1,221 @@ +package main; + +# Copyright (c) 2009 Openismus GmbH +# +# This file is part of mm-common. +# +# mm-common is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published +# by the Free Software Foundation, either version 2 of the License, +# or (at your option) any later version. +# +# mm-common is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with mm-common. If not, see . + +use strict; +use warnings; +use bytes; +use File::Spec; +use Getopt::Long qw(:config no_getopt_compat no_ignore_case require_order bundling); + +# Globals +my $message_prefix; +my %tags_hash; +my $book_base; +my $perm_mode; +my $target_dir; +my $target_nodir = ''; +my $expand_glob = ''; +my $verbose = ''; + +sub path_basename ($) +{ + my ($path) = @_; + my $basename = File::Spec->splitpath($path); + + return $basename; +} + +sub exit_help () +{ + my $script_name = path_basename($0) || 'doc-install.pl'; + + print <<"EOF"; +Usage: perl $script_name [OPTION]... [-T] SOURCE DEST + or: perl $script_name [OPTION]... SOURCE... DIRECTORY + or: perl $script_name [OPTION]... -t DIRECTORY SOURCE... + +Copy SOURCE to DEST or multiple SOURCE files to the existing DIRECTORY, +while setting permission modes. For HTML files, translate references to +external documentation. + +Mandatory arguments to long options are mandatory for short options, too. + --book-base=BASEPATH use reference BASEPATH for Devhelp book + -l, --tag-base=TAGFILE\@BASEPATH use BASEPATH for references from TAGFILE + -m, --mode=MODE override file permission MODE (octal) + -t, --target-directory=DIRECTORY copy all SOURCE arguments into DIRECTORY + -T, --no-target-directory treat DEST as normal file + --glob expand SOURCE as filename glob pattern + -v, --verbose enable informational messages + -?, --help display this help and exit +EOF + exit; +} + +sub notice (@) +{ + print($message_prefix, @_, "\n") if ($verbose); +} + +sub warning (@) +{ + print STDERR ($message_prefix, @_, "\n"); +} + +sub error (@) +{ + warning(@_); + exit 1; +} + +# Copy file to destination while translating references on the fly. +# Sniff the content for the file type, as it is always read in anyway. +sub install_file ($$$) +{ + my ($in_name, $out_name, $basename) = @_; + my ($in, $out, $buf); + { + local $/; # slurp mode: read entire file into buffer + + open($in, '<', $in_name) and binmode($in) and defined($buf = <$in>) and close($in) + or error('Failed to read ', $basename, ': ', $!); + } + + if (%tags_hash and $buf =~ m/\A(?> \s*)(?> (?> <[?!][^<]+ )* )\s]/sx) + { + my $count = 0; + my $total = $buf =~ + s!(?<= \s) doxygen="((?> [^:"]+)):((?> [^"]*))" # doxygen="(TAGFILE):(BASEPATH)" + (?> \s+) ((?> href|src) =") \2 ((?> [^"]*)") # (href|src=")BASEPATH(RELPATH") + ! $3 . ((exists $tags_hash{$1}) ? (++$count, $tags_hash{$1}) : $2) . $4 + !egsx; + my $change = $total ? "rewrote $count of $total" + : 'no'; + notice('Translating ', $basename, ' (', $change, ' references)'); + } + elsif (defined($book_base) and $buf =~ m/\A(?> \s*)(?> (?> <[?!][^<]+ )* ) + my $change = $buf =~ s/(]*? \b base=") (?> [^"]*) (?= ")/$1$book_base/sx + ? 'rewrote base path' + : 'base path not set'; + notice('Translating ', $basename, ' (', $change, ')'); + } + else + { + notice('Copying ', $basename); + } + + # Avoid inheriting permissions of existing file + unlink($out_name); + + open($out, '>', $out_name) and binmode($out) and print $out ($buf) and close($out) + or error('Failed to write ', $basename, ': ', $!); + + chmod($perm_mode, $out_name) + or warning('Failed to set ', $basename, ' permissions: ', $!); +} + +# Split TAGFILE@BASEPATH argument into key/value pair +sub split_key_value ($) +{ + my ($mapping) = @_; + my ($name, $path) = split(m'@', $mapping, 2); + + error('Invalid base path mapping: ', $mapping) unless (defined($name) and $name ne ''); + + if (defined $path) + { + notice('Using base path ', $path, ' for tag file ', $name); + return ($name, $path); + } + notice('Not changing base path for tag file ', $name); + return (); +} + +# Define line leader of log messages +$message_prefix = path_basename($0); +$message_prefix =~ s/\.[^.]*$//s if (defined $message_prefix); +$message_prefix = ($message_prefix || 'doc-install') . ': '; + +# Process command-line options +{ + my @tags = (); + my $mode = '0644'; + + GetOptions('book-base=s' => \$book_base, + 'tag-base|l=s' => \@tags, + 'mode|m=s' => \$mode, + 'target-directory|t=s' => \$target_dir, + 'no-target-directory|T' => \$target_nodir, + 'glob' => \$expand_glob, + 'verbose|v' => \$verbose, + 'help|?' => \&exit_help) + or exit 2; + + error('Invalid permission mode: ', $mode) unless ($mode =~ m/^[0-7]+$/s); + + $perm_mode = oct($mode); + %tags_hash = map(split_key_value($_), @tags); +} +notice('Using base path ', $book_base, ' for Devhelp book') if (defined $book_base); + +if ($target_nodir) +{ + error('Conflicting target directory options') if (defined $target_dir); + error('Source and destination filenames expected') unless ($#ARGV == 1); + error('Filename globbing requires target directory') if ($expand_glob); + + install_file($ARGV[0], $ARGV[1], path_basename($ARGV[1])); + exit; +} + +unless (defined $target_dir) +{ + if (!$expand_glob and $#ARGV == 1) + { + my $basename = path_basename($ARGV[1]); + + if (defined($basename) and $basename ne '') + { + install_file($ARGV[0], $ARGV[1], $basename); + exit; + } + } + $target_dir = pop(@ARGV); +} +error('No target directory specified') unless (defined($target_dir) and $target_dir ne ''); + +@ARGV = map(glob, @ARGV) if ($expand_glob); +my %basename_hash = (); + +foreach my $in_name (@ARGV) +{ + my $basename = path_basename($in_name); + my $out_name = File::Spec->catfile($target_dir, $basename); + + # If there are multiple files with the same base name in the list, only + # the first one will be installed. This behavior makes it very easy to + # implement a VPATH search for each individual file. + unless (exists $basename_hash{$basename}) + { + $basename_hash{$basename} = undef; + install_file($in_name, $out_name, $basename); + } +} +exit; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/docs/doc-postprocess.pl cairomm-1.8.4/docs/doc-postprocess.pl --- cairomm-1.8.0/docs/doc-postprocess.pl 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/docs/doc-postprocess.pl 2009-10-19 16:07:20.000000000 +0200 @@ -0,0 +1,81 @@ +package main; + +# Copyright (c) 2009 Daniel Elstner +# +# This file is part of mm-common. +# +# mm-common is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published +# by the Free Software Foundation, either version 2 of the License, +# or (at your option) any later version. +# +# mm-common is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with mm-common. If not, see . + +use strict; +use warnings; +use bytes; + +foreach my $filename (map(glob, @ARGV)) +{ + my @outbuf = (); + my $file; + + open($file, '<', $filename); + + while (<$file>) + { + if (/|)template</$1template </; + } + s/ / /g; + + push(@outbuf, $_); + } + close($file); + + # write the whole buffer back + open($file, '>', $filename); + print $file ($_) foreach (@outbuf); + close($file); +} + +exit; diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/docs/Makefile.am cairomm-1.8.4/docs/Makefile.am --- cairomm-1.8.0/docs/Makefile.am 2007-05-31 22:43:38.000000000 +0200 +++ cairomm-1.8.4/docs/Makefile.am 2009-08-13 18:51:42.000000000 +0200 @@ -1,13 +1,33 @@ -SUBDIRS = reference +## Copyright (c) 2009 Openismus GmbH +## +## This file is part of cairomm. +## +## cairomm is free software: you can redistribute it and/or modify it +## under the terms of the GNU Lesser General Public License as published +## by the Free Software Foundation, either version 2.1 of the License, +## or (at your option) any later version. +## +## cairomm is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +## See the GNU Lesser General Public License for more details. +## +## You should have received a copy of the GNU Lesser General Public License +## along with this library. If not, see . -doc-clean-recursive: - list='$(SUBDIRS)'; for subdir in $$list; do \ - test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) doc-clean); \ - done +include $(top_srcdir)/cairomm/filelist.am -doc-clean: doc-clean-recursive +book_name = $(CAIROMM_MODULE_NAME) +doc_input = $(addprefix $(top_srcdir)/cairomm/,$(cairomm_public_h)) -doc-rebuild: doc-clean all +pubdocbase = http://www.cairographics.org/documentation/ +htmlrefpub = $(pubdocbase)cairomm/reference -.PHONY: doc-clean doc-clean-recursive doc-rebuild +include $(top_srcdir)/build/doc-reference.am +dist_noinst_DATA += \ + doc-install.pl \ + doc-postprocess.pl \ + tagfile-to-devhelp2.xsl \ + reference/cairomm.css \ + reference/cairomm-header.html diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/docs/tagfile-to-devhelp2.xsl cairomm-1.8.4/docs/tagfile-to-devhelp2.xsl --- cairomm-1.8.0/docs/tagfile-to-devhelp2.xsl 1970-01-01 01:00:00.000000000 +0100 +++ cairomm-1.8.4/docs/tagfile-to-devhelp2.xsl 2009-10-19 16:07:20.000000000 +0200 @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/Makefile.am cairomm-1.8.4/examples/Makefile.am --- cairomm-1.8.0/examples/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/Makefile.am 2009-08-13 18:08:51.000000000 +0200 @@ -1,3 +1,24 @@ -SUBDIRS = surfaces text +AUTOMAKE_OPTIONS = subdir-objects -EXTRA_DIST = README Makefile.am_fragment +check_PROGRAMS = surfaces/pdf-surface \ + surfaces/ps-surface \ + surfaces/svg-surface \ + surfaces/image-surface \ + text/text-rotate \ + text/toy-text \ + text/user-font + +AM_CPPFLAGS = -I$(top_builddir) $(if $(srcdir:.=),-I$(top_srcdir)) $(CAIROMM_CFLAGS) +AM_CXXFLAGS = $(CAIROMM_WXXFLAGS) + +LDADD = $(top_builddir)/cairomm/libcairomm-$(CAIROMM_API_VERSION).la + +surfaces_pdf_surface_SOURCES = surfaces/pdf-surface.cc +surfaces_ps_surface_SOURCES = surfaces/ps-surface.cc +surfaces_svg_surface_SOURCES = surfaces/svg-surface.cc +surfaces_image_surface_SOURCES = surfaces/image-surface.cc +text_text_rotate_SOURCES = text/text-rotate.cc +text_toy_text_SOURCES = text/toy-text.cc +text_user_font_SOURCES = text/user-font.cc + +EXTRA_DIST = README diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/Makefile.am_fragment cairomm-1.8.4/examples/Makefile.am_fragment --- cairomm-1.8.0/examples/Makefile.am_fragment 2007-05-31 22:43:38.000000000 +0200 +++ cairomm-1.8.4/examples/Makefile.am_fragment 1970-01-01 01:00:00.000000000 +0100 @@ -1,5 +0,0 @@ -#Where to find the header files needed by the source files: -INCLUDES = -I$(top_srcdir) @CAIROMM_CFLAGS@ - -#The libraries that the executable needs to link against: -LIBS = $(top_builddir)/cairomm/libcairomm-1.0.la @LIBS@ @CAIROMM_LIBS@ diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/surfaces/image-surface.cc cairomm-1.8.4/examples/surfaces/image-surface.cc --- cairomm-1.8.0/examples/surfaces/image-surface.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/surfaces/image-surface.cc 2009-08-13 18:09:31.000000000 +0200 @@ -1,6 +1,6 @@ #include #include -#include +#include #include #include @@ -11,9 +11,7 @@ #define _USE_MATH_DEFINES #endif -#ifdef HAVE_MATH_H -# include -#endif +#include int main() { diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/surfaces/Makefile.am cairomm-1.8.4/examples/surfaces/Makefile.am --- cairomm-1.8.0/examples/surfaces/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/surfaces/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,14 +0,0 @@ -include $(top_srcdir)/examples/Makefile.am_fragment - -# build the executable but don't install it -noinst_PROGRAMS = pdf-surface \ - ps-surface \ - svg-surface \ - image-surface - -pdf_surface_SOURCES = pdf-surface.cc -ps_surface_SOURCES = ps-surface.cc -svg_surface_SOURCES = svg-surface.cc -image_surface_SOURCES = image-surface.cc - -CLEANFILES = image.pdf image.ps image.svg example_png_file.png diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/surfaces/pdf-surface.cc cairomm-1.8.4/examples/surfaces/pdf-surface.cc --- cairomm-1.8.0/examples/surfaces/pdf-surface.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/surfaces/pdf-surface.cc 2009-08-13 18:09:31.000000000 +0200 @@ -1,6 +1,6 @@ #include #include -#include +#include #include #include @@ -11,9 +11,7 @@ #define _USE_MATH_DEFINES #endif -#ifdef HAVE_MATH_H -# include -#endif +#include int main() { diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/surfaces/ps-surface.cc cairomm-1.8.4/examples/surfaces/ps-surface.cc --- cairomm-1.8.0/examples/surfaces/ps-surface.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/surfaces/ps-surface.cc 2009-08-13 18:09:31.000000000 +0200 @@ -1,6 +1,6 @@ #include #include -#include +#include #include #include @@ -11,9 +11,7 @@ #define _USE_MATH_DEFINES #endif -#ifdef HAVE_MATH_H -# include -#endif +#include int main() { diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/surfaces/svg-surface.cc cairomm-1.8.4/examples/surfaces/svg-surface.cc --- cairomm-1.8.0/examples/surfaces/svg-surface.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/surfaces/svg-surface.cc 2009-08-13 18:09:31.000000000 +0200 @@ -1,6 +1,6 @@ #include #include -#include +#include #include #include @@ -11,9 +11,7 @@ #define _USE_MATH_DEFINES #endif -#ifdef HAVE_MATH_H -# include -#endif +#include int main() { diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/text/Makefile.am cairomm-1.8.4/examples/text/Makefile.am --- cairomm-1.8.0/examples/text/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/text/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,10 +0,0 @@ -include $(top_srcdir)/examples/Makefile.am_fragment - -# build the executable but don't install it -noinst_PROGRAMS = text-rotate toy-text user-font - -text_rotate_SOURCES = text-rotate.cc -toy_text_SOURCES=toy-text.cc -user_font_SOURCES=user-font.cc - -CLEANFILES = text-rotate.png toy-text.png user-font.png diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/examples/text/text-rotate.cc cairomm-1.8.4/examples/text/text-rotate.cc --- cairomm-1.8.0/examples/text/text-rotate.cc 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/examples/text/text-rotate.cc 2009-08-13 18:09:31.000000000 +0200 @@ -18,7 +18,7 @@ #include #include -#include +#include #include /* M_PI is defined in math.h in the case of Microsoft Visual C++, and @@ -28,9 +28,7 @@ #define _USE_MATH_DEFINES #endif -#ifdef HAVE_MATH_H -# include -#endif +#include // This example is based on the C cairo example of the same name diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/INSTALL cairomm-1.8.4/INSTALL --- cairomm-1.8.0/INSTALL 2007-05-31 22:43:38.000000000 +0200 +++ cairomm-1.8.4/INSTALL 2009-10-19 16:07:31.000000000 +0200 @@ -1,9 +1,302 @@ -Simple install procedure -======================== +Installation Instructions +************************* - % tar zxvf cairomm-.tar.gz # unpack the sources - % cd cairomm- # change to toplevel directory - % ./configure # run the `configure' script - % make # build cairomm - % make install # install cairomm +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005, +2006, 2007, 2008, 2009 Free Software Foundation, Inc. + + This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +Basic Installation +================== + + Briefly, the shell commands `./configure; make; make install' should +configure, build, and install this package. The following +more-detailed instructions are generic; see the `README' file for +instructions specific to this package. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. Caching is +disabled by default to prevent problems with accidental use of stale +cache files. + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You need `configure.ac' if +you want to change it or regenerate `configure' using a newer version +of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. + + Running `configure' might take a while. While running, it prints + some messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + + 6. Often, you can also type `make uninstall' to remove the installed + files again. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. Run `./configure --help' +for details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c99 CFLAGS=-g LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you can use GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + With a non-GNU `make', it is safer to compile the package for one +architecture at a time in the source code directory. After you have +installed the package for one architecture, use `make distclean' before +reconfiguring for another architecture. + + On MacOS X 10.5 and later systems, you can create libraries and +executables that work on multiple system types--known as "fat" or +"universal" binaries--by specifying multiple `-arch' options to the +compiler but only a single `-arch' option to the preprocessor. Like +this: + + ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ + CPP="gcc -E" CXXCPP="g++ -E" + + This is not guaranteed to produce working output in all cases, you +may have to build one architecture at a time and combine the results +using the `lipo' tool if you have problems. + +Installation Names +================== + + By default, `make install' installs the package's commands under +`/usr/local/bin', include files under `/usr/local/include', etc. You +can specify an installation prefix other than `/usr/local' by giving +`configure' the option `--prefix=PREFIX'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +pass the option `--exec-prefix=PREFIX' to `configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=DIR' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + + Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Particular systems +================== + + On HP-UX, the default C compiler is not ANSI C compatible. If GNU +CC is not installed, it is recommended to use the following options in +order to use an ANSI C compiler: + + ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" + +and if that doesn't work, install pre-built binaries of GCC for HP-UX. + + On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot +parse its `' header file. The option `-nodtk' can be used as +a workaround. If GNU CC is not installed, it is therefore recommended +to try + + ./configure CC="cc" + +and if that doesn't work, try + + ./configure CC="cc -nodtk" + + On Solaris, don't put `/usr/ucb' early in your `PATH'. This +directory contains several dysfunctional programs; working variants of +these programs are available in `/usr/bin'. So, if you need `/usr/ucb' +in your `PATH', put it _after_ `/usr/bin'. + + On Haiku, software installed for all users goes in `/boot/common', +not `/usr/local'. It is recommended to use the following options: + + ./configure --prefix=/boot/common + +Specifying the System Type +========================== + + There may be some features `configure' cannot figure out +automatically, but needs to determine by the type of machine the package +will run on. Usually, assuming the package is built to be run on the +_same_ architectures, `configure' can figure that out, but if it prints +a message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS + KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the option `--target=TYPE' to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + + Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +causes the specified `gcc' to be used as the C compiler (unless it is +overridden in the site shell script). + +Unfortunately, this technique does not work for `CONFIG_SHELL' due to +an Autoconf bug. Until the bug is fixed you can use this workaround: + + CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash + +`configure' Invocation +====================== + + `configure' recognizes the following options to control how it +operates. + +`--help' +`-h' + Print a summary of all of the options to `configure', and exit. + +`--help=short' +`--help=recursive' + Print a summary of the options unique to this package's + `configure', and exit. The `short' variant lists options used + only in the top level, while the `recursive' variant lists options + also present in any nested packages. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`--prefix=DIR' + Use DIR as the installation prefix. *Note Installation Names:: + for more details, including other options available for fine-tuning + the installation locations. + +`--no-create' +`-n' + Run the configure checks, but stop before creating any output + files. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/Makefile.am cairomm-1.8.4/Makefile.am --- cairomm-1.8.0/Makefile.am 2008-12-20 18:37:46.000000000 +0100 +++ cairomm-1.8.4/Makefile.am 2009-08-13 18:08:52.000000000 +0200 @@ -1,12 +1,46 @@ -## Process this file with automake to produce Makefile.in +## Copyright (c) 2009 Openismus GmbH +## +## This file is part of cairomm. +## +## cairomm is free software: you can redistribute it and/or modify it +## under the terms of the GNU Lesser General Public License as published +## by the Free Software Foundation, either version 2.1 of the License, +## or (at your option) any later version. +## +## cairomm is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +## See the GNU Lesser General Public License for more details. +## +## You should have received a copy of the GNU Lesser General Public License +## along with this library. If not, see . + +ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS} +DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal + +if ENABLE_DOCUMENTATION +doc_subdirs = docs +else +doc_subdirs = +endif +SUBDIRS = cairomm examples tests $(doc_subdirs) + +cairomm_libincludedir = $(libdir)/$(CAIROMM_MODULE_NAME)/include +nodist_cairomm_libinclude_HEADERS = cairommconfig.h + +pkgconfigdir = $(libdir)/pkgconfig +nodist_pkgconfig_DATA = $(CAIROMM_INSTALL_PC) + +include $(srcdir)/MSVC_Net2005/filelist.am +include $(srcdir)/MSVC_Net2008/filelist.am -SUBDIRS = cairomm data examples MSVC_Net2005 MSVC_Net2008 $(DOCS_SUBDIR) tests -#docs examples -ACLOCAL_AMFLAGS = -I m4 +msvc_files = $(addprefix MSVC_Net2005/,$(msvc_net2005_data)) \ + $(addprefix MSVC_Net2008/,$(msvc_net2008_data)) -EXTRA_DIST = MAINTAINERS autogen.sh +dist_noinst_DATA = MAINTAINERS $(msvc_files) +dist_noinst_SCRIPTS = autogen.sh -DIST_SUBDIRS = $(SUBDIRS) +DISTCLEANFILES = MSVC_Net2005/cairomm/cairommconfig.h MSVC_Net2008/cairomm/cairommconfig.h # Copied from cairo/Makefile.am: # @@ -20,11 +54,7 @@ RELEASE_UPLOAD_DIR = $(RELEASE_UPLOAD_BASE)/releases RELEASE_URL_BASE = http://cairographics.org/releases RELEASE_ANNOUNCE_LIST = cairo-announce@cairographics.org (and CC gnome-announce-list@gnome.org) -GIT = $(top_srcdir)/missing --run git - -#MANUAL_DATED = cairo-manual-`date +%Y%m%d` -#MANUAL_TAR_FILE = $(MANUAL_DATED).tar.gz -#MANUAL_UPLOAD_DIR = $(RELEASE_UPLOAD_BASE) +GIT = $(top_srcdir)/build/missing --run git tar_file = $(PACKAGE)-$(VERSION).tar.gz sha1_file = $(tar_file).sha1 @@ -38,7 +68,7 @@ gpg --armor --sign $^ release-verify-even-micro: - @echo -n "Checking that $(VERSION) has an even micro component..." + @echo -n "Checking that $(PACKAGE_VERSION) has an even micro component..." @test "$(GENERIC_MICRO_VERSION)" = "`echo $(GENERIC_MICRO_VERSION)/2*2 | bc`" \ || (echo "Ouch." && echo "The version micro component '$(GENERIC_MICRO_VERSION)' is not an even number." \ && echo "The version in configure.in must be incremented before a new release." \ @@ -46,7 +76,7 @@ @echo "Good." release-verify-newer: - @echo -n "Checking that no $(VERSION) release already exists..." + @echo -n "Checking that no $(PACKAGE_VERSION) release already exists..." @ssh $(RELEASE_UPLOAD_HOST) test ! -e $(RELEASE_UPLOAD_DIR)/$(tar_file) \ || (echo "Ouch." && echo "Found: $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_DIR)/$(tar_file)" \ && echo "Are you sure you have an updated git checkout?" \ @@ -71,23 +101,21 @@ scp $(tar_file) $(sha1_file) $(gpg_file) $(RELEASE_UPLOAD_HOST):$(RELEASE_UPLOAD_DIR) mv $(tar_file) $(sha1_file) $(gpg_file) releases ssh $(RELEASE_UPLOAD_HOST) "rm -f $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(tar_file) $(RELEASE_UPLOAD_DIR)/LATEST-$(PACKAGE)-$(VERSION)" - $(GIT) tag -s -m "$(PACKAGE) release $(VERSION)" v$(VERSION) - -doc-publish: - (cd docs/reference && $(MAKE) $(AM_MAKEFLAGS) publish) + $(GIT) tag -s -m "$(PACKAGE) release $(PACKAGE_VERSION)" v$(PACKAGE_VERSION) -release-publish: release-upload doc-publish releases/$(sha1_file) +# TODO: Had to remove the doc-publish target for now. +release-publish: release-upload releases/$(sha1_file) @echo "" @echo "Please send an announcement to $(RELEASE_ANNOUNCE_LIST)" @echo "including the following:" @echo "" - @echo "Subject: $(PACKAGE) release $(VERSION) now available" + @echo "Subject: $(PACKAGE) release $(PACKAGE_VERSION) now available" @echo "" @echo "============================== CUT HERE ==============================" @echo "cairomm is a C++ API for the cairo graphics library. For more " @echo "information, see http://cairographics.org/cairomm" @echo "" - @echo "A new $(PACKAGE) release $(VERSION) is now available from:" + @echo "A new $(PACKAGE) release $(PACKAGE_VERSION) is now available from:" @echo "" @echo " $(RELEASE_URL_BASE)/$(tar_file)" @echo "" @@ -109,14 +137,4 @@ @echo "Last but not least, do not forget to bump up the micro" @echo "version component to the next (odd) number and commit." - -doc-clean-recursive: - (cd docs && $(MAKE) $(AM_MAKEFLAGS) doc-clean) - -doc-clean: doc-clean-recursive - -doc-rebuild: - (cd docs && $(MAKE) $(AM_MAKEFLAGS) doc-rebuild) - -.PHONY: release-verify-even-micro release-verify-newer release-remove-old release-cleanup-group-sticky release-check release-upload release-publish doc-clean doc-clean-recursive doc-rebuild - +.PHONY: release-verify-even-micro release-verify-newer release-remove-old release-cleanup-group-sticky release-check release-upload release-publish diff -Nru --exclude reference --exclude build --exclude m4 --exclude 'MSVC_Net200*' --exclude 'config.*' --exclude configure --exclude Makefile.in --exclude install-sh --exclude ltmain.sh --exclude missing --exclude aclocal.m4 --exclude depcomp cairomm-1.8.0/NEWS cairomm-1.8.4/NEWS --- cairomm-1.8.0/NEWS 2009-01-27 05:06:00.000000000 +0100 +++ cairomm-1.8.4/NEWS 2009-10-19 16:04:03.000000000 +0200 @@ -1,3 +1,17 @@ +1.8.4: + +* move to new mm-common build infrastructure +* Contributors for this release: + 1 Christopher Harvey + 4 Daniel Elstner + 4 David King + 1 Jonathon Jongsma + +1.8.2: + +* Fix accidental ABI breakage from 1.8.0. All users are urged to please upgrade + from 1.8.0 to 1.8.2 as soon as possible + 1.8.0: * No notable changes since 1.7.2