diff options
Diffstat (limited to 'doc/devel/calendar/cal-client/Makefile.am')
-rw-r--r-- | doc/devel/calendar/cal-client/Makefile.am | 264 |
1 files changed, 165 insertions, 99 deletions
diff --git a/doc/devel/calendar/cal-client/Makefile.am b/doc/devel/calendar/cal-client/Makefile.am index 109bdcc241..a3e339e5a9 100644 --- a/doc/devel/calendar/cal-client/Makefile.am +++ b/doc/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 |