diff options
author | Daniel Elstner <danielk@openismus.com> | 2009-08-13 15:39:02 +0200 |
---|---|---|
committer | Jonathon Jongsma <jjongsma@gnome.org> | 2009-08-13 11:08:52 -0500 |
commit | cbed810a9b06b1ea4a89df4ec448e39ab7280682 (patch) | |
tree | d6f968b608d01b847319b349b657068160aa0fa0 | |
parent | d4000533781d05a550d3be40ca67d4429a01acec (diff) |
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.
29 files changed, 359 insertions, 431 deletions
@@ -1,80 +1,81 @@ *.swp -INSTALL +/INSTALL Makefile Makefile.in -aclocal.m4 -autom4te.cache -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-svg-1.0.pc -data/cairomm-xlib-1.0.pc -data/cairomm-xlib-xrender-1.0.pc -data/cairomm-win32-1.0.pc -data/cairomm-win32-font-1.0.pc -data/cairomm-quartz-1.0.pc -data/cairomm-quartz-font-1.0.pc -data/cairomm-quartz-image-1.0.pc -.deps +/aclocal.m4 +/autom4te.cache/ +/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-svg-1.0.pc +/data/cairomm-xlib-1.0.pc +/data/cairomm-xlib-xrender-1.0.pc +/data/cairomm-win32-1.0.pc +/data/cairomm-win32-font-1.0.pc +/data/cairomm-quartz-1.0.pc +/data/cairomm-quartz-font-1.0.pc +/data/cairomm-quartz-image-1.0.pc +.deps/ .dirstamp -.libs -config.guess -config.log -config.status -config.sub -configure -depcomp +.libs/ +/configure +/configure.lineno +/config.log +/config.status +stamp-h? +/cairommconfig.h -MSVC_Net2005/cairomm/cairomm.rc -MSVC_Net2005/cairomm/cairommconfig.h -MSVC_Net2008/cairomm/cairomm.rc -MSVC_Net2008/cairomm/cairommconfig.h +/MSVC_Net2005/cairomm/cairomm.rc +/MSVC_Net2005/cairomm/cairommconfig.h +/MSVC_Net2008/cairomm/cairomm.rc +/MSVC_Net2008/cairomm/cairommconfig.h -docs/reference/Doxyfile -docs/reference/cairomm_doxygen_tags -docs/reference/cairomm-1.0.devhelp2 -docs/reference/cairomm-1.0.tag -docs/reference/doxygen.log -docs/reference/doxygen-output.txt -docs/reference/doxygen-warnings.txt -docs/reference/html -docs/reference/undocumented.txt -install-sh -libtool -ltmain.sh -missing -*.o -*.lo -*.la +/docs/reference/Doxyfile +/docs/reference/cairomm_doxygen_tags +/docs/reference/cairomm-1.0.devhelp2 +/docs/reference/cairomm-1.0.tag +/docs/reference/doxygen.log +/docs/reference/doxygen-output.txt +/docs/reference/doxygen-warnings.txt +/docs/reference/html +/docs/reference/undocumented.txt +/install-sh +/libtool +/ltmain.sh +/build/missing +*.[ao] +*.l[ao] -examples/surfaces/pdf-surface -examples/surfaces/image-surface -examples/surfaces/ps-surface -examples/surfaces/svg-surface -examples/text/text-rotate -examples/text/toy-text -examples/text/user-font +/examples/surfaces/pdf-surface +/examples/surfaces/image-surface +/examples/surfaces/ps-surface +/examples/surfaces/svg-surface +/examples/text/text-rotate +/examples/text/toy-text +/examples/text/user-font -tests/test-context -tests/test-font-face -tests/test-surface -tests/test-scaled-font -tests/test-font-options -tests/test-matrix -tests/test-user-font +/tests/test-context +/tests/test-font-face +/tests/test-surface +/tests/test-scaled-font +/tests/test-font-options +/tests/test-matrix +/tests/test-user-font -cairomm/cairommconfig.h* -cairomm/stamp-* -build/compile-binding.am -build/dist-changelog.am -build/doc-reference.am -build/generate-binding.am -build/libtool.m4 -build/lt*.m4 -releases/ -tags +/build/config.* +/build/depcomp +/build/install-sh +/build/ltmain.sh +/build/compile-binding.am +/build/dist-changelog.am +/build/doc-reference.am +/build/generate-binding.am +/build/libtool.m4 +/build/lt*.m4 +/releases/ +/tags # generated by examples image.pdf @@ -1,3 +1,62 @@ +2009-08-13 Daniel Elstner <danielk@openismus.com> + + 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 <davidk@openismus.com> * MSVC_Net2005/**/Makefile.am: diff --git a/Makefile.am b/Makefile.am index 161c9a6..6ec097b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,36 +1,46 @@ +## Copyright (c) 2009 Openismus GmbH <http://www.openismus.com/> +## +## 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 <http://www.gnu.org/licenses/>. + +ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS} +DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal + if ENABLE_DOCUMENTATION doc_subdirs = docs else doc_subdirs = endif -SUBDIRS = cairomm $(doc_subdirs) data examples tests -ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS} -DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal +SUBDIRS = cairomm examples tests $(doc_subdirs) -cairomm_includedir = $(includedir)/$(CAIROMM_MODULE_NAME)/cairomm -cairomm_include_HEADERS = cairomm/cairomm.h cairomm_libincludedir = $(libdir)/$(CAIROMM_MODULE_NAME)/include -nodist_cairomm_libinclude_HEADERS = cairomm/cairommconfig.h +nodist_cairomm_libinclude_HEADERS = cairommconfig.h pkgconfigdir = $(libdir)/pkgconfig -nodist_pkgconfig_DATA = data/$(CAIROMM_MODULE_NAME).pc +nodist_pkgconfig_DATA = $(CAIROMM_INSTALL_PC) include $(srcdir)/MSVC_Net2005/filelist.am include $(srcdir)/MSVC_Net2008/filelist.am -msvc_files = $(msvc_net2005_data:%=MSVC_Net2005/%) $(msvc_net2008_data:%=MSVC_Net2008/%) - -dist_noinst_DATA = $(msvc_files) - -DISTCLEANFILES = MSVC_Net2005/cairomm/cairommconfig.h \ - MSVC_Net2008/cairomm/cairommconfig.h +msvc_files = $(addprefix MSVC_Net2005/,$(msvc_net2005_data)) \ + $(addprefix MSVC_Net2008/,$(msvc_net2008_data)) +dist_noinst_DATA = MAINTAINERS $(msvc_files) dist_noinst_SCRIPTS = autogen.sh -### -EXTRA_DIST = MAINTAINERS - -DIST_SUBDIRS = $(SUBDIRS) +DISTCLEANFILES = MSVC_Net2005/cairomm/cairommconfig.h MSVC_Net2008/cairomm/cairommconfig.h # Copied from cairo/Makefile.am: # @@ -44,11 +54,7 @@ RELEASE_UPLOAD_BASE = /srv/cairo.freedesktop.org/www 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 @@ -97,10 +103,8 @@ release-upload: release-check $(tar_file) $(sha1_file) $(gpg_file) 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 $(PACKAGE_VERSION)" v$(PACKAGE_VERSION) -doc-publish: - (cd docs/reference && $(MAKE) $(AM_MAKEFLAGS) publish) - -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:" @@ -134,4 +138,3 @@ release-publish: release-upload doc-publish releases/$(sha1_file) @echo "version component to the next (odd) number and commit." .PHONY: release-verify-even-micro release-verify-newer release-remove-old release-cleanup-group-sticky release-check release-upload release-publish - @@ -1,26 +1,7 @@ #! /bin/sh -e - -# Copyright (c) 2009 Openismus GmbH -# -# 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. - 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" "$@" +test -n "$NOCONFIGURE" || "$srcdir/configure" --enable-maintainer-mode "$@" diff --git a/cairomm/Makefile.am b/cairomm/Makefile.am index 21d2383..a837249 100644 --- a/cairomm/Makefile.am +++ b/cairomm/Makefile.am @@ -1,11 +1,30 @@ -lib_LTLIBRARIES = libcairomm-1.0.la +## Copyright (c) 2009 Openismus GmbH <http://www.openismus.com/> +## +## 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 <http://www.gnu.org/licenses/>. include $(srcdir)/filelist.am -include $(top_srcdir)/build/compile-binding.am -AM_CPPFLAGS = $(binding_includes) $(binding_cppflags) -I. $(CAIROMM_CFLAGS) +AM_CPPFLAGS = -I$(top_builddir) -I$(top_srcdir) -I. $(CAIROMM_CFLAGS) AM_CXXFLAGS = $(CAIROMM_WXXFLAGS) -libcairomm_1_0_la_SOURCES = $(binding_sources) +lib_LTLIBRARIES = libcairomm-1.0.la + +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) +libcairomm_1_0_la_LIBADD = $(CAIROMM_LIBS) + +cairomm_includedir = $(includedir)/$(CAIROMM_MODULE_NAME)/cairomm +cairomm_include_HEADERS = $(cairomm_public_h) diff --git a/cairomm/context.cc b/cairomm/context.cc index 0551378..5997250 100644 --- a/cairomm/context.cc +++ b/cairomm/context.cc @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include <cairomm/cairommconfig.h> +#include <cairommconfig.h> #include <cairomm/context.h> #include <cairomm/context_private.h> #include <cairomm/private.h> diff --git a/cairomm/context_surface_quartz.cc b/cairomm/context_surface_quartz.cc index 540dca3..face06d 100644 --- a/cairomm/context_surface_quartz.cc +++ b/cairomm/context_surface_quartz.cc @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include <cairomm/cairommconfig.h> +#include <cairommconfig.h> #include <cairomm/context_private.h> #include <cairomm/quartz_surface.h> diff --git a/cairomm/context_surface_win32.cc b/cairomm/context_surface_win32.cc index 61837bd..845d5d1 100644 --- a/cairomm/context_surface_win32.cc +++ b/cairomm/context_surface_win32.cc @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include <cairomm/cairommconfig.h> +#include <cairommconfig.h> #include <cairomm/context_private.h> #include <cairomm/win32_surface.h> diff --git a/cairomm/context_surface_xlib.cc b/cairomm/context_surface_xlib.cc index dfb0872..9834f26 100644 --- a/cairomm/context_surface_xlib.cc +++ b/cairomm/context_surface_xlib.cc @@ -16,7 +16,7 @@ * 02110-1301, USA. */ -#include <cairomm/cairommconfig.h> +#include <cairommconfig.h> #include <cairomm/context_private.h> #include <cairomm/xlib_surface.h> diff --git a/cairomm/filelist.am b/cairomm/filelist.am index 77e5af7..e2f67e3 100644 --- a/cairomm/filelist.am +++ b/cairomm/filelist.am @@ -1,42 +1,44 @@ ## This file is part of cairomm. -files_extra_cc = 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 \ - private.cc \ - context_surface_quartz.cc \ - context_surface_win32.cc \ - context_surface_xlib.cc +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 -files_extra_h = 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 +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 -files_extra_ph = private.h \ - context_private.h +cairomm_private_h = \ + context_private.h \ + private.h diff --git a/cairommconfig.h.in b/cairommconfig.h.in new file mode 100644 index 0000000..f88ed99 --- /dev/null +++ b/cairommconfig.h.in @@ -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 --git a/configure.ac b/configure.ac index 8df9f06..c730f2a 100644 --- a/configure.ac +++ b/configure.ac @@ -1,10 +1,27 @@ +## Copyright (c) 2009 Openismus GmbH <http://www.openismus.com/> +## +## 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 <http://www.gnu.org/licenses/>. + AC_INIT([cairomm], [1.8.2], [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([cairomm/cairommconfig.h]) +AC_CONFIG_HEADERS([build/config.h cairommconfig.h]) AM_INIT_AUTOMAKE([1.10 -Wno-portability no-define nostdinc tar-pax]) AM_MAINTAINER_MODE @@ -19,9 +36,23 @@ 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']) -PKG_CHECK_MODULES([CAIROMM], [$CAIROMM_MODULES]) +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++]) @@ -30,125 +61,7 @@ MM_ARG_WITH_TAGFILE_DOC([libsigc++-2.0.tag], [sigc++-2.0]) AC_LANG([C++]) MM_ARG_ENABLE_WARNINGS([CAIROMM_WXXFLAGS], [-Wall], - [-Wall -g -Wextra]) - -AC_CONFIG_FILES([Makefile - cairomm/Makefile - data/Makefile - data/cairomm-1.0.pc - docs/Makefile - docs/reference/Doxyfile - examples/Makefile - tests/Makefile]) - -AC_PROG_CXX -AC_PROG_CXXCPP -AC_LANG_CPLUSPLUS -AC_PROG_INSTALL -AC_LIBTOOL_WIN32_DLL -AM_PROG_LIBTOOL - -# 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". -# TODO: Disabled for now. I don't think this should be enabled by the -# libraries themselves on behalf of the user. That makes no sense as -# it is a platform-wide ABI choice. - -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 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 - + [-pedantic -Wall -Wextra]) AC_ARG_ENABLE(tests, AC_HELP_STRING([--enable-tests=yes|no], @@ -206,18 +119,34 @@ if test x$ENABLE_TESTS = xyes ; then else AC_MSG_NOTICE(disabled support of automated tests) fi -AM_CONDITIONAL(AUTOTESTS, test x$ENABLE_TESTS = xyes) +AM_CONDITIONAL([AUTOTESTS], [test "x$ENABLE_TESTS" = xyes]) CAIROMM_ARG_ENABLE_API_EXCEPTIONS -AC_CONFIG_FILES([ - $CONFIG_PC - MSVC_Net2005/cairomm/cairomm.rc - MSVC_Net2008/cairomm/cairomm.rc]) +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 cairomm/cairommconfig.h MSVC_Net2005/cairomm/cairommconfig.h]) + [cp -f cairommconfig.h MSVC_Net2005/cairomm/cairommconfig.h]) AC_CONFIG_COMMANDS([MSVC_Net2008/cairomm/cairommconfig.h], - [cp -f cairomm/cairommconfig.h MSVC_Net2008/cairomm/cairommconfig.h]) - + [cp -f cairommconfig.h MSVC_Net2008/cairomm/cairommconfig.h]) AC_OUTPUT diff --git a/data/Makefile.am b/data/Makefile.am deleted file mode 100644 index cb3b574..0000000 --- a/data/Makefile.am +++ /dev/null @@ -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 --git a/data/cairomm-1.0.pc.in b/data/cairomm-1.0.pc.in index 4f5cecc..d7d0fe9 100644 --- a/data/cairomm-1.0.pc.in +++ b/data/cairomm-1.0.pc.in @@ -8,13 +8,12 @@ includedir=@includedir@ docdir=${datarootdir}/doc/@CAIROMM_MODULE_NAME@ doxytagfile=${docdir}/reference/@CAIROMM_MODULE_NAME@.tag htmlrefdir=${docdir}/reference/html -htmlrefpub=http://www.cairographics.org/documentation/$(book_name)/reference/ +htmlrefpub=http://www.cairographics.org/documentation/cairomm/reference Name: cairomm -Description: C++ wrapper for cairo +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-@CAIROMM_API_VERSION@ - +Cflags: -I${includedir}/@CAIROMM_MODULE_NAME@ -I${libdir}/@CAIROMM_MODULE_NAME@/include diff --git a/data/cairomm-ft-1.0.pc.in b/data/cairomm-ft-1.0.pc.in index 13326ab..0c2e666 100644 --- a/data/cairomm-ft-1.0.pc.in +++ b/data/cairomm-ft-1.0.pc.in @@ -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 --git a/data/cairomm-pdf-1.0.pc.in b/data/cairomm-pdf-1.0.pc.in index 5a14a54..2d0d944 100644 --- a/data/cairomm-pdf-1.0.pc.in +++ b/data/cairomm-pdf-1.0.pc.in @@ -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 --git a/data/cairomm-png-1.0.pc.in b/data/cairomm-png-1.0.pc.in index 8566f8e..37b97cb 100644 --- a/data/cairomm-png-1.0.pc.in +++ b/data/cairomm-png-1.0.pc.in @@ -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 --git a/data/cairomm-ps-1.0.pc.in b/data/cairomm-ps-1.0.pc.in index ad5e735..aa5eec5 100644 --- a/data/cairomm-ps-1.0.pc.in +++ b/data/cairomm-ps-1.0.pc.in @@ -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 --git a/data/cairomm-quartz-1.0.pc.in b/data/cairomm-quartz-1.0.pc.in index ebb30bf..1d0e65d 100644 --- a/data/cairomm-quartz-1.0.pc.in +++ b/data/cairomm-quartz-1.0.pc.in @@ -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 --git a/data/cairomm-quartz-font-1.0.pc.in b/data/cairomm-quartz-font-1.0.pc.in index 14913ce..5aeb663 100644 --- a/data/cairomm-quartz-font-1.0.pc.in +++ b/data/cairomm-quartz-font-1.0.pc.in @@ -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 --git a/data/cairomm-quartz-image-1.0.pc.in b/data/cairomm-quartz-image-1.0.pc.in index 25bd8c7..5eb7ba3 100644 --- a/data/cairomm-quartz-image-1.0.pc.in +++ b/data/cairomm-quartz-image-1.0.pc.in @@ -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 --git a/data/cairomm-svg-1.0.pc.in b/data/cairomm-svg-1.0.pc.in index 151c576..ee320b6 100644 --- a/data/cairomm-svg-1.0.pc.in +++ b/data/cairomm-svg-1.0.pc.in @@ -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 --git a/data/cairomm-win32-1.0.pc.in b/data/cairomm-win32-1.0.pc.in index 99c1285..711e70e 100644 --- a/data/cairomm-win32-1.0.pc.in +++ b/data/cairomm-win32-1.0.pc.in @@ -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 --git a/data/cairomm-win32-font-1.0.pc.in b/data/cairomm-win32-font-1.0.pc.in index eaa73f0..aab19c6 100644 --- a/data/cairomm-win32-font-1.0.pc.in +++ b/data/cairomm-win32-font-1.0.pc.in @@ -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 --git a/data/cairomm-xlib-1.0.pc.in b/data/cairomm-xlib-1.0.pc.in index 6713254..a36f649 100644 --- a/data/cairomm-xlib-1.0.pc.in +++ b/data/cairomm-xlib-1.0.pc.in @@ -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 --git a/data/cairomm-xlib-xrender-1.0.pc.in b/data/cairomm-xlib-xrender-1.0.pc.in index 9484884..2071f5e 100644 --- a/data/cairomm-xlib-xrender-1.0.pc.in +++ b/data/cairomm-xlib-xrender-1.0.pc.in @@ -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 --git a/docs/Makefile.am b/docs/Makefile.am index 9b51ce1..5fd62bf 100644 --- a/docs/Makefile.am +++ b/docs/Makefile.am @@ -1,10 +1,28 @@ +## Copyright (c) 2009 Openismus GmbH <http://www.openismus.com/> +## +## 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 <http://www.gnu.org/licenses/>. + include $(top_srcdir)/cairomm/filelist.am book_name = $(CAIROMM_MODULE_NAME) -doc_input = $(addprefix $(top_srcdir)/cairomm/,$(files_extra_h)) +doc_input = $(addprefix $(top_srcdir)/cairomm/,$(cairomm_public_h)) -htmlrefpub = http://www.cairographics.org/documentation/$(book_name)/reference/ +pubdocbase = http://www.cairographics.org/documentation/ +htmlrefpub = $(pubdocbase)cairomm/reference include $(top_srcdir)/build/doc-reference.am -dist_noinst_DATA += reference/cairomm-header.html +dist_noinst_DATA += reference/cairomm.css reference/cairomm-header.html diff --git a/docs/reference/Doxyfile.in b/docs/reference/Doxyfile.in index a10cc2e..8623b36 100644 --- a/docs/reference/Doxyfile.in +++ b/docs/reference/Doxyfile.in @@ -12,14 +12,14 @@ CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = YES -ABBREVIATE_BRIEF = +ABBREVIATE_BRIEF = ALWAYS_DETAILED_SEC = NO INLINE_INHERITED_MEMB = NO FULL_PATH_NAMES = YES -STRIP_FROM_PATH = "@abs_top_builddir@/cairomm/" \ - "@abs_top_srcdir@/cairomm/" -STRIP_FROM_INC_PATH = "@abs_top_builddir@/cairomm/" \ - "@abs_top_srcdir@/cairomm/" +STRIP_FROM_PATH = "@abs_top_builddir@/" \ + "@abs_top_srcdir@/" +STRIP_FROM_INC_PATH = "@abs_top_builddir@/" \ + "@abs_top_srcdir@/" SHORT_NAMES = NO JAVADOC_AUTOBRIEF = YES QT_AUTOBRIEF = NO @@ -27,7 +27,7 @@ MULTILINE_CPP_IS_BRIEF = NO INHERIT_DOCS = YES SEPARATE_MEMBER_PAGES = NO TAB_SIZE = 8 -ALIASES = +ALIASES = OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_JAVA = NO OPTIMIZE_FOR_FORTRAN = NO @@ -40,7 +40,7 @@ IDL_PROPERTY_SUPPORT = YES DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES TYPEDEF_HIDES_STRUCT = NO -SYMBOL_CACHE_SIZE = 0 +SYMBOL_CACHE_SIZE = 0 #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -83,7 +83,7 @@ WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO -WARN_FORMAT = "$file:$line: $text " +WARN_FORMAT = "$file:$line: $text" WARN_LOGFILE = reference/doxygen.log #--------------------------------------------------------------------------- # configuration options related to the input files @@ -92,10 +92,9 @@ INPUT = INPUT_ENCODING = UTF-8 FILE_PATTERNS = RECURSIVE = NO -EXCLUDE = "@abs_top_srcdir@/cairomm/private.h" \ - "@abs_top_srcdir@/cairomm/context_private.h" +EXCLUDE = EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = +EXCLUDE_PATTERNS = EXCLUDE_SYMBOLS = _* \ adaptor_trait \ basic_filebuf \ @@ -109,9 +108,9 @@ EXAMPLE_PATH = "@abs_top_srcdir@/examples" EXAMPLE_PATTERNS = *.cc \ *.h EXAMPLE_RECURSIVE = YES -IMAGE_PATH = -INPUT_FILTER = -FILTER_PATTERNS = +IMAGE_PATH = +INPUT_FILTER = +FILTER_PATTERNS = FILTER_SOURCE_FILES = NO #--------------------------------------------------------------------------- # configuration options related to source browsing @@ -173,8 +172,8 @@ LATEX_CMD_NAME = latex MAKEINDEX_CMD_NAME = makeindex COMPACT_LATEX = NO PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = +EXTRA_PACKAGES = +LATEX_HEADER = PDF_HYPERLINKS = YES USE_PDFLATEX = YES LATEX_BATCHMODE = NO @@ -186,8 +185,8 @@ GENERATE_RTF = NO RTF_OUTPUT = rtf COMPACT_RTF = NO RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = #--------------------------------------------------------------------------- # configuration options related to the man page output #--------------------------------------------------------------------------- @@ -200,8 +199,8 @@ MAN_LINKS = NO #--------------------------------------------------------------------------- GENERATE_XML = NO XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = +XML_SCHEMA = +XML_DTD = XML_PROGRAMLISTING = NO #--------------------------------------------------------------------------- # configuration options for the AutoGen Definitions output @@ -213,7 +212,7 @@ GENERATE_AUTOGEN_DEF = NO GENERATE_PERLMOD = NO PERLMOD_LATEX = NO PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = +PERLMOD_MAKEVAR_PREFIX = #--------------------------------------------------------------------------- # Configuration options related to the preprocessor #--------------------------------------------------------------------------- @@ -221,8 +220,8 @@ ENABLE_PREPROCESSING = YES MACRO_EXPANSION = YES EXPAND_ONLY_PREDEF = YES SEARCH_INCLUDES = YES -INCLUDE_PATH = "@abs_top_builddir@/cairomm/" \ - "@abs_top_srcdir@/cairomm/" +INCLUDE_PATH = "@abs_top_builddir@/" \ + "@abs_top_srcdir@/" INCLUDE_FILE_PATTERNS = *.h PREDEFINED = __cplusplus \ DOXYGEN_IGNORE_THIS \ @@ -238,7 +237,9 @@ PREDEFINED = __cplusplus \ CAIRO_HAS_FT_FONT \ CAIRO_HAS_WIN32_FONT \ CAIRO_HAS_QUARTZ_FONT -EXPAND_AS_DEFINED = +EXPAND_AS_DEFINED = CAIROMM_MAJOR_VERSION \ + CAIROMM_MINOR_VERSION \ + CAIROMM_MICRO_VERSION SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration::additions related to external references diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am deleted file mode 100644 index 14c9f3a..0000000 --- a/docs/reference/Makefile.am +++ /dev/null @@ -1,71 +0,0 @@ -DOXYGEN_CONFIGFILE = Doxyfile -DOXYGEN_CONFIGFILE_SOURCE = Doxyfile.in -WEB_SERVER = cairographics.org -WEB_SERVER_PATH = /srv/cairo.freedesktop.org/www/documentation/cairomm/reference -HTML_TEMPLATE_FILES = cairomm.css cairomm-header.html - -EXTRA_DIST = $(DOXYGEN_CONFIGFILE_SOURCE) \ - $(HTML_TEMPLATE_FILES) cairomm_doxygen_tags - -cairomm_doxygen_tags : $(index_html) - -index_html = html/index.html - -$(index_html): $(DOXYGEN_CONFIGFILE) $(wildcard $(top_srcdir)/cairomm/*.h) $(HTML_TEMPLATE_FILES) - -rm -rf html - doxygen $(DOXYGEN_CONFIGFILE) \ - 2> doxygen-warnings.txt | tee doxygen-output.txt && cat doxygen-warnings.txt - -CAIROMM_DOC_TARNAME=$(PACKAGE)-doc.tar.gz - -doc-tarball : $(CAIROMM_DOC_TARNAME) - -$(CAIROMM_DOC_TARNAME): $(index_html) - tar cf - html | gzip -c --best > $@ - -referencedir = $(datadir)/doc/libcairomm-1.0/reference/html - -publish: $(index_html) doc-tarball - rsync -avz --rsh ssh html/ $(WEB_SERVER):$(WEB_SERVER_PATH) - rsync -avz --rsh ssh $(CAIROMM_DOC_TARNAME) $(WEB_SERVER):$(WEB_SERVER_PATH) - -install-reference: $(index_html) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(referencedir) - @dir='$(<D)'; for p in `ls $$dir/*.html $$dir/*.css $$dir/*.png $$dir/*.jpg $$dir/*.map $$dir/*.md5 $$dir/*.dot` ; do \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(referencedir)/$$f"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(referencedir)/$$f; \ - done - -uninstall-reference: $(index_html) - @$(NORMAL_UNINSTALL) - @dir='$(<D)'; for p in $$dir/*.html $$dir/*.css $$dir/*.png $$dir/*.jpg $$dir/*.map $$dir/*.md5 $$dir/*.dot ; do \ - f="`echo $$p | sed -e 's|^.*/||'`"; \ - echo " rm -f $(DESTDIR)$(referencedir)/$$f"; \ - rm -f $(DESTDIR)$(referencedir)/$$f; \ - done - -DOXYGEN_REPORTS = doxygen-output.txt doxygen-warnings.txt undocumented.txt - -doc-clean: - -rm -rf html - -rm -f cairomm_doxygen_tags - -rm -f $(DOXYGEN_REPORTS) - -install-data-local: install-reference - -uninstall-local: uninstall-reference - -all-local: $(index_html) - -maintainer-clean-local: doc-clean -distclean-local: doc-clean - -dist-hook: $(index_html) - cp -R html $(distdir) - -DISTCLEANFILES = $(DOXYGEN_CONFIGFILE) $(DOXYGEN_REPORTS) - -.PHONY: doc-clean install-reference uninstall-reference - |