Add a binding for virConnectGetAllDomainStats (RHBZ#1390171).
[ocaml-libvirt.git] / Makefile.in
1 # ocaml-libvirt
2 # Copyright (C) 2007 Red Hat Inc., Richard W.M. Jones
3 #
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2 of the License, or (at your option) any later version.
8 #
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # Lesser General Public License for more details.
13 #
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
17
18 PACKAGE         = @PACKAGE_NAME@
19 VERSION         = @PACKAGE_VERSION@
20
21 INSTALL         = @INSTALL@
22
23 MAKENSIS        = @MAKENSIS@
24
25 OCAMLDOC        = @OCAMLDOC@
26 OCAMLDOCFLAGS   := -html -sort
27
28 SUBDIRS         = libvirt examples
29
30 all opt depend install-opt install-byte:
31         for d in $(SUBDIRS); do \
32           $(MAKE) -C $$d $@; \
33           if [ $$? -ne 0 ]; then exit 1; fi; \
34         done
35
36 clean:
37         for d in . $(SUBDIRS); do \
38           (cd $$d; rm -f *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.so *.opt *~ *.dll *.exe core); \
39         done
40         rm -f examples/list_domains
41         rm -f examples/node_info
42         rm -f examples/get_cpu_stats
43         rm -f examples/domain_events
44         rm -f examples/get_all_domain_stats
45
46 distclean: clean
47         rm -f config.h config.log config.status configure
48         rm -rf autom4te.cache
49         rm -f META
50         rm -f libvirt/libvirt_version.ml
51         rm -f Makefile
52         rm -f Make.rules
53         rm -f libvirt/Makefile
54         rm -f examples/Makefile
55
56 # Developer documentation (in html/ subdirectory).
57
58 ifneq ($(OCAMLDOC),)
59 doc:
60         rm -rf html
61         mkdir html
62         -cd libvirt; \
63         $(OCAMLDOC) $(OCAMLDOCFLAGS) -d ../html \
64           libvirt.{ml,mli} libvirt_version.{ml,mli}
65 endif
66
67 # Windows installer (requires NSIS).
68
69 WININSTALLER := $(PACKAGE)-$(VERSION).exe
70
71 ifneq ($(MAKENSIS),)
72 wininstaller: $(WININSTALLER)
73
74 $(WININSTALLER): wininstaller.nsis all opt
75         "$(MAKENSIS)" \
76           //DPACKAGE=$(PACKAGE) //DVERSION=$(VERSION) \
77           //DOUTFILE=$@ $<
78         ls -l $@
79 endif
80
81 # Update configure and rerun.
82
83 configure: force
84         autoreconf
85         CFLAGS=-g \
86           ./configure \
87           --enable-debug=yes --with-libvirt=/home/rjones/local
88
89 # Distribution.
90
91 dist: ChangeLog
92         $(MAKE) check-manifest
93         rm -rf $(PACKAGE)-$(VERSION)
94         mkdir $(PACKAGE)-$(VERSION)
95         tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
96         $(INSTALL) -m 0755 configure $(PACKAGE)-$(VERSION)/
97         tar zcf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
98         rm -rf $(PACKAGE)-$(VERSION)
99         ls -l $(PACKAGE)-$(VERSION).tar.gz
100
101 check-manifest:
102         git ls-files | sort > .check-manifest; \
103         sort MANIFEST > .orig-manifest; \
104         diff -u .orig-manifest .check-manifest; rv=$$?; \
105         rm -f .orig-manifest .check-manifest; \
106         exit $$rv
107
108 ChangeLog:
109         hg log --style changelog > $@.new
110         mv $@.new $@
111
112 # Do a release (update the website).
113
114 release: configure
115         $(MAKE) release_stage_2
116
117 release_stage_2: clean all opt doc dist
118         $(MAKE) release_stage_3
119
120 WEBSITE = ../redhat/websites
121
122 release_stage_3:
123         rm -f $(WEBSITE)/ocaml-libvirt/html/*.{html,css}
124         cp html/*.{html,css} $(WEBSITE)/ocaml-libvirt/html/
125         cp README $(WEBSITE)/ocaml-libvirt/README.txt
126         cp ChangeLog $(WEBSITE)/ocaml-libvirt/ChangeLog.txt
127
128 # Upload to main website.
129
130 upload:
131         cd $(WEBSITE)/ocaml-libvirt && \
132         scp ChangeLog.txt index.html README.txt Screenshot*.png \
133           libvirt.org:/data/www/libvirt.org/ocaml && \
134         scp css/*.css \
135           libvirt.org:/data/www/libvirt.org/ocaml/css/ && \
136         scp html/*.html html/*.css \
137           libvirt.org:/data/www/libvirt.org/ocaml/html/
138         scp $(PACKAGE)-$(VERSION).tar.gz libvirt.org:/data/ftp/libvirt/ocaml/
139
140 # Upload Windows binary installer to main website.
141
142 winupload:
143         scp $(WININSTALLER) libvirt.org:/data/ftp/libvirt/ocaml/
144
145 force:
146
147 .PHONY: all opt depend install clean distclean configure dist check-manifest \
148         release release_stage_2 release_stage_3 force