Makefile.am 12.2 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
HTML_DIR = $(docdir)/html
20 21
DEVHELP_DIR=$(datadir)/gtk-doc/html/libvirt

A
Andrea Bolognani 已提交
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
modules = \
	libvirt-common \
	libvirt-domain \
	libvirt-domain-snapshot \
	libvirt-event \
	libvirt-host \
	libvirt-interface \
	libvirt-network \
	libvirt-nodedev \
	libvirt-nwfilter \
	libvirt-secret \
	libvirt-storage \
	libvirt-stream \
	virterror \
	$(NULL)

38 39
apihtml = \
  html/index.html \
40 41 42
  $(apihtml_generated)

apihtml_generated = \
A
Andrea Bolognani 已提交
43 44
	$(addprefix html/libvirt-,$(addsuffix .html,$(modules))) \
	$(NULL)
J
Jim Meyering 已提交
45

46 47 48 49
apipng = \
  html/left.png \
  html/up.png \
  html/home.png \
50
  html/right.png
J
Jim Meyering 已提交
51

52 53 54 55
devhelphtml = \
  devhelp/libvirt.devhelp \
  devhelp/index.html \
  devhelp/general.html \
56 57 58 59 60
  $(devhelphtml_generated)

devhelphtml_generated = \
	$(addprefix devhelp/libvirt-,$(addsuffix .html,$(modules))) \
	$(NULL)
61

62
css = \
63 64
  generic.css \
  libvirt.css \
65
  mobile.css \
66 67
  main.css

68
javascript = \
69
  js/main.js \
70 71 72 73 74
  js/jquery-3.1.1.min.js \
  js/jquery.rss.min.js \
  js/moment.min.js


75 76 77 78 79 80 81 82 83 84 85 86 87 88
fonts = \
  fonts/LICENSE.md \
  fonts/stylesheet.css \
  fonts/overpass-bold-italic.woff \
  fonts/overpass-bold.woff \
  fonts/overpass-italic.woff \
  fonts/overpass-light-italic.woff \
  fonts/overpass-light.woff \
  fonts/overpass-mono-bold.woff \
  fonts/overpass-mono-light.woff \
  fonts/overpass-mono-regular.woff \
  fonts/overpass-mono-semibold.woff \
  fonts/overpass-regular.woff

89 90 91 92
devhelppng = \
  devhelp/home.png \
  devhelp/left.png \
  devhelp/right.png \
93 94 95 96 97 98
  devhelp/up.png

devhelpcss = devhelp/style.css

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

99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
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

118 119
png = \
  32favicon.png \
D
Daniel Veillard 已提交
120 121 122
  libvirt-daemon-arch.png \
  libvirt-driver-arch.png \
  libvirt-object-model.png \
123 124 125 126 127
  migration-managed-direct.png \
  migration-managed-p2p.png \
  migration-native.png \
  migration-tunnel.png \
  migration-unmanaged-direct.png
128

J
Jim Meyering 已提交
129 130
gif = \
  architecture.gif \
131
  node.gif
J
Jim Meyering 已提交
132

133 134 135 136 137

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

D
Daniel P. Berrange 已提交
138 139 140
# Since we ship pre-built html in the tarball, we must also
# ship the sources, even when those sources are themselves
# generated.
141
# Generate hvsupport.html and news.html first, since they take one extra step.
142 143
dot_html_in = \
  hvsupport.html.in \
144
  news.html.in \
