aboutsummaryrefslogtreecommitdiffstats
path: root/help/devel/calendar/cal-client/Makefile.am
diff options
context:
space:
mode:
Diffstat (limited to 'help/devel/calendar/cal-client/Makefile.am')
-rw-r--r--help/devel/calendar/cal-client/Makefile.am264
1 files changed, 165 insertions, 99 deletions
diff --git a/help/devel/calendar/cal-client/Makefile.am b/help/devel/calendar/cal-client/Makefile.am
index 109bdcc241..a3e339e5a9 100644
--- a/help/devel/calendar/cal-client/Makefile.am
+++ b/help/devel/calendar/cal-client/Makefile.am
@@ -1,131 +1,197 @@
# The name of the module.
DOC_MODULE=evolution-cal-client
-# The directory containing the source code (if it contains documentation).
+# The top-level SGML file. Change it if you want.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting functions and macros.
DOC_SOURCE_DIR=$(EVOLUTION_DIR)/calendar/cal-client
-CFLAGS =" \
+# Extra options to supply to gtkdoc-scan.
+SCAN_OPTIONS=
+
+# Extra options to supply to gtkdoc-mkdb.
+MKDB_OPTIONS=
+
+# Extra options to supply to gtkdoc-fixref.
+FIXXREF_OPTIONS=
+
+# Used for dependencies.
+HFILE_GLOB= \
+ $(top_srcdir)/calendar/cal-client/cal-client.c \
+ $(top_srcdir)/calendar/cal-client/cal-client-types.c
+
+CFILE_GLOB= \
+ $(top_srcdir)/calendar/cal-client/cal-client.h \
+ $(top_srcdir)/calendar/cal-client/cal-client-types.h
+
+# Header files to ignore when scanning.
+IGNORE_HFILES= \
+ cal-listener.h \
+ evolution-calendar.h
+
+# Images to copy into HTML directory.
+HTML_IMAGES =
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+content_files =
+
+# Other files to distribute.
+extra_files =
+
+# CFLAGS and LDFLAGS for compiling scan program. Only needed if your app/lib
+# contains GtkObjects/GObjects and you want to document signals and properties.
+GTKDOC_CFLAGS= \
-I$(top_srcdir)/calendar \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/libical/src/libical \
-I$(top_srcdir)/libical/src/libical \
- $(BONOBO_VFS_GNOME_CFLAGS) \
- "
+ $(BONOBO_VFS_GNOME_CFLAGS)
-LDFLAGS=" \
+GTKDOC_LIBS= \
$(BONOBO_VFS_GNOME_LIBS) \
- $(top_builddir)/calendar/cal-client/.libs/libcal-client.a \
- $(top_builddir)/calendar/cal-util/.libs/libcal-util.a \
- $(top_builddir)/libical/src/libical/.libs/libical.a \
- $(top_builddir)/libversit/.libs/libversit.al \
- "
-
-DOC_DIR=$(datadir)/gnome/html
-
-DOC_DIR_INSTALL_FILES = \
- evolution-cal-client.args \
- evolution-cal-client.hierarchy \
- evolution-cal-client.signals \
- evolution-cal-client.types \
- evolution-cal-client-decl.txt \
- evolution-cal-client-sections.txt
-
-SOURCE_FILES = \
- $(top_srcdir)/calendar/cal-client/cal-client.c \
- $(top_srcdir)/calendar/cal-client/cal-client.h \
- $(top_srcdir)/calendar/cal-client/cal-client-types.c \
- $(top_srcdir)/calendar/cal-client/cal-client-types.h
+ $(top_builddir)/calendar/cal-client/.libs/libcal-client-static.al\
+ $(top_builddir)/calendar/cal-util/.libs/libcal-util-static.al \
+ $(top_builddir)/libical/src/libical/.libs/libical-static.al \
+ $(top_builddir)/libversit/.libs/libversit.al
-IGNORED_HEADER_FILES = \
- cal-listener.h \
- evolution-calendar.h
+GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
+GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
-scan_generated = \
- evolution-cal-client-decl.txt \
- evolution-cal-client.args \
- evolution-cal-client.hierarchy \
- evolution-cal-client.signals \
- evolution-cal-client.types
-
-tmpl_dependencies = \
- evolution-cal-client-decl.txt \
- evolution-cal-client-sections.txt \
- evolution-cal-client.args \
- evolution-cal-client.hierarchy \
- evolution-cal-client.signals
-
-tmpl_sources = \
- tmpl/cal-client.sgml \
- tmpl/evolution-cal-client-unused.sgml
-
-tmpl_generated = \
- evolution-cal-client-unused.txt
-
-sgml_dependencies = \
- evolution-cal-client-decl.txt \
- evolution-cal-client-sections.txt \
- evolution-cal-client.args \
- evolution-cal-client.hierarchy \
- evolution-cal-client.signals \
- tmpl/cal-client.sgml
-
-sgml_generated = \
- sgml/cal-client.sgml \
- sgml/evolution-cal-client-doc.bottom \
- sgml/evolution-cal-client-doc.top \
- sgml/object_index.sgml \
- sgml/tree_index.sgml
-
-EXTRA_DIST = \
- evolution-cal-client.args \
- evolution-cal-client.hierarchy \
- evolution-cal-client.signals \
- evolution-cal-client.types \
- evolution-cal-client-decl.txt \
- evolution-cal-client-sections.txt
-
-all: $(sgml_generated)
+# If you need to override some of the declarations, place them in this file
+# and uncomment this line.
+#DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt
+DOC_OVERRIDES =
+
+#DOC_DIR=$(datadir)/gnome/html
+
+###########################################################################
+# Everything below here is generic and you shouldn't need to change it.
+###########################################################################
+
+TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
+
+EXTRA_DIST = \
+ $(content_files) \
+ $(extra_files) \
+ $(HTML_IMAGES) \
+ $(DOC_MAIN_SGML_FILE) \
+ $(DOC_MODULE).types \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_OVERRIDES)
+
+DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
+ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
+
+SCANOBJ_FILES = \
+ $(DOC_MODULE).args \
+ $(DOC_MODULE).hierarchy \
+ $(DOC_MODULE).signals
if ENABLE_GTK_DOC
-scan $(scan_generated): $(SOURCE_FILES)
- -(ln -sf $(srcdir)/$(DOC_MODULE).types . \
- && env CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) \
- gtkdoc-scanobj --module=$(DOC_MODULE) \
- && gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) \
- --ignore-headers="$(IGNORED_HEADER_FILES)" )
-
-templates $(tmpl_sources) $(tmpl_generated): $(tmpl_dependencies)
+#all-local: html-build.stamp
+all-local: sgml-build.stamp
+
+#### scan ####
+
+scan-build.stamp: $(HFILE_GLOB)
+ @echo '*** Scanning header files ***'
+ if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scanobj --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
+ else \
+ cd $(srcdir) ; \
+ for i in $(SCANOBJ_FILES) ; do \
+ test -f $$i || touch $$i ; \
+ done \
+ fi
+ cd $(srcdir) && \
+ gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
+ touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
+ @true
+
+#### templates ####
+
+tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_OVERRIDES)
+ @echo '*** Rebuilding template files ***'
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
+ touch tmpl-build.stamp
-sgml $(sgml_generated): $(sgml_dependencies)
- cd $(srcdir) \
- && gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
-else
-scan $(scan_generated): $(SOURCE_FILES)
+tmpl.stamp: tmpl-build.stamp
+ @true
+
+#### sgml ####
+
+sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
+ @echo '*** Building SGML ***'
+ cd $(srcdir) && \
+ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
+ touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+ @true
-templates $(tmpl_sources) $(tmpl_generated): $(tmpl_dependencies)
+#### html ####
-sgml $(sgml_generated): $(sgml_dependencies)
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ @echo '*** Building HTML ***'
+ test -d $(srcdir)/html || mkdir $(srcdir)/html
+ cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+ test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
+ @echo '-- Fixing Crossreferences'
+ cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+ touch html-build.stamp
endif
+##############
+
clean-local:
- rm -f *~ *.bak *.signals *-unused.txt
+ rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
maintainer-clean-local: clean
- cd $(srcdir) && rm -rf sgml $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+ cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
- $(mkinstalldirs) $(DOC_DIR)
- for i in $(DOC_DIR_INSTALL_FILES); do \
- $(INSTALL_DATA) $(srcdir)/$$i $(DOC_DIR); \
- done
+ $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
+ (installfiles=`echo $(srcdir)/html/*.html`; \
+ if test "$$installfiles" = '$(srcdir)/html/*.html'; \
+ then echo '-- Nothing to install' ; \
+ else \
+ for i in $$installfiles; do \
+ echo '-- Installing '$$i ; \
+ $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
+ done; \
+ echo '-- Installing $(srcdir)/html/index.sgml' ; \
+ $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
+ fi)
+
+#
+# Require gtk-doc when making dist
+#
+if ENABLE_GTK_DOC
+dist-check-gtkdoc:
+else
+dist-check-gtkdoc:
+ @echo "*** gtk-doc must be installed and enabled in order to make dist"
+ @false
+endif
-dist-hook:
- mkdir $(distdir)/sgml
+dist-hook: dist-check-gtkdoc dist-hook-local
mkdir $(distdir)/tmpl
+ mkdir $(distdir)/sgml
+ mkdir $(distdir)/html
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
-cp $(srcdir)/sgml/*.sgml $(distdir)/sgml
- -cp $(srcdir)/sgml/*.bottom $(srcdir)/sgml/*.top $(distdir)/sgml
+ -cp $(srcdir)/html/index.sgml $(distdir)/html
+ -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
+
+ images=$(HTML_IMAGES) ; \
+ for i in $$images ; do \
+ cp $(srcdir)/$$i $(distdir)/html ; \
+ done
-.PHONY: scan templates sgml
+.PHONY : dist-hook-local