summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDaniel Elstner <danielk@openismus.com>2009-08-13 15:39:02 +0200
committerJonathon Jongsma <jjongsma@gnome.org>2009-08-13 11:08:52 -0500
commitcbed810a9b06b1ea4a89df4ec448e39ab7280682 (patch)
treed6f968b608d01b847319b349b657068160aa0fa0 /docs
parentd4000533781d05a550d3be40ca67d4429a01acec (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.
Diffstat (limited to 'docs')
-rw-r--r--docs/Makefile.am24
-rw-r--r--docs/reference/Doxyfile.in49
-rw-r--r--docs/reference/Makefile.am71
3 files changed, 46 insertions, 98 deletions
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
-