Merge pull request #1404 from b4n/search/gtk-3-20-history
[geany-mirror.git] / doc / Makefile.am
blobd8819ecd9627fa2d3de2755ed348878d1a64eec2
1 man_MANS=geany.1
3 if INSTALL_HTML_DOCS
4 htmldocimagesdir = $(docdir)/html/images
5 dist_htmldocimages_DATA = \
6         images/build_menu_commands_dialog.png \
7         images/find_dialog.png \
8         images/find_in_files_dialog.png \
9         images/main_window.png \
10         images/pref_dialog_edit_completions.png \
11         images/pref_dialog_edit_display.png \
12         images/pref_dialog_edit_features.png \
13         images/pref_dialog_edit_indentation.png \
14         images/pref_dialog_files.png \
15         images/pref_dialog_gen_misc.png \
16         images/pref_dialog_gen_startup.png \
17         images/pref_dialog_interface_interface.png \
18         images/pref_dialog_interface_notebook.png \
19         images/pref_dialog_interface_toolbar.png \
20         images/pref_dialog_keys.png \
21         images/pref_dialog_printing.png \
22         images/pref_dialog_templ.png \
23         images/pref_dialog_tools.png \
24         images/pref_dialog_various.png \
25         images/pref_dialog_vte.png \
26         images/replace_dialog.png
27 endif
29 doc_DATA = \
30         $(top_srcdir)/AUTHORS \
31         $(top_srcdir)/ChangeLog \
32         $(top_srcdir)/COPYING \
33         $(top_srcdir)/NEWS \
34         $(top_srcdir)/README \
35         $(top_srcdir)/THANKS \
36         $(top_srcdir)/TODO
38 DOCDIR = $(DESTDIR)$(docdir)
40 EXTRA_DIST = \
41         geany.html \
42         geany.css \
43         geany.txt \
44         geany.1
46 # HTML user manual and hacking file
47 if WITH_RST2HTML
49 geany.html: $(srcdir)/geany.css $(srcdir)/geany.txt
50         $(AM_V_GEN)$(RST2HTML) -stg --stylesheet=$(srcdir)/geany.css $(srcdir)/geany.txt $@
52 hacking.html: $(srcdir)/geany.css $(top_srcdir)/HACKING
53         $(AM_V_GEN)$(RST2HTML) -stg --stylesheet=$(srcdir)/geany.css $(top_srcdir)/HACKING $@
55 all-local: geany.html hacking.html
57 # clean on 'maintainer-clean' rather than 'clean' in case it was not
58 # built by Make but rather part of the distribution.  This is fine even
59 # then, as configure will properly require what is needed to build it
60 # again if it is missing.
61 maintainer-clean-local: maintainer-clean-html-local
62 maintainer-clean-html-local:
63         -rm -f geany.html
65 clean-local: clean-html-local
66 clean-html-local:
67         -rm -f hacking.html
69 endif
71 # PDF user manual
72 if WITH_RST2PDF
74 geany-$(VERSION).pdf: geany.txt
75         $(AM_V_GEN)$(RST2PDF) $(srcdir)/geany.txt -o $@
77 all-local: geany-$(VERSION).pdf
79 clean-local: clean-pdf-local
80 clean-pdf-local:
81         -rm -f geany-$(VERSION).pdf
83 endif
85 # API Documentation
86 if WITH_DOXYGEN
88 doxygen_sources = \
89         $(srcdir)/plugins.dox \
90         $(srcdir)/pluginsignals.c \
91         $(srcdir)/pluginsymbols.c \
92         $(srcdir)/stash-example.c \
93         $(srcdir)/stash-gui-example.c
95 EXTRA_DIST += $(doxygen_sources)
97 doxygen_dependencies = \
98         $(doxygen_sources) \
99         $(top_srcdir)/src/*.[ch] \
100         $(top_srcdir)/plugins/geanyplugin.h \
101         $(top_srcdir)/src/tagmanager/tm_source_file.[ch] \
102         $(top_srcdir)/src/tagmanager/tm_workspace.[ch] \
103         $(top_srcdir)/src/tagmanager/tm_tag.h \
104         $(top_srcdir)/src/tagmanager/tm_parser.h
106 Doxyfile.stamp: Doxyfile $(doxygen_dependencies)
107         $(AM_V_GEN)$(DOXYGEN) Doxyfile && echo "" > $@
109 ALL_LOCAL_TARGETS = Doxyfile.stamp
110 CLEAN_LOCAL_TARGETS = clean-api-docs-local
112 clean-api-docs-local:
113         -rm -rf reference/ Doxyfile.stamp doxygen_*
115 if ENABLE_GTKDOC_HEADER
117 # set WARN_IF_UNDOCUMENTED because apparently doxygens warns for undocumented stuff
118 # in headers (even though it's correctly documented in the corresponding .c file) only
119 # for xml output
120 Doxyfile-gi: Doxyfile
121         $(AM_V_GEN)$(SED) \
122                 -e 's,gironly=@internal,gironly=,' \
123                 -e 's,^\(GENERATE_HTML.*\)YES,\1NO,' \
124                 -e 's,^\(GENERATE_XML.*\)NO,\1YES,' \
125                 -e 's,^\(WARN_IF_UNDOCUMENTED.*\)YES,\1NO,' \
126                 -e 's,^\(SORT_MEMBER_DOCS.*\)YES,\1NO,' \
127                 -e 's,^\(SORT_BRIEF_DOCS.*\)YES,\1NO,' \
128                 $< > $@ || { $(RM) $@ && exit 1; }
130 # we depend on Doxyfile.stamp not have this run in parallel with it to avoid
131 # concurrent Doxygen runs, which might overwrite each other's files
132 Doxyfile-gi.stamp: Doxyfile-gi Doxyfile.stamp $(doxygen_dependencies)
133         $(AM_V_GEN)$(DOXYGEN) Doxyfile-gi && echo "" > $@
135 geany-gtkdoc.h: Doxyfile-gi.stamp $(top_srcdir)/scripts/gen-api-gtkdoc.py
136         $(AM_V_GEN)$(top_srcdir)/scripts/gen-api-gtkdoc.py xml -d $(builddir) -o $@ \
137                         --sci-output geany-sciwrappers-gtkdoc.h
139 geany-sciwrappers-gtkdoc.h: geany-gtkdoc.h
141 geany_gtkdocincludedir = $(includedir)/geany/gtkdoc
142 nodist_geany_gtkdocinclude_HEADERS = geany-gtkdoc.h geany-sciwrappers-gtkdoc.h
144 ALL_LOCAL_TARGETS += geany-gtkdoc.h geany-sciwrappers-gtkdoc.h
145 CLEAN_LOCAL_TARGETS += clean-gtkdoc-header-local
147 clean-gtkdoc-header-local:
148         -rm -rf xml/ Doxyfile-gi Doxyfile-gi.stamp geany-gtkdoc.h geany-sciwrappers-gtkdoc.h
150 endif
152 all-local: $(ALL_LOCAL_TARGETS)
153 clean-local: $(CLEAN_LOCAL_TARGETS)
155 endif
157 uninstall-local:
158         rm -f $(DOCDIR)/html/index.html
159         rm -f $(DOCDIR)/manual.txt
160         rm -f $(DOCDIR)/ScintillaLicense.txt
162 # manually install some files under another name
163 install-data-local:
164 if INSTALL_HTML_DOCS
165         $(mkinstalldirs) $(DOCDIR)/html
166 #       as we don't install with the automated mechanism so we can rename the file,
167 #       we need to find the source file in the right location (either builddir or srcdir)
168         dir=$(builddir); test -f "$$dir/geany.html" || dir=$(srcdir); \
169         $(INSTALL_DATA) "$$dir/geany.html" $(DOCDIR)/html/index.html
170 endif
171         $(mkinstalldirs) $(DOCDIR)
172         $(INSTALL_DATA) $(srcdir)/geany.txt $(DOCDIR)/manual.txt
173         $(INSTALL_DATA) $(top_srcdir)/scintilla/License.txt $(DOCDIR)/ScintillaLicense.txt