# virt-dmesg # Copyright (C) 2008-2011 Red Hat Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program 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 General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. bin_SCRIPTS = virt-dmesg # In alphabetical order. Includes *.mli files. SOURCES = \ config.ml \ counter.ml \ counter.mli \ c_utils.c \ kernel.ml \ kernel.mli \ kallsyms.ml \ kallsyms.mli \ ksyms.ml \ ksyms.mli \ main.ml \ search.ml \ search.mli \ utils.ml \ utils.mli # In build dependency order. OBJECTS = \ c_utils.o \ config.cmo \ counter.cmo \ utils.cmo \ kernel.cmo \ ksyms.cmo \ kallsyms.cmo \ search.cmo \ main.cmo if HAVE_OCAMLOPT XOBJECTS = $(OBJECTS:.cmo=.cmx) endif OCAMLPACKAGES = -package unix,libvirt OCAMLCFLAGS = -g -warn-error CDEFLMPSUVYZX OCAMLOPTFLAGS = -warn-error CDEFLMPSUVYZX OCAMLCLIBS = -linkpkg -cclib -lz OCAMLOPTLIBS = -linkpkg -cclib -lz if PROFILING # ocamlc doesn't support gprof OCAMLOPTFLAGS += -p PROF_CFLAGS = -pg endif EXTRA_DIST = $(SOURCES) if HAVE_OCAMLOPT virt-dmesg: $(XOBJECTS) ocamlfind opt $(OCAMLOPTFLAGS) $(OCAMLPACKAGES) $(OCAMLOPTLIBS) \ -o $@ $^ else virt-dmesg: $(OBJECTS) ocamlfind c $(OCAMLCFLAGS) $(OCAMLPACKAGES) $(OCAMLCLIBS) \ -o $@ $^ endif .mli.cmi: $(OCAMLFIND) c $(OCAMLCFLAGS) $(OCAMLPACKAGES) -c $< .ml.cmo: $(OCAMLFIND) c $(OCAMLCFLAGS) $(OCAMLPACKAGES) -c $< .ml.cmx: $(OCAMLFIND) opt $(OCAMLOPTFLAGS) $(OCAMLPACKAGES) -c $< # automake will decide we don't need C support in this file. Really # we do, so we have to provide it ourselves. DEFAULT_INCLUDES = -I. -I$(top_builddir) -I$(shell $(OCAMLC) -where) .c.o: $(CC) $(CFLAGS) $(PROF_CFLAGS) $(DEFAULT_INCLUDES) -c $< -o $@ SUFFIXES = .cmo .cmi .cmx .ml .mli # Dependencies. depend: .depend .depend: $(wildcard *.mli) $(wildcard *.ml) rm -f .depend $(OCAMLFIND) ocamldep $(OCAMLCPACKAGES) $(OCAMLDEPFLAGS) $^ > $@-t mv $@-t $@ include .depend # Clean. CLEANFILES = *~ *.o *.cmi *.cmo *.cmx virt-dmesg # Link virt-uname to virt-dmesg when installing. install-exec-hook: ln $(DESTDIR)$(bindir)/virt-dmesg$(EXEEXT) \ $(DESTDIR)$(bindir)/virt-uname$(EXEEXT)