Updated to new syntax used by pa_bitmatch 0.5.
[virt-df.git] / virt-df / Makefile.in
1 # virt-df
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_gettext     = @pkg_gettext@
29
30 #OCAMLCPACKAGES := -package unix,extlib,xml-light,bitmatch
31 OCAMLCPACKAGES  := -package unix,extlib,xml-light,libvirt -I +bitmatch
32
33 ifneq ($(pkg_gettext),no)
34 OCAMLCPACKAGES  += -package gettext-stub
35 endif
36
37 #----------------------------------------------------------------------
38 # Build up the list of object files.
39
40 # Library objects.
41 OBJS            := virt_df_gettext.cmo virt_df.cmo
42
43 # Plugin objects.
44 OBJS            += virt_df_ext2.cmo \
45                    virt_df_linux_swap.cmo \
46                    virt_df_lvm2_metadata.cmo \
47                    virt_df_lvm2_parser.cmo \
48                    virt_df_lvm2_lexer.cmo \
49                    virt_df_lvm2.cmo \
50                    virt_df_mbr.cmo
51
52 ifneq ($(pkg_csv),no)
53 OCAMLCPACKAGES  += -package csv
54 OBJS            += virt_df_csv.cmo
55 endif
56
57 # Main program.
58 OBJS            += virt_df_main.cmo
59
60 XOBJS           := $(OBJS:.cmo=.cmx)
61
62 #----------------------------------------------------------------------
63
64 SYNTAX          := -pp "camlp4o -I`ocamlc -where`/bitmatch pa_bitmatch.cmo"
65
66 OCAMLCFLAGS     := -g -w s $(SYNTAX)
67 #OCAMLCLIBS     := -linkpkg
68 OCAMLCLIBS      := -linkpkg bitmatch.cma
69
70 OCAMLOPTPACKAGES := $(OCAMLCPACKAGES)
71 OCAMLOPTFLAGS   := -w s $(SYNTAX)
72 #OCAMLOPTLIBS   := $(OCAMLCLIBS)
73 OCAMLOPTLIBS    := -linkpkg bitmatch.cmxa
74
75 OCAMLDEPFLAGS   := $(SYNTAX)
76
77 BYTE_TARGETS    := virt-df
78 OPT_TARGETS     := virt-df.opt
79
80 ifeq ($(HAVE_PERLDOC),perldoc)
81 BYTE_TARGETS    += virt-df.1 virt-df.txt
82 endif
83
84 all: $(BYTE_TARGETS)
85
86 opt: $(OPT_TARGETS)
87
88 virt-df: $(OBJS)
89         ocamlfind ocamlc $(OCAMLCPACKAGES) $(OCAMLCFLAGS) $(OCAMLCLIBS) \
90           -o $@ $^
91
92 virt-df.opt: $(XOBJS)
93         ocamlfind ocamlopt \
94           $(OCAMLOPTPACKAGES) $(OCAMLOPTFLAGS) $(OCAMLOPTLIBS) \
95           -o $@ $^
96
97 # 'make depend' doesn't catch these dependencies because the .mli file
98 # is auto-generated.
99 virt_df_lvm2_parser.cmi: virt_df_lvm2_parser.mli
100 virt_df_lvm2_parser.cmo: virt_df_lvm2_parser.mli
101 virt_df_lvm2_parser.cmx: virt_df_lvm2_parser.mli
102
103 # Manual page.
104 ifeq ($(HAVE_PERLDOC),perldoc)
105 virt-df.1: virt-df.pod
106         pod2man -c "Virtualization Support" --release "$(PACKAGE)-$(VERSION)" \
107                 $< > $@
108
109 virt-df.txt: virt-df.pod
110         pod2text $< > $@
111 endif
112
113 install:
114         if [ -x virt-df.opt ]; then \
115           mkdir -p $(DESTDIR)$(bindir); \
116           $(INSTALL) -m 0755 virt-df.opt $(DESTDIR)$(bindir)/virt-df; \
117         fi
118
119 include ../Make.rules