head 1.28; access; symbols RELEASE_1_2_4:1.24 RELEASE_1_2_2:1.23 RELEASE_1_2_0:1.21 RELEASE_1_1_10:1.17 RELEASE_0_6_0:1.13 RELEASE_0_5_0:1.8 RELEASE_0_4_0:1.4 RELEASE_0_3_0:1.2 V0:1.1.1.1 cairomm:1.1.1; locks; strict; comment @# @; 1.28 date 2007.03.24.03.05.33; author jjongsma; state Exp; branches; next 1.27; 1.27 date 2007.03.21.20.56.38; author jjongsma; state Exp; branches; next 1.26; 1.26 date 2007.02.01.14.19.54; author jjongsma; state Exp; branches; next 1.25; 1.25 date 2007.01.28.18.33.28; author jjongsma; state Exp; branches; next 1.24; 1.24 date 2007.01.18.01.28.58; author jjongsma; state Exp; branches; next 1.23; 1.23 date 2006.08.21.19.16.45; author jjongsma; state Exp; branches; next 1.22; 1.22 date 2006.08.20.19.02.57; author jjongsma; state Exp; branches; next 1.21; 1.21 date 2006.08.20.17.18.02; author jjongsma; state Exp; branches; next 1.20; 1.20 date 2006.08.19.01.22.51; author jjongsma; state Exp; branches; next 1.19; 1.19 date 2006.08.18.17.03.33; author jjongsma; state Exp; branches; next 1.18; 1.18 date 2006.07.09.21.04.44; author jjongsma; state Exp; branches; next 1.17; 1.17 date 2006.07.05.01.22.46; author jjongsma; state Exp; branches; next 1.16; 1.16 date 2006.07.01.03.00.41; author jjongsma; state Exp; branches; next 1.15; 1.15 date 2006.06.13.02.08.23; author jjongsma; state Exp; branches; next 1.14; 1.14 date 2006.05.09.01.50.57; author jjongsma; state Exp; branches; next 1.13; 1.13 date 2006.04.05.01.30.53; author jjongsma; state Exp; branches; next 1.12; 1.12 date 2006.03.31.04.00.02; author jjongsma; state Exp; branches; next 1.11; 1.11 date 2006.03.30.02.44.05; author jjongsma; state Exp; branches; next 1.10; 1.10 date 2006.03.15.01.42.52; author jjongsma; state Exp; branches; next 1.9; 1.9 date 2006.02.17.15.14.09; author jjongsma; state Exp; branches; next 1.8; commitid c4843f5e8204567; 1.8 date 2006.02.08.00.55.17; author jjongsma; state Exp; branches; next 1.7; commitid 77f943e941664567; 1.7 date 2006.01.27.19.01.12; author murrayc; state Exp; branches; next 1.6; commitid b5943da6df64567; 1.6 date 2006.01.26.15.59.15; author murrayc; state Exp; branches; next 1.5; commitid 164b43d8f1d24567; 1.5 date 2006.01.07.11.53.02; author murrayc; state Exp; branches; next 1.4; commitid 6c243bfab9b4567; 1.4 date 2005.12.23.15.11.55; author murrayc; state Exp; branches; next 1.3; commitid 5d6d43ac13ba4567; 1.3 date 2005.12.17.15.21.24; author murrayc; state Exp; branches; next 1.2; commitid 457543a42cf04567; 1.2 date 2005.12.02.16.11.18; author murrayc; state Exp; branches; next 1.1; commitid 40bd439072264567; 1.1 date 2005.12.02.13.34.41; author murrayc; state Exp; branches 1.1.1.1; next ; commitid 2b0c43904d684567; 1.1.1.1 date 2005.12.02.13.34.41; author murrayc; state Exp; branches; next ; commitid 2b0c43904d684567; desc @@ 1.28 log @2007-03-23 Jonathon Jongsma * Makefile.am: * autogen.sh: * configure.in: * m4/ax_boost_base.m4: * m4/ax_boost_unit_test_framework.m4: Add some basic test infrastructure. It's disabled by default, and must be explicitly enabled by passing --enable-tests to configure (or by setting the CAIROMM_DEVEL environment variable to "on"). It uses the boost unit test framework, but this should not be required unless you've explicitly enabled tests. If tests are enabled, you can easily run them with 'make check' * tests/Makefile.am: * tests/test-context.cc: added the beginning of a test for Cairo::Context. Most of these tests are really very interesting. Basically what I'm trying to do is a) test some basic behaviors, and b) excercise the functionality a little bit. One of the tests currently fails due to a RefPtr::cast_dynamic failure, so I have to see what's going on there. @ text @AC_INIT(cairomm/cairomm.h) #release versioning GENERIC_MAJOR_VERSION=1 GENERIC_MINOR_VERSION=3 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=1:1:1 # | | | # +------+ | +---+ # | | | # 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) 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) PKG_CHECK_MODULES(CAIROMM, cairo >= 1.3.10) 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$CAIROMM_DEVEL = xon ; then ENABLE_TESTS=yes fi if test x$ENABLE_TESTS = xyes ; then AX_BOOST_BASE([1.33.1]) AX_BOOST_UNIT_TEST_FRAMEWORK AC_MSG_NOTICE(support of automated tests enabled) else AC_MSG_NOTICE(disabled support of automated tests) fi AM_CONDITIONAL(AUTOTESTS, test x$ENABLE_TESTS = xyes) 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 examples/Makefile examples/png_file/Makefile examples/pdf-surface/Makefile examples/ps-surface/Makefile examples/svg-surface/Makefile examples/text-rotate/Makefile tests/Makefile cairomm-1.0.pc ) AC_CONFIG_FILES([ MSVC/Makefile MSVC/gendef/Makefile MSVC/cairomm/Makefile MSVC/cairomm/cairomm.rc MSVC/examples/Makefile MSVC/examples/pdf-surface/Makefile MSVC/examples/png_file/Makefile MSVC/examples/ps-surface/Makefile MSVC/examples/svg-surface/Makefile MSVC/examples/text-rotate/Makefile ]) AC_OUTPUT() @ 1.27 log @2007-03-21 Jonathon Jongsma * cairomm/context.cc: * cairomm/context.h: * cairomm/enums.h: * cairomm/pattern.cc: * cairomm/pattern.h: * configure.in: Add initial support for new cairo 1.4.x API. It will probably still need quite a bit of work, but I wanted to commit what I have now so that it doesn't keep sitting in my working directory. @ text @a30 1 d105 20 d165 2 @ 1.26 log @2007-02-01 Jonathon Jongsma * configure.in: Fixes for building on Cygwin from yselkowitz@@users.sourceforge.net. Closes bug #9726 @ text @d5 2 a6 2 GENERIC_MINOR_VERSION=2 GENERIC_MICRO_VERSION=5 d14 1 a14 1 GENERIC_LIBRARY_VERSION=1:0:0 d104 1 a104 1 PKG_CHECK_MODULES(CAIROMM, cairo >= 1.2.0) @ 1.25 log @2007-01-28 Jonathon Jongsma * configure.in: bump rev to 1.2.5 @ text @d55 12 d71 1 a71 1 if test x"$platform_win32" = xyes; then @ 1.24 log @2007-01-17 Jonathon Jongsma * NEWS: updated news for 1.2.4 release * configure.in: bumped version to 1.2.4 @ text @d6 1 a6 1 GENERIC_MICRO_VERSION=4 @ 1.23 log @2006-08-21 Jonathon Jongsma * NEWS: update for 1.2.2 * configure.in: bump to next even number (1.2.2) @ text @d6 1 a6 1 GENERIC_MICRO_VERSION=2 a28 1 @ 1.22 log @2006-08-20 Jonathon Jongsma * Makefile.am: fix up the release announcement template to explain what cairomm is at the top of the email before telling where to get it. * configure.in: post-release bump (1.2.1) @ text @d6 1 a6 1 GENERIC_MICRO_VERSION=1 @ 1.21 log @2006-08-20 Jonathon Jongsma * NEWS: Update information about new stuff in 1.2.0 * configure.in: bump the release version number to 1.2.0 and the shared library version number to 1:0:0 since interfaces were changed and added and we're now guaranteeing API/ABI stability @ text @d6 1 a6 1 GENERIC_MICRO_VERSION=0 @ 1.20 log @2006-08-18 Cedric Gustin * cairomm/context.cc: Define M_PI for MSVC. * cairomm/scaledfont.cc: Allocate glyph_array as a dynamic array as MSVC does not like non-const arguments as array size. * examples/pdf-surface/main.cc, examples/png_file/main.cc, examples/ps-surface/main.cc, examples/svg-surface/main.cc, examples/text-rotate/text-rotate.cc: Define M_PI for MSVC. * configure.in, Makefile.am: Generate Makefiles in the MSVC subdirectories. * .cvsignore: Added Eclipse .project to the list of ignored files. * MSVC/*: Added project and resource files for Visual Studio 2005. @ text @d5 2 a6 2 GENERIC_MINOR_VERSION=1 GENERIC_MICRO_VERSION=12 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:8:0 @ 1.19 log @2006-08-18 Jonathon Jongsma * cairomm/context.cc: * cairomm/context.h: API CHANGE: some API was changed to maintain a closer similarity to the underlying cairo API (while also attempting to avoid confusion with the C++ 'new' keyword) in preparation for freezing the cairomm API. Two functions are affected: - Context::clear_path() -> Context::begin_new_path() - Context::new_sub_path() -> Context::begin_new_sub_path() * configure.in: bump the libtool version to indicate API change @ text @d138 13 @ 1.18 log @2006-07-09 Jonathon Jongsma * NEWS: add NEWS for 1.1.10 release * configure.in: bump version to 1.1.12 @ text @d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:7:0 @ 1.17 log @2006-07-04 Jonathon Jongsma * Makefile.am: add ability to do snapshot releases to the cairographics.org/snapshots/ directory in addition to official releases * configure.in: bumped the revision to 1.1.10 in preparation for a snapshot release of the 1.2 API * docs/reference/Makefile.am: fixed some distcheck errors @ text @d6 1 a6 1 GENERIC_MICRO_VERSION=10 @ 1.16 log @2006-06-30 Jonathon Jongsma * configure.in: bumped cairomm version to 0.7.0 and bumped cairo requirement to 1.2.0 @ text @d4 3 a6 3 GENERIC_MAJOR_VERSION=0 GENERIC_MINOR_VERSION=7 GENERIC_MICRO_VERSION=0 @ 1.15 log @update for new cairo API cairo_surface_set_fallback_resolution() @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=6 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:6:0 d93 1 a93 1 PKG_CHECK_MODULES(CAIROMM, cairo >= 1.1.7) @ 1.14 log @2006-05-08 Jonathon Jongsma * configure.in: remove check for perl since we're not using any of the gmmproc stuff for cairomm * docs/reference/Makefile.am: add documentation dependency on all of the headers in the cairomm/ directory so that if a header changes the documentation will be rebuilt. @ text @d93 1 a93 1 PKG_CHECK_MODULES(CAIROMM, cairo >= 1.0) @ 1.13 log @2006-04-04 Jonathon Jongsma * NEWS: add news for 0.6.0 release * configure.in: bump version to 0.6.0 @ text @a94 2 GLIBMM_CHECK_PERL([5.6.0]) @ 1.12 log @2006-03-30 Danilo Piazzalunga * configure.in: enable documentation even if doxygen and/or graphviz are missing, so the docs will be installed when building a release. * docs/reference/Makefile.am: don't remove html directory with `make clean`, so that users of the tarball releases don't destroy the pre-built documentation when running make clean. Change to maintainer-clean @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=5 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:5:0 @ 1.11 log @2006-03-29 Jonathon Jongsma * configure.in: added tests for doxygen and graphviz which displays a warning if the user has --enable-docs set but doesn't have doxygen or graphviz installed. @ text @d106 2 a107 5 dnl check if graphviz / dot is installed (used by doxygen) AC_CHECK_PROGS(DOT, [dot], no) if test x$DOXYGEN = xno -o x$DOT = xno; then AC_MSG_WARN([Doxygen not found, documentation will not be built]) d109 5 a113 6 DOCS_SUBDIR="docs" AC_CONFIG_FILES( docs/Makefile docs/reference/Makefile docs/reference/Doxyfile ) d115 7 @ 1.10 log @2006-03-14 Jonathon Jongsma * configure.in: * examples/Makefile.am: * examples/text-rotate/.cvsignore: * examples/text-rotate/Makefile.am: * examples/text-rotate/text-rotate.cc: Added another basic example, borrowed from a test-case in cairo. This one is just a simple example of using text in cairomm @ text @d98 2 d102 1 a102 1 [enable_docs=yes]) d104 15 a118 8 DOCS_SUBDIR="docs" AC_CONFIG_FILES( docs/Makefile docs/reference/Makefile docs/reference/Doxyfile ) else DOCS_SUBDIR="" @ 1.9 log @2006-02-17 Danilo Piazzalunga * configure.in: Bug #5929: Output files in docs subdir only if --enable-docs is set. This prevents configure from generating files which are not cleaned up when --disable-docs is used. Use AC_CONFIG_FILES and AC_OUTPUT as recommended. @ text @d123 1 @ 1.8 log @2006-02-07 Jonathon Jongsma * Makefile.am: add docs/ subdir * configure.in: added an --enable-docs switch to the configure script (enabled by default), and added AC_OUTPUT directives for the documentation Makefiles, etc. * docs/.cvsignore: * docs/Makefile.am: * docs/reference/.cvsignore: * docs/reference/Doxyfile.in: * docs/reference/Makefile.am: * docs/reference/introduction.h: Added infrastructure to build and install the API documentation for cairomm (based on libxml++ makefiles). @ text @d103 5 d114 1 a114 1 AC_OUTPUT( a117 4 docs/Makefile docs/reference/Makefile docs/reference/Doxyfile d126 2 @ 1.7 log @Increase version. @ text @d97 12 d113 4 @ 1.6 log @2006-01-25 Jonathon Jongsma * configure.in: * examples/Makefile.am: * examples/pdf-surface/: * examples/ps-surface/: * examples/svg-surface/: add examples for additional surfaces @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=4 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:4:0 @ 1.5 log @2006-01-06 Jonathon Jongsma * cairomm/surface.cc: * cairomm/surface.h: Added implementation of write_to_png() and write_to_png_stream() when PNG support is available in the base cairo library * examples/png_file/*: Added an example of creating an image surface and saving it to a png image file * examples/Makefile.am: add new example directory to SUBDIRS list * configure.in: added output declaration for examples/png_file/Makefile * examples/makefile.am_fragment: fix leftover libxml boilerplate @ text @d103 3 @ 1.4 log @0.4.0: 2005-12-17 Murray Cumming * cairomm/Makefile.am: * cairomm/refptr.h: Add shared reference-counting smartpointer, using the reference-count in the object. A copy of the tried and tested glibmm RefPtr. * cairomm/context.cc: * cairomm/context.h: * cairomm/fontface.cc: * cairomm/fontface.h: * cairomm/pattern.cc: * cairomm/pattern.h: * cairomm/surface.cc: * cairomm/surface.h: Make constructors protected and add public static create() methods that return instances in RefPtr<>s. This allows reference-counted objects to be clearly const or non-const, and allows casting between related types. @ text @d102 1 @ 1.3 log @2005-12-17 Murray Cumming * cairomm/context.cc: * cairomm/context.h: Change set_dash(void) to unset_dash(). Change rotate_deg() to rotate_degrees(). Change identity_matrix() to set_identity_matrix(). Change new_path() to clear_path(). * cairomm/fontface.cc: * cairomm/fontface.h: Comment-out get/set_user_data(), because it seems useless. @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=3 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:3:0 @ 1.2 log @Increase version. @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=2 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:2:0 @ 1.1 log @Initial revision @ text @d5 1 a5 1 GENERIC_MINOR_VERSION=1 d14 1 a14 1 GENERIC_LIBRARY_VERSION=0:1:0 @ 1.1.1.1 log @First version. @ text @@