145
  $(notdir $(wildcard $(srcdir)/*.html.in))
146
dot_html = $(dot_html_in:%.html.in=%.html)
J
Jim Meyering 已提交
147 148 149

xml = \
  libvirt-api.xml \
150
  libvirt-refs.xml
J
Jim Meyering 已提交
151

152 153 154 155
qemu_xml = \
  libvirt-qemu-api.xml \
  libvirt-qemu-refs.xml

156 157 158 159
lxc_xml = \
  libvirt-lxc-api.xml \
  libvirt-lxc-refs.xml

160 161 162 163
admin_xml = \
  libvirt-admin-api.xml \
  libvirt-admin-refs.xml

164
apidir = $(pkgdatadir)/api
165 166 167
api_DATA = \
       libvirt-api.xml \
       libvirt-qemu-api.xml \
168 169
       libvirt-lxc-api.xml \
       libvirt-admin-api.xml
170

171
fig = \
D
Daniel Veillard 已提交
172 173
  libvirt-daemon-arch.fig \
  libvirt-driver-arch.fig \
174 175 176 177 178 179
  libvirt-object-model.fig \
  migration-managed-direct.fig \
  migration-managed-p2p.fig \
  migration-native.fig \
  migration-tunnel.fig \
  migration-unmanaged-direct.fig
180

181
schemadir = $(pkgdatadir)/schemas
M
Michal Privoznik 已提交
182
schema_DATA = $(wildcard $(srcdir)/schemas/*.rng)
183

184
EXTRA_DIST= \
185
  apibuild.py genaclperms.pl \
186
  site.xsl subsite.xsl newapi.xsl page.xsl \
187
  wrapstring.xsl \
188
  $(dot_html) $(dot_html_in) $(gif) $(apihtml) $(apipng) \
189
  $(devhelphtml) $(devhelppng) $(devhelpcss) $(devhelpxsl) \
190
  $(xml) $(qemu_xml) $(lxc_xml) $(admin_xml) $(fig) $(png) $(css) \
191
  $(javascript) $(logofiles) \
192
  $(internals_html_in) $(internals_html) $(fonts) \
193
  aclperms.htmlinc \
D
Daniel P. Berrange 已提交
194
  hvsupport.pl \
195
  $(schema_DATA)
J
Jim Meyering 已提交
196

197
acl_generated = aclperms.htmlinc
198 199 200

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

203 204 205
MAINTAINERCLEANFILES = \
  $(addprefix $(srcdir)/,$(dot_html)) \
  $(addprefix $(srcdir)/,$(apihtml)) \
206
  $(addprefix $(srcdir)/,$(devhelphtml)) \
207
  $(addprefix $(srcdir)/,$(internals_html)) \
208
  $(srcdir)/hvsupport.html.in $(srcdir)/aclperms.htmlinc
209

210 211
timestamp="$(shell if test -n "$$SOURCE_DATE_EPOCH"; \
		   then \
212
		     date -u --date="@$$SOURCE_DATE_EPOCH"; \
213
		   else \
214
		     date -u; \
215 216
		   fi)"

217
all-am: web
218

J
Jiri Denemark 已提交
219
api: $(srcdir)/libvirt-api.xml $(srcdir)/libvirt-refs.xml
220
qemu_api: $(srcdir)/libvirt-qemu-api.xml $(srcdir)/libvirt-qemu-refs.xml
221
lxc_api: $(srcdir)/libvirt-lxc-api.xml $(srcdir)/libvirt-lxc-refs.xml
222
admin_api: $(srcdir)/libvirt-admin-api.xml $(srcdir)/libvirt-admin-refs.xml
223

224
web: $(dot_html) $(internals_html) html/index.html devhelp/index.html
225

226
hvsupport.html: $(srcdir)/hvsupport.html.in
227

228
$(srcdir)/hvsupport.html.in: $(srcdir)/hvsupport.pl $(api_DATA) \
M
Michal Privoznik 已提交
229 230 231 232
		$(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 > $@ \
233
		|| { rm $@ && exit 1; }
234

235 236 237 238 239 240
# 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
241
	$(AM_V_GEN)$(XSLTPROC) --nonet \
242 243 244 245 246 247
	    $(srcdir)/news-html.xsl \
	    $(srcdir)/news.xml \
	  >$@-tmp \
	    || { rm -f $@-tmp; exit 1; }; \
	  sed 's/ xmlns=""//g' $@-tmp >$@ \
	    || { rm -f $@-tmp; exit 1; }; \
248
	  rm -f $@-tmp
249 250
EXTRA_DIST += \
	$(srcdir)/news.xml \
P
Peter Krempa 已提交
251
	$(srcdir)/news.rng \
252 253 254 255
	$(srcdir)/news-html.xsl
MAINTAINERCLEANFILES += \
	$(srcdir)/news.html.in

D
Daniel Veillard 已提交
256 257 258
%.png: %.fig
	convert -rotate 90 $< $@

259
%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
260
		$(acl_generated)
261
	$(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
262 263 264 265 266 267 268 269
	  dir=`dirname $@` ; \
	  if test "$$dir" = "."; \
	  then \
	    style=site.xsl; \
	  else \
	    $(MKDIR_P) $$dir; \
	    style=subsite.xsl; \
	  fi; \
270 271
	  $(XSLTPROC) --stringparam pagename $$name \
	    --stringparam timestamp $(timestamp) --nonet \
272
	    $(top_srcdir)/docs/$$style $< > $@ \
273
	    || { rm $@ && exit 1; }
274 275

%.html: %.html.tmp
276 277
	$(AM_V_GEN)$(XMLLINT) --nonet --format $< > $(srcdir)/$@ \
	  || { rm $(srcdir)/$@ && exit 1; }
278

279 280
$(apihtml_generated): html/index.html

281
html/index.html: libvirt-api.xml newapi.xsl page.xsl $(APIBUILD_STAMP)
282
	$(AM_V_GEN)$(XSLTPROC) --nonet -o $(srcdir)/ \
283
	  --stringparam builddir '$(abs_top_builddir)' \
284
	  --stringparam timestamp $(timestamp) \
285 286
	  $(srcdir)/newapi.xsl $(srcdir)/libvirt-api.xml && \
	  $(XMLLINT) --nonet --noout $(srcdir)/html/*.html
287

288
$(addprefix $(srcdir)/,$(devhelphtml)): $(srcdir)/libvirt-api.xml $(devhelpxsl)
289 290 291
	$(AM_V_GEN)$(XSLTPROC) --stringparam timestamp $(timestamp) \
	  --nonet -o $(srcdir)/devhelp/ \
	  $(top_srcdir)/docs/devhelp/devhelp.xsl $(srcdir)/libvirt-api.xml
292

293

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

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

$(python_generated_files): $(APIBUILD_STAMP)

$(APIBUILD_STAMP): $(srcdir)/apibuild.py \
316 317
		$(top_srcdir)/include/libvirt/libvirt.h \
		$(top_srcdir)/include/libvirt/libvirt-common.h.in \
M
Michal Privoznik 已提交
318 319 320 321 322 323 324 325 326 327 328 329 330
		$(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 \
331
		$(top_srcdir)/include/libvirt/libvirt-admin.h \
M
Michal Privoznik 已提交
332 333
		$(top_srcdir)/include/libvirt/virterror.h \
		$(top_srcdir)/src/libvirt.c \
334 335 336 337 338 339 340 341 342 343
		$(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 已提交
344 345
		$(top_srcdir)/src/libvirt-lxc.c \
		$(top_srcdir)/src/libvirt-qemu.c \
346
		$(top_srcdir)/src/libvirt-admin.c \
M
Michal Privoznik 已提交
347 348 349
		$(top_srcdir)/src/util/virerror.c \
		$(top_srcdir)/src/util/virevent.c \
		$(top_srcdir)/src/util/virtypedparam.c
350
	$(AM_V_GEN)srcdir=$(srcdir) builddir=$(builddir) $(PYTHON) $(APIBUILD)
351 352
	touch $@

353

354
check-local: all
355
dist-local: all
356

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

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

367
rebuild: api qemu_api lxc_api admin_api all
368

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

uninstall-local:
397
	for f in $(css) $(dot_html) $(gif) $(png) $(fonts); do \
398 399
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
400 401 402
	for f in $(logofiles); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
403 404 405
	for f in $(javascript); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
M
Michal Privoznik 已提交
406 407
	for h in $(apihtml); do rm -f $(DESTDIR)$(HTML_DIR)/$$h; done
	for p in $(apipng); do rm -f $(DESTDIR)$(HTML_DIR)/$$p; done
408 409 410
	for f in $(internals_html); do \
	  rm -f $(DESTDIR)$(HTML_DIR)/$$f; \
	done
411
	for f in $(devhelphtml) $(devhelppng) $(devhelpcss); do \
M
Michal Privoznik 已提交
412
	  rm -f $(DESTDIR)$(DEVHELP_DIR)/$$(basename $$f); \
413
	done