1## Process this file with automake to produce Makefile.in
2
3# We require automake 1.6 at least.
4AUTOMAKE_OPTIONS = 1.6
5
6# This is a blank Makefile.am for using gtk-doc.
7# Copy this to your project's API docs directory and modify the variables to
8# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
9# of using the various options.
10
11# The name of the module, e.g. 'glib'.
12DOC_MODULE=libvips
13
14# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
15#DOC_MODULE_VERSION=2
16
17
18# The top-level XML file (SGML in the past). You can change this if you want to.
19DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
20
21# Directories containing the source code.
22# gtk-doc will search all .c and .h files beneath these paths
23# for inline comments documenting functions and macros.
24# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
25DOC_SOURCE_DIR=$(top_srcdir)/libvips
26
27# Extra options to pass to gtkdoc-scangobj. Not normally needed.
28SCANGOBJ_OPTIONS=
29
30# Extra options to supply to gtkdoc-scan.
31# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
32SCAN_OPTIONS=--rebuild-types
33
34# Extra options to supply to gtkdoc-mkdb.
35# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml
36MKDB_OPTIONS=--xml-mode --output-format=xml
37
38# Extra options to supply to gtkdoc-mktmpl
39# e.g. MKTMPL_OPTIONS=--only-section-tmpl
40MKTMPL_OPTIONS=
41
42# Extra options to supply to gtkdoc-mkhtml
43MKHTML_OPTIONS=
44
45# Extra options to supply to gtkdoc-fixref. Not normally needed.
46# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
47FIXXREF_OPTIONS=
48
49# Used for dependencies. The docs will be rebuilt if any of these change.
50# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
51# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
52HFILE_GLOB=$(top_srcdir)/libvips/include/vips/*.h
53CFILE_GLOB=$(top_srcdir)/libvips/*/*.c
54
55# Extra header to include when scanning, which are not under DOC_SOURCE_DIR
56# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h
57EXTRA_HFILES=
58
59# Header files or dirs to ignore when scanning. Use base file/dir names
60# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code
61
62IGNORE_VIPS_INCLUDE = \
63	almostdeprecated.h \
64	deprecated.h \
65	vips7compat.h \
66	dispatch.h \
67	enumtypes.h \
68	internal.h \
69	thread.h \
70	intl.h \
71	format.h \
72	mask.h \
73	private.h \
74	video.h
75
76# ignore all .h files in libvips/*, these are internal
77IGNORE_VIPS_C = \
78	binary.h \
79	hough.h \
80	nary.h \
81	parithmetic.h \
82	statistic.h \
83	unary.h \
84	unaryconst.h \
85	pcolour.h \
86	profiles.h \
87	bandary.h \
88	pconversion.h \
89	correlation.h \
90	pconvolution.h \
91	pcreate.h \
92	pmask.h \
93	point.h \
94	drawink.h \
95	pdraw.h \
96	dbh.h \
97	jpeg.h \
98	magick.h \
99	pforeign.h \
100	tiff.h \
101	pfreqfilt.h \
102	hist_unary.h \
103	phistogram.h \
104	sink.h \
105	vipsmarshal.h \
106	pmorphology.h \
107	global_balance.h \
108	pmosaicing.h \
109	presample.h \
110	templates.h
111
112IGNORE_HFILES = $(IGNORE_VIPS_INCLUDE) $(IGNORE_VIPS_C)
113
114# Images to copy into HTML directory.
115# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
116HTML_IMAGES = \
117	$(top_srcdir)/doc/images/owl.jpg \
118	$(top_srcdir)/doc/images/tn_owl.jpg \
119	$(top_srcdir)/doc/images/interconvert.png \
120	$(top_srcdir)/doc/images/Combine.png \
121	$(top_srcdir)/doc/images/Memtrace.png \
122	$(top_srcdir)/doc/images/Sequence.png \
123	$(top_srcdir)/doc/images/Sink.png \
124	$(top_srcdir)/doc/images/Vips-smp.png
125
126# we have some files in markdown ... convert to docbook for gtk-doc
127# pandoc makes section headers, we want refsect3 for gtk-doc
128.md.xml:
129	pandoc -s --template="$(realpath pandoc-docbook-template.docbook)" --wrap=none -V title="$<" -f markdown+smart -t docbook -o $@ $<
130	sed -e s/section/refsect3/g < $@ > x.$@ && mv x.$@ $@
131
132# Our markdown source files
133markdown_content_files = \
134	How-it-works.md \
135	libvips-from-C++.md \
136	Using-vipsthumbnail.md \
137	How-it-opens-files.md \
138	Examples.md \
139	Cite.md \
140	binding.md \
141	Making-image-pyramids.md
142
143# converted to xml in this dir by pandoc
144markdown_content_files_docbook = $(markdown_content_files:.md=.xml)
145
146# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
147# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
148content_files = \
149	using-command-line.xml \
150	using-C.xml \
151	using-threads.xml \
152	extending.xml \
153	function-list.xml \
154	file-format.xml \
155	${markdown_content_files_docbook}
156
157# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
158# These files must be listed here *and* in content_files
159# e.g. expand_content_files=running.sgml
160expand_content_files = \
161	using-command-line.xml \
162	using-C.xml \
163	using-threads.xml \
164	extending.xml \
165	function-list.xml \
166	file-format.xml \
167	${markdown_content_files_docbook}
168
169# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
170# Only needed if you are using gtkdoc-scangobj to dynamically query widget
171# signals and properties.
172# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
173# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
174GTKDOC_CFLAGS = @VIPS_CFLAGS@ @VIPS_INCLUDES@
175GTKDOC_LIBS = @VIPS_CFLAGS@ ${top_builddir}/libvips/libvips.la @VIPS_LIBS@
176
177# This includes the standard gtk-doc make rules, copied by gtkdocize.
178include gtk-doc.make
179
180# Other files to distribute
181# e.g. EXTRA_DIST += version.xml.in
182EXTRA_DIST += \
183        ${markdown_content_files} \
184	images \
185	gen-function-list.py
186
187# Files not to distribute
188# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types
189# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt
190DISTCLEANFILES = libvips.types
191
192# Comment this out if you want 'make check' to test you doc status
193# and run some sanity checks
194if ENABLE_GTK_DOC
195TESTS_ENVIRONMENT = \
196  DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \
197  SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir)
198#TESTS = $(GTKDOC_CHECK)
199endif
200
201-include $(top_srcdir)/git.mk
202