Makefile.am 12.8 KB
Newer Older
1
## Process this file with automake to produce Makefile.in
2

3
## Copyright (C) 2005-2016 Red Hat, Inc.
E
Eric Blake 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17
##
## This library is free software; you can redistribute it and/or
## modify it under the terms of the GNU Lesser General Public
## License as published by the Free Software Foundation; either
## version 2.1 of the License, or (at your option) any later version.
##
## This library is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
## Lesser General Public License for more details.
##
## You should have received a copy of the GNU Lesser General Public
## License along with this library.  If not, see
## <http://www.gnu.org/licenses/>.
18

19 20
DEVHELP_DIR=$(datadir)/gtk-doc/html/libvirt

21 22
apihtml =					\
  html/index.html				\
23 24 25
  $(apihtml_generated)

apihtml_generated = \
26
  html/libvirt-libvirt-common.html		\
27 28 29 30 31 32 33 34 35 36 37
  html/libvirt-libvirt-domain.html		\
  html/libvirt-libvirt-domain-snapshot.html	\
  html/libvirt-libvirt-event.html		\
  html/libvirt-libvirt-host.html		\
  html/libvirt-libvirt-interface.html		\
  html/libvirt-libvirt-network.html		\
  html/libvirt-libvirt-nodedev.html		\
  html/libvirt-libvirt-nwfilter.html		\
  html/libvirt-libvirt-secret.html		\
  html/libvirt-libvirt-storage.html		\
  html/libvirt-libvirt-stream.html		\
38
  html/libvirt-virterror.html
J
Jim Meyering 已提交
39

40
apipng =	\
41 42 43 44
  html/left.png	\
  html/up.png	\
  html/home.png	\
  html/right.png
J
Jim Meyering 已提交
45

46
devhelphtml =			\
47 48 49 50 51
  devhelp/libvirt.devhelp	\
  devhelp/index.html		\
  devhelp/general.html		\
  devhelp/libvirt-virterror.html

52 53 54 55 56
css =         \
  generic.css \
  libvirt.css \
  main.css

57 58 59 60 61 62 63 64 65 66
devhelppng =		\
  devhelp/home.png	\
  devhelp/left.png	\
  devhelp/right.png	\
  devhelp/up.png

devhelpcss = devhelp/style.css

devhelpxsl = devhelp/devhelp.xsl devhelp/html.xsl

67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
logofiles = \
  logos/logo-base.svg \
  logos/logo-square.svg \
  logos/logo-square-powered.svg \
  logos/logo-banner-dark.svg \
  logos/logo-banner-light.svg \
  logos/logo-square-96.png \
  logos/logo-square-128.png \
  logos/logo-square-192.png \
  logos/logo-square-256.png \
  logos/logo-square-powered-96.png \
  logos/logo-square-powered-128.png \
  logos/logo-square-powered-192.png \
  logos/logo-square-powered-256.png \
  logos/logo-banner-dark-256.png \
  logos/logo-banner-dark-800.png \
  logos/logo-banner-light-256.png \
  logos/logo-banner-light-800.png

86 87
png = \
  32favicon.png \
D
Daniel Veillard 已提交
88 89 90
  libvirt-daemon-arch.png \
  libvirt-driver-arch.png \
  libvirt-object-model.png \
91 92 93 94 95
  migration-managed-direct.png \
  migration-managed-p2p.png \
  migration-native.png \
  migration-tunnel.png \
  migration-unmanaged-direct.png
96

J
Jim Meyering 已提交
97 98
gif = \
  architecture.gif \
99
  node.gif
J
Jim Meyering 已提交
100

101 102 103 104 105

internals_html_in = \
  $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/internals/*.html.in))
internals_html = $(internals_html_in:%.html.in=%.html)

D
Daniel P. Berrange 已提交
106 107 108
# Since we ship pre-built html in the tarball, we must also
# ship the sources, even when those sources are themselves
# generated.
109
# Generate hvsupport.html and news.html first, since they take one extra step.
110 111
dot_html_in = \
  hvsupport.html.in \
112
  news.html.in \
113
  $(notdir $(wildcard $(srcdir)/*.html.in))
114
dot_html = $(dot_html_in:%.html.in=%.html)
J
Jim Meyering 已提交
115

116 117 118 119
dot_php_in = $(notdir $(wildcard $(srcdir)/*.php.in))
dot_php_code_in = $(dot_php_in:%.php.in=%.php.code.in)
dot_php = $(dot_php_in:%.php.in=%.php)

120
patches = $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/api_extension/*.patch))
121

J
Jim Meyering 已提交
122 123
xml = \
  libvirt-api.xml \
124
  libvirt-refs.xml
J
Jim Meyering 已提交
125

126 127 128 129
qemu_xml = \
  libvirt-qemu-api.xml \
  libvirt-qemu-refs.xml

130 131 132 133
lxc_xml = \
  libvirt-lxc-api.xml \
  libvirt-lxc-refs.xml

134 135 136 137
admin_xml = \
  libvirt-admin-api.xml \
  libvirt-admin-refs.xml

138
apidir = $(pkgdatadir)/api
139 140 141
api_DATA = \
       libvirt-api.xml \
       libvirt-qemu-api.xml \
142 143
       libvirt-lxc-api.xml \
       libvirt-admin-api.xml
144

145
fig = \
D
Daniel Veillard 已提交
146 147
  libvirt-daemon-arch.fig \
  libvirt-driver-arch.fig \
148 149 150 151 152 153
  libvirt-object-model.fig \
  migration-managed-direct.fig \
  migration-managed-p2p.fig \
  migration-native.fig \
  migration-tunnel.fig \
  migration-unmanaged-direct.fig
154

155
schemadir = $(pkgdatadir)/schemas
M
Michal Privoznik 已提交
156
schema_DATA = $(wildcard $(srcdir)/schemas/*.rng)
157

J
Jim Meyering 已提交
158
EXTRA_DIST=					\
159
  apibuild.py genaclperms.pl \
160
  site.xsl subsite.xsl newapi.xsl page.xsl \
161
  hacking1.xsl hacking2.xsl wrapstring.xsl \
162
  $(dot_html) $(dot_html_in) $(gif) $(apihtml) $(apipng) \
163
  $(devhelphtml) $(devhelppng) $(devhelpcss) $(devhelpxsl) \
164
  $(xml) $(qemu_xml) $(lxc_xml) $(admin_xml) $(fig) $(png) $(css) \
165
  $(logofiles) $(patches) $(dot_php_in) $(dot_php_code_in) $(dot_php)\
166
  $(internals_html_in) $(internals_html) \
167
  aclperms.htmlinc \
D
Daniel P. Berrange 已提交
168
  hvsupport.pl \
169
  $(schema_DATA)
J
Jim Meyering 已提交
170

171
acl_generated = aclperms.htmlinc
172 173 174

$(srcdir)/aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
        $(srcdir)/genaclperms.pl Makefile.am
175
	$(AM_V_GEN)$(PERL) $(srcdir)/genaclperms.pl $< > $@
176

177 178 179
MAINTAINERCLEANFILES = \
  $(addprefix $(srcdir)/,$(dot_html)) \
  $(addprefix $(srcdir)/,$(apihtml)) \
180
  $(addprefix $(srcdir)/,$(devhelphtml)) \
181
  $(addprefix $(srcdir)/,$(internals_html)) \
182 183
  $(addprefix $(srcdir)/,$(dot_php)) \
  $(srcdir)/hvsupport.html.in $(srcdir)/aclperms.htmlinc
184

185
all-am: web
186

J
Jiri Denemark 已提交
187
api: $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml
188
qemu_api: $(srcdir)/libvirt-qemu-api.xml $(srcdir)/libvirt-qemu-refs.xml
189
lxc_api: $(srcdir)/libvirt-lxc-api.xml $(srcdir)/libvirt-lxc-refs.xml
190
admin_api: $(srcdir)/libvirt-admin-api.xml $(srcdir)/libvirt-admin-refs.xml
191

192 193
web: $(dot_html) $(internals_html) html/index.html devhelp/index.html \
  $(dot_php)
194

195
hvsupport.html: $(srcdir)/hvsupport.html.in
196

197
$(srcdir)/hvsupport.html.in: $(srcdir)/hvsupport.pl $(api_DATA) \
M
Michal Privoznik 已提交
198 199 200 201
		$(top_srcdir)/src/libvirt_public.syms \
	$(top_srcdir)/src/libvirt_qemu.syms $(top_srcdir)/src/libvirt_lxc.syms \
	$(top_srcdir)/src/driver.h
	$(AM_V_GEN)$(PERL) $(srcdir)/hvsupport.pl $(top_srcdir)/src > $@ \
202
		|| { rm $@ && exit 1; }
203

204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
# xsltproc seems to add the xmlns="" attribute to random output elements:
# use sed to strip it out, as leaving it there triggers XML errors during
# further transformation steps
news.html.in: \
	  $(srcdir)/news.xml \
	  $(srcdir)/news-html.xsl
	$(AM_V_GEN) \
	if [ -x $(XSLTPROC) ]; then \
	  $(XSLTPROC) --nonet \
	    $(srcdir)/news-html.xsl \
	    $(srcdir)/news.xml \
	  >$@-tmp \
	    || { rm -f $@-tmp; exit 1; }; \
	  sed 's/ xmlns=""//g' $@-tmp >$@ \
	    || { rm -f $@-tmp; exit 1; }; \
	  rm -f $@-tmp; \
	fi
EXTRA_DIST += \
	$(srcdir)/news.xml \
P
Peter Krempa 已提交
223
	$(srcdir)/news.rng \
224 225 226 227
	$(srcdir)/news-html.xsl
MAINTAINERCLEANFILES += \
	$(srcdir)/news.html.in

D
Daniel Veillard 已提交
228 229 230
%.png: %.fig
	convert -rotate 90 $< $@

231
%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
232
		$(acl_generated)
233 234 235
	@if [ -x $(XSLTPROC) ] ; then \
	  echo "Generating $@"; \
	  name=`echo $@ | sed -e 's/.tmp//'`; \
236 237 238 239 240 241 242 243
	  dir=`dirname $@` ; \
	  if test "$$dir" = "."; \
	  then \
	    style=site.xsl; \
	  else \
	    $(MKDIR_P) $$dir; \
	    style=subsite.xsl; \
	  fi; \
244
	  $(XSLTPROC) --stringparam pagename $$name --nonet \
245
	    $(top_srcdir)/docs/$$style $< > $@ \
246
	    || { rm $@ && exit 1; }; fi
247 248

%.html: %.html.tmp
249
	@if test -x $(XMLLINT) && test -x $(XMLCATALOG) ; then \
250
	  if $(XMLCATALOG) '$(XML_CATALOG_FILE)' \
251
	    "-//W3C//DTD XHTML 1.0 Strict//EN" > /dev/null ; then \
252
	  echo "Validating $@" ; \
253
	  SGML_CATALOG_FILES='$(XML_CATALOG_FILE)' \
254 255
	  $(XMLLINT) --catalogs --nonet --format --valid $< > $(srcdir)/$@ \
	  || { rm $(srcdir)/$@ && exit 1; }; \
256
	  else echo "missing XHTML1 DTD"; cat $< > $(srcdir)/$@ ; fi ; fi
257

258
%.php.tmp: %.php.in site.xsl page.xsl
259 260
	@if [ -x $(XSLTPROC) ] ; then \
	  echo "Generating $@"; \
261
	  $(XSLTPROC) --stringparam pagename $(@:.tmp=) --nonet \
262 263 264 265
	    $(top_srcdir)/docs/site.xsl $< > $@ \
	    || { rm $@ && exit 1; }; fi

%.php: %.php.tmp %.php.code.in
266 267
	@if [ -x $(XSLTPROC) ] ; then \
	  echo "Scripting $@"; \
268
	    sed -e '/<span id="php_placeholder"><\/span>/r '"$(srcdir)/$@.code.in" \
269 270
	    -e /php_placeholder/d < $@.tmp > $(srcdir)/$@ \
	    || { rm $(srcdir)/$@ && exit 1; }; fi
271

272 273
$(apihtml_generated): html/index.html

274
html/index.html: libvirt-api.xml newapi.xsl page.xsl $(APIBUILD_STAMP)
275
	$(AM_V_GEN)if [ -x $(XSLTPROC) ] ; then \
276
	  $(XSLTPROC) --nonet -o $(srcdir)/ \
277
	  --stringparam builddir '$(abs_top_builddir)' \
278
	  $(srcdir)/newapi.xsl $(srcdir)/libvirt-api.xml ; fi && \
279
	if test -x $(XMLLINT) && test -x $(XMLCATALOG) ; then \
280
	  if $(XMLCATALOG) '$(XML_CATALOG_FILE)' "-//W3C//DTD XHTML 1.0 Strict//EN" \
E
Eric Blake 已提交
281
	    > /dev/null ; then \
282
	  SGML_CATALOG_FILES='$(XML_CATALOG_FILE)' \
283
	  $(XMLLINT) --catalogs --nonet --valid --noout $(srcdir)/html/*.html ; \
284
	  else echo "missing XHTML1 DTD"; cat $< > $(srcdir)/$@ ; fi ; fi
285

286
$(addprefix $(srcdir)/,$(devhelphtml)): $(srcdir)/libvirt-api.xml $(devhelpxsl)
287
	$(AM_V_GEN)if [ -x $(XSLTPROC) ] ; then \
288
	  $(XSLTPROC) --nonet -o $(srcdir)/devhelp/ \
J
Jiri Denemark 已提交
289
	  $(top_srcdir)/docs/devhelp/devhelp.xsl $(srcdir)/libvirt-api.xml ; fi
290

291

292
python_generated_files = \
293
		$(srcdir)/html/libvirt-libvirt-lxc.html \
294
		$(srcdir)/html/libvirt-libvirt-qemu.html \
295
		$(srcdir)/html/libvirt-libvirt-admin.html \
296 297
		$(srcdir)/html/libvirt-virterror.html \
		$(srcdir)/libvirt-api.xml \
298
		$(srcdir)/libvirt-refs.xml \
299 300
		$(srcdir)/libvirt-lxc-api.xml \
		$(srcdir)/libvirt-lxc-refs.xml \
301
		$(srcdir)/libvirt-qemu-api.xml \
302
		$(srcdir)/libvirt-qemu-refs.xml \
303 304
		$(srcdir)/libvirt-admin-api.xml \
		$(srcdir)/libvirt-admin-refs.xml \
305
		$(NULL)
306

E
Eric Blake 已提交
307 308
APIBUILD=$(srcdir)/apibuild.py
APIBUILD_STAMP=$(APIBUILD).stamp
E
Eric Blake 已提交
309
EXTRA_DIST += $(APIBUILD_STAMP)
310 311 312 313

$(python_generated_files): $(APIBUILD_STAMP)

$(APIBUILD_STAMP): $(srcdir)/apibuild.py \
314 315
		$(top_srcdir)/include/libvirt/libvirt.h \
		$(top_srcdir)/include/libvirt/libvirt-common.h.in \
M
Michal Privoznik 已提交
316 317 318 319 320 321 322 323 324 325 326 327 328
		$(top_srcdir)/include/libvirt/libvirt-domain-snapshot.h \
		$(top_srcdir)/include/libvirt/libvirt-domain.h \
		$(top_srcdir)/include/libvirt/libvirt-event.h \
		$(top_srcdir)/include/libvirt/libvirt-host.h \
		$(top_srcdir)/include/libvirt/libvirt-interface.h \
		$(top_srcdir)/include/libvirt/libvirt-network.h \
		$(top_srcdir)/include/libvirt/libvirt-nodedev.h \
		$(top_srcdir)/include/libvirt/libvirt-nwfilter.h \
		$(top_srcdir)/include/libvirt/libvirt-secret.h \
		$(top_srcdir)/include/libvirt/libvirt-storage.h \
		$(top_srcdir)/include/libvirt/libvirt-stream.h \
		$(top_srcdir)/include/libvirt/libvirt-lxc.h \
		$(top_srcdir)/include/libvirt/libvirt-qemu.h \
329
		$(top_srcdir)/include/libvirt/libvirt-admin.h \
M
Michal Privoznik 已提交
330 331
		$(top_srcdir)/include/libvirt/virterror.h \
		$(top_srcdir)/src/libvirt.c \
332 333 334 335 336 337 338 339 340 341
		$(top_srcdir)/src/libvirt-domain-snapshot.c \
		$(top_srcdir)/src/libvirt-domain.c \
		$(top_srcdir)/src/libvirt-host.c \
		$(top_srcdir)/src/libvirt-interface.c \
		$(top_srcdir)/src/libvirt-network.c \
		$(top_srcdir)/src/libvirt-nodedev.c \
		$(top_srcdir)/src/libvirt-nwfilter.c \
		$(top_srcdir)/src/libvirt-secret.c \
		$(top_srcdir)/src/libvirt-storage.c \
		$(top_srcdir)/src/libvirt-stream.c \
M
Michal Privoznik 已提交
342 343
		$(top_srcdir)/src/libvirt-lxc.c \
		$(top_srcdir)/src/libvirt-qemu.c \
344
		$(top_srcdir)/src/libvirt-admin.c \
M
Michal Privoznik 已提交
345 346 347
		$(top_srcdir)/src/util/virerror.c \
		$(top_srcdir)/src/util/virevent.c \
		$(top_srcdir)/src/util/virtypedparam.c
348
	$(AM_V_GEN)srcdir=$(srcdir) builddir=$(builddir) $(PYTHON) $(APIBUILD)
349 350
	touch $@

351

352
check-local: all
353
dist-local: all
354

355
clean-local:
356
	rm -f *~ *.bak *.hierarchy *.signals *-unused.txt *.html html/*.html
357 358

maintainer-clean-local: clean-local
D
Daniel P. Berrange 已提交
359
	rm -rf $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml
360
	rm -rf $(srcdir)/libvirt-qemu-api.xml $(srcdir)/libvirt-qemu-refs.xml
361
	rm -rf $(srcdir)/libvirt-lxc-api.xml $(srcdir)/libvirt-lxc-refs.xml
362
	rm -rf $(srcdir)/libvirt-admin-api.xml $(srcdir)/libvirt-admin-refs.xml
363
	rm -rf $(APIBUILD_STAMP)
364

365
rebuild: api qemu_api lxc_api admin_api all
366

367
install-data-local:
368
	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)
369 370
	for f in $(css) $(dot_html) $(gif) $(png); do \
	  $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR); done
371 372 373
	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/logos
	for f in $(logofiles); do \
	  $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/logos; done
374
	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/html
375
	for h in $(apihtml); do \
376
	  $(INSTALL) -m 0644 $(srcdir)/$$h $(DESTDIR)$(HTML_DIR)/html; done
377
	for p in $(apipng); do \
378
	  $(INSTALL) -m 0644 $(srcdir)/$$p $(DESTDIR)$(HTML_DIR)/html; done
379 380 381
	$(mkinstalldirs) $(DESTDIR)$(HTML_DIR)/internals
	for f in $(internals_html); do \
	  $(INSTALL) -m 0644 $(srcdir)/$$f $(DESTDIR)$(HTML_DIR)/internals; done
382 383
	$(mkinstalldirs) $(DESTDIR)$(DEVHELP_DIR)
	for file in $(devhelphtml) $(devhelppng) $(devhelpcss); do \
384
	    $(INSTALL) -m 0644 $(srcdir)/$${file} $(DESTDIR)$(DEVHELP_DIR) ; \
385
	done
J
Jim Meyering 已提交
386 387

uninstall-local:
388 389 390
	for f in $(css) $(dot_html) $(gif) $(png); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
391 392 393
	for f in $(logofiles); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
M
Michal Privoznik 已提交
394 395
	for h in $(apihtml); do rm -f $(DESTDIR)$(HTML_DIR)/$$h; done
	for p in $(apipng); do rm -f $(DESTDIR)$(HTML_DIR)/$$p; done
396 397 398
	for f in $(internals_html); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
399
	for f in $(devhelphtml) $(devhelppng) $(devhelpcss); do \
M
Michal Privoznik 已提交
400
	  rm -f $(DESTDIR)$(DEVHELP_DIR)/$$(basename $$f); \
401
	done