1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
1 |
# -*- mode: makefile -*-
|
2 |
||
3 |
####################################
|
|
4 |
# Everything below here is generic #
|
|
5 |
####################################
|
|
6 |
||
7 |
if GTK_DOC_USE_LIBTOOL
|
|
8 |
GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) |
|
9 |
GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
10 |
GTKDOC_RUN = $(LIBTOOL) --mode=execute |
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
11 |
else
|
12 |
GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) |
|
13 |
GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
14 |
GTKDOC_RUN = sh -c |
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
15 |
endif
|
16 |
||
17 |
# We set GPATH here; this gives us semantics for GNU make
|
|
18 |
# which are more like other make's VPATH, when it comes to
|
|
19 |
# whether a source that is a target of one rule is then
|
|
20 |
# searched for in VPATH/GPATH.
|
|
21 |
#
|
|
22 |
GPATH = $(srcdir) |
|
23 |
||
24 |
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) |
|
25 |
||
26 |
EXTRA_DIST = \ |
|
27 |
$(content_files) \ |
|
28 |
$(HTML_IMAGES) \ |
|
29 |
$(DOC_MAIN_SGML_FILE) \ |
|
30 |
$(DOC_MODULE)-sections.txt \ |
|
31 |
$(DOC_MODULE)-overrides.txt |
|
32 |
||
33 |
DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ |
|
34 |
$(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp |
|
35 |
||
36 |
SCANOBJ_FILES = \ |
|
37 |
$(DOC_MODULE).args \ |
|
38 |
$(DOC_MODULE).hierarchy \ |
|
39 |
$(DOC_MODULE).interfaces \ |
|
40 |
$(DOC_MODULE).prerequisites \ |
|
41 |
$(DOC_MODULE).signals |
|
42 |
||
43 |
REPORT_FILES = \ |
|
44 |
$(DOC_MODULE)-undocumented.txt \ |
|
45 |
$(DOC_MODULE)-undeclared.txt \ |
|
46 |
$(DOC_MODULE)-unused.txt |
|
47 |
||
48 |
CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) |
|
49 |
||
50 |
if ENABLE_GTK_DOC
|
|
51 |
all-local: html-build.stamp |
|
52 |
else
|
|
53 |
all-local: |
|
54 |
endif
|
|
55 |
||
56 |
docs: html-build.stamp |
|
57 |
||
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
58 |
$(REPORT_FILES): sgml-build.stamp |
59 |
||
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
60 |
#### scan ####
|
61 |
||
62 |
scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) |
|
63 |
@echo 'gtk-doc: Scanning header files'
|
|
64 |
@-chmod -R u+w $(srcdir) |
|
65 |
cd $(srcdir) && \ |
|
66 |
gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) |
|
67 |
if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \
|
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
68 |
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
69 |
else \
|
70 |
cd $(srcdir) ; \
|
|
71 |
for i in $(SCANOBJ_FILES) ; do \
|
|
72 |
test -f $$i || touch $$i ; \
|
|
73 |
done \
|
|
74 |
fi
|
|
75 |
touch scan-build.stamp |
|
76 |
||
77 |
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp |
|
78 |
@true |
|
79 |
||
80 |
#### templates ####
|
|
81 |
||
82 |
tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt |
|
83 |
@echo 'gtk-doc: Rebuilding template files'
|
|
84 |
@-chmod -R u+w $(srcdir) |
|
85 |
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) |
|
86 |
touch tmpl-build.stamp |
|
87 |
||
88 |
tmpl.stamp: tmpl-build.stamp |
|
89 |
@true |
|
90 |
||
91 |
tmpl/*.sgml: |
|
92 |
@true |
|
93 |
||
94 |
||
95 |
#### xml ####
|
|
96 |
||
97 |
sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) |
|
98 |
@echo 'gtk-doc: Building XML'
|
|
99 |
@-chmod -R u+w $(srcdir) |
|
100 |
cd $(srcdir) && \ |
|
101 |
gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) |
|
102 |
touch sgml-build.stamp |
|
103 |
||
104 |
sgml.stamp: sgml-build.stamp |
|
105 |
@true |
|
106 |
||
107 |
#### html ####
|
|
108 |
||
109 |
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) |
|
110 |
@echo 'gtk-doc: Building HTML'
|
|
111 |
@-chmod -R u+w $(srcdir) |
|
112 |
rm -rf $(srcdir)/html |
|
113 |
mkdir $(srcdir)/html |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
114 |
mkhtml_options=""; \ |
115 |
gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ |
|
116 |
if test "$(?)" = "0"; then \
|
|
117 |
mkhtml_options=--path="$(srcdir)"; \
|
|
118 |
fi
|
|
119 |
cd $(srcdir)/html && gtkdoc-mkhtml $(mkhtml_options) $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) |
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
120 |
test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) |
121 |
@echo 'gtk-doc: Fixing cross-references'
|
|
122 |
cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) |
|
123 |
touch html-build.stamp |
|
124 |
||
125 |
##############
|
|
126 |
||
127 |
clean-local: |
|
128 |
rm -f *~ *.bak |
|
129 |
rm -rf .libs |
|
130 |
||
131 |
distclean-local: |
|
132 |
cd $(srcdir) && \ |
|
133 |
rm -rf xml $(REPORT_FILES) \ |
|
134 |
$(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt |
|
135 |
||
136 |
maintainer-clean-local: clean |
|
137 |
cd $(srcdir) && rm -rf xml html |
|
138 |
||
139 |
install-data-local: |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
140 |
installfiles=`echo $(srcdir)/html/*`; \ |
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
141 |
if test "$$installfiles" = '$(srcdir)/html/*'; \
|
142 |
then echo '-- Nothing to install' ; \
|
|
143 |
else \
|
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
144 |
if test -n "$(DOC_MODULE_VERSION)"; then \
|
145 |
installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
|
|
146 |
else \
|
|
147 |
installdir="$(DESTDIR)$(TARGET_DIR)"; \
|
|
148 |
fi; \
|
|
149 |
$(mkinstalldirs) $${installdir} ; \
|
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
150 |
for i in $$installfiles; do \
|
151 |
echo '-- Installing '$$i ; \
|
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
152 |
$(INSTALL_DATA) $$i $${installdir}; \
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
153 |
done; \
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
154 |
if test -n "$(DOC_MODULE_VERSION)"; then \
|
155 |
mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
|
|
156 |
$${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
|
|
157 |
mv -f $${installdir}/$(DOC_MODULE).devhelp \
|
|
158 |
$${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \
|
|
159 |
fi; \
|
|
160 |
! which gtkdoc-rebase >/dev/null 2>&1 || \
|
|
161 |
gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir} ; \
|
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
162 |
fi
|
163 |
||
164 |
uninstall-local: |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
165 |
if test -n "$(DOC_MODULE_VERSION)"; then \
|
166 |
installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
|
|
167 |
else \
|
|
168 |
installdir="$(DESTDIR)$(TARGET_DIR)"; \
|
|
169 |
fi; \
|
|
170 |
rm -rf $${installdir}
|
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
171 |
|
172 |
#
|
|
173 |
# Require gtk-doc when making dist
|
|
174 |
#
|
|
175 |
if ENABLE_GTK_DOC
|
|
176 |
dist-check-gtkdoc: |
|
177 |
else
|
|
178 |
dist-check-gtkdoc: |
|
179 |
@echo "*** gtk-doc must be installed and enabled in order to make dist"
|
|
180 |
@false |
|
181 |
endif
|
|
182 |
||
183 |
dist-hook: dist-check-gtkdoc dist-hook-local |
|
184 |
mkdir $(distdir)/tmpl |
|
185 |
mkdir $(distdir)/xml |
|
186 |
mkdir $(distdir)/html |
|
187 |
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl |
|
188 |
-cp $(srcdir)/xml/*.xml $(distdir)/xml |
|
189 |
cp $(srcdir)/html/* $(distdir)/html |
|
190 |
-cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ |
|
191 |
-cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ |
|
192 |
cd $(distdir) && rm -f $(DISTCLEANFILES) |
|
1.1.20
by Pedro Fragoso
Import upstream version 2.25.92 |
193 |
! which gtkdoc-rebase >/dev/null 2>&1 || \ |
194 |
gtkdoc-rebase --online --relative --html-dir=$(distdir)/html |
|
1.1.16
by Pedro Fragoso
Import upstream version 0.9.1 |
195 |
|
196 |
.PHONY : dist-hook-local docs |