Add support for Arch Linux (pacman package manager).
[febootstrap.git] / Makefile.am
1 # febootstrap Makefile.am
2 # (C) Copyright 2009-2010 Red Hat Inc.
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 # Written by Richard W.M. Jones <rjones@redhat.com>
19
20 ACLOCAL_AMFLAGS = -I m4
21
22 SUBDIRS = lib helper
23
24 # Note these must be in build dependency order.
25 SOURCES = \
26         config.ml \
27         febootstrap_utils.mli \
28         febootstrap_utils.ml \
29         febootstrap_cmdline.mli \
30         febootstrap_cmdline.ml \
31         febootstrap_package_handlers.mli \
32         febootstrap_package_handlers.ml \
33         febootstrap_yum_rpm.ml \
34         febootstrap_debian.ml \
35         febootstrap_pacman.ml \
36         febootstrap.ml
37
38 CLEANFILES = *~ *.cmi *.cmo *.cmx *.o febootstrap
39
40 EXTRA_DIST = \
41         .gitignore \
42         .gitmodules \
43         autogen.sh \
44         febootstrap.8 \
45         febootstrap.pod \
46         m4/gnulib-cache.m4 \
47         $(SOURCES)
48
49 man_MANS = \
50         febootstrap.8
51
52 bin_SCRIPTS = febootstrap
53
54 SOURCES_ML = $(filter %.ml,$(SOURCES))
55 BOBJECTS = $(SOURCES_ML:.ml=.cmo)
56 XOBJECTS = $(SOURCES_ML:.ml=.cmx)
57
58 if !HAVE_OCAMLOPT
59 OBJECTS = $(BOBJECTS)
60 else
61 OBJECTS = $(XOBJECTS)
62 endif
63
64 OCAMLPACKAGES = -package unix,str
65 OCAMLFLAGS = -warn-error CDEFLMPSUVXYZ
66
67 febootstrap: $(OBJECTS)
68         $(OCAMLFIND) $(OCAMLBEST) $(OCAMLFLAGS) $(OCAMLPACKAGES) -linkpkg \
69           $^ -o $@
70
71 .mli.cmi:
72         $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
73 .ml.cmo:
74         $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
75 .ml.cmx:
76         $(OCAMLFIND) ocamlopt $(OCAMLFLAGS) $(OCAMLPACKAGES) -c $< -o $@
77
78 depend: .depend
79
80 .depend: $(SOURCES)
81         rm -f $@ $@-t
82         $(OCAMLFIND) ocamldep $^ > $@-t
83         mv $@-t $@
84
85 include .depend
86
87 SUFFIXES = .cmo .cmi .cmx .ml .mli .mll .mly
88
89 if HAVE_PERLDOC
90
91 febootstrap.8: febootstrap.pod
92         pod2man \
93           --section 8 \
94           -c "Virtualization Support" \
95           --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \
96           $< > $@
97 endif