e471f931f80591f5df2b89db4abb30b4e9ba7558
[virt-top.git] / virt-top / Makefile.in
1 # virt-top
2 # Copyright (C) 2007 Red Hat Inc., Richard W.M. Jones
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program 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
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18 PACKAGE         := @PACKAGE_NAME@
19 VERSION         := @PACKAGE_VERSION@
20
21 INSTALL         := @INSTALL@
22 HAVE_PERLDOC    := @HAVE_PERLDOC@
23
24 prefix          = @prefix@
25 exec_prefix     = @exec_prefix@
26 bindir          = @bindir@
27
28 pkg_curses      = @pkg_curses@
29 pkg_xml_light   = @pkg_xml_light@
30 pkg_csv         = @pkg_csv@
31 pkg_calendar    = @pkg_calendar@
32 pkg_calendar2   = @pkg_calendar2@
33 pkg_gettext     = @pkg_gettext@
34
35 OCAMLCPACKAGES  := -package unix,extlib,curses,str,libvirt
36
37 ifeq ($(pkg_gettext),yes)
38 OCAMLCPACKAGES  += -package gettext-stub
39 endif
40
41 OBJS            := virt_top_gettext.cmo virt_top_utils.cmo virt_top.cmo
42 ifeq ($(pkg_xml_light),yes)
43 OBJS            += virt_top_xml.cmo
44 OCAMLCPACKAGES  += -package xml-light
45 endif
46 ifeq ($(pkg_csv),yes)
47 OBJS            += virt_top_csv.cmo
48 OCAMLCPACKAGES  += -package csv
49 endif
50 ifeq ($(pkg_calendar),yes)
51 OBJS            += virt_top_calendar1.cmo
52 OCAMLCPACKAGES  += -package calendar
53 endif
54 ifneq ($(pkg_calendar2),no)
55 OBJS            += virt_top_calendar2.cmo
56 OCAMLCPACKAGES  += -package calendar
57 endif
58 OBJS            += virt_top_main.cmo
59
60 XOBJS           := $(OBJS:.cmo=.cmx)
61
62 OCAMLCFLAGS     := -g -w s
63 OCAMLCLIBS      := -linkpkg
64
65 OCAMLOPTPACKAGES := $(OCAMLCPACKAGES)
66 OCAMLOPTFLAGS   := -w s
67 OCAMLOPTLIBS    := $(OCAMLCLIBS)
68
69 BYTE_TARGETS    := virt-top
70 OPT_TARGETS     := virt-top.opt
71
72 ifeq ($(HAVE_PERLDOC),perldoc)
73 BYTE_TARGETS    += virt-top.1 virt-top.txt
74 endif
75
76 all: $(BYTE_TARGETS)
77
78 opt: $(OPT_TARGETS)
79
80 virt-top: $(OBJS)
81         ocamlfind ocamlc $(OCAMLCPACKAGES) $(OCAMLCFLAGS) $(OCAMLCLIBS) -o $@ $^
82
83 virt-top.opt: $(XOBJS)
84         ocamlfind ocamlopt \
85           $(OCAMLOPTPACKAGES) $(OCAMLOPTFLAGS) $(OCAMLOPTLIBS) \
86           -cclib -lncurses -o $@ $^
87
88 # Manual page.
89 ifeq ($(HAVE_PERLDOC),perldoc)
90 virt-top.1: virt-top.pod
91         pod2man -c "Virtualization Support" --release "$(PACKAGE)-$(VERSION)" \
92                 $< > $@
93
94 virt-top.txt: virt-top.pod
95         pod2text $< > $@
96 endif
97
98 install:
99         if [ -x virt-top.opt ]; then \
100           mkdir -p $(DESTDIR)$(bindir); \
101           $(INSTALL) -m 0755 virt-top.opt $(DESTDIR)$(bindir)/virt-top; \
102         fi
103
104 include ../Make.rules