X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=Makefile.am;h=e92a3bbe5ff69e322a3b817a2619900d79343178;hb=04b7ac2ae61b6b556819d16e45751af6903b9712;hp=967dfacb2445a3540a7e3233839a4af583aab5cb;hpb=277d7009668cce99d0534d780c3984675bf20cd0;p=guestfs-browser.git diff --git a/Makefile.am b/Makefile.am index 967dfac..e92a3bb 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,5 @@ # Guestfs Browser. -# Copyright (C) 2010 Red Hat Inc. +# Copyright (C) 2010-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 @@ -17,45 +17,86 @@ ACLOCAL_AMFLAGS = -I m4 -EXTRA_DIST = HACKING Throbber.png Throbber.gif +EXTRA_DIST = \ + $(SOURCES) \ + HACKING \ + Throbber.png Throbber.gif \ + .gitignore guestfs-browser.spec \ + guestfs-browser.pod \ + guestfs-browser.1 \ + guestfs-browser.desktop.in \ + guestfs-browser.png \ + guestfs-browser-large.png \ + guestfs-browser.svg \ + test-desktop-file-validate.sh \ + html/pod.css -CLEANFILES = *.cmi *.cmo *.cmx *.o guestfs-browser +CLEANFILES = *.cmi *.cmo *.cmx *.cmxa *.o guestfs-browser *~ +TESTS = + +# These are listed here in alphabetical order. SOURCES = \ cmdline.mli \ cmdline.ml \ + config.mli \ config.ml \ + deviceSet.mli \ + deviceSet.ml \ filetree.mli \ filetree.ml \ + filetree_markup.mli \ + filetree_markup.ml \ + filetree_ops.mli \ + filetree_ops.ml \ + filetree_type.mli \ + filetree_type.ml \ main.ml \ slave.mli \ slave.ml \ + slave_types.mli \ + slave_types.ml \ + slave_utils.mli \ + slave_utils.ml \ throbber.ml \ utils.mli \ utils.ml \ window.mli \ window.ml +# Note this list must be in dependency order. OBJECTS = \ - throbber.cmx \ config.cmx \ + throbber.cmx \ utils.cmx \ + cmdline.cmx \ + deviceSet.cmx \ + slave_types.cmx \ + slave_utils.cmx \ slave.cmx \ + filetree_type.cmx \ + filetree_markup.cmx \ + filetree_ops.cmx \ filetree.cmx \ - cmdline.cmx \ window.cmx \ main.cmx bin_SCRIPTS = guestfs-browser +OCAMLPACKAGES = \ + -package libvirt,guestfs,hivex,lablgtk2,extlib,xml-light,camomile,threads,bitstring,bitstring.syntax -syntax bitstring OCAMLCFLAGS = \ -g \ - -warn-error A \ + -warn-error CDEFLMPSUVYZX \ -thread \ - -package libvirt,guestfs,lablgtk2,extlib,xml-light,threads \ + $(OCAMLPACKAGES) \ -predicates threads - OCAMLOPTFLAGS = $(OCAMLCFLAGS) +OCAMLDOCFLAGS = \ + $(OCAMLPACKAGES) \ + -predicates threads \ + -I +threads \ + -sort -html guestfs-browser: $(OBJECTS) $(OCAMLFIND) ocamlopt $(OCAMLOPTFLAGS) \ @@ -80,11 +121,71 @@ throbber.ml: Throbber.png Throbber.gif .ml.cmx: $(OCAMLFIND) ocamlopt $(OCAMLCFLAGS) -c $< -o $@ +# Icon. +icondir = $(datadir)/$(PACKAGE_NAME)/pixmaps +icon_DATA = guestfs-browser.svg guestfs-browser-large.png guestfs-browser.png + +# Desktop file. +desktopdir = $(datadir)/applications +desktop_DATA = guestfs-browser.desktop + +guestfs-browser.desktop: guestfs-browser.desktop.in + $(SED) "s,\@icondir\@,$(icondir),g" < $< > $@ + +TESTS += test-desktop-file-validate.sh + +# Man page. +man_MANS = guestfs-browser.1 + +if HAVE_PERLDOC + +guestfs-browser.1: guestfs-browser.pod + pod2man \ + --section 1 \ + -c "Virtualization Support" \ + --release "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" \ + $< > $@ + +noinst_DATA = \ + html/guestfs-browser.1.html + +html/guestfs-browser.1.html: guestfs-browser.pod + mkdir -p html + pod2html \ + --css 'pod.css' \ + --htmldir html \ + --outfile html/guestfs-browser.1.html \ + guestfs-browser.pod + +endif + +# Maintainer website update. +HTMLFILES = \ + html/guestfs-browser.1.html + +WEBSITEDIR = $(HOME)/d/redhat/websites/libguestfs + +website: $(HTMLFILES) + cp $(HTMLFILES) $(WEBSITEDIR) + +CLEANFILES += $(HTMLFILES) pod2*.tmp + +# Convert internal documentation to HTML. +docs: + rm -rf doc + mkdir -p doc + $(OCAMLFIND) ocamldoc -d doc $(OCAMLDOCFLAGS) $(SOURCES) + +# Dependencies. depend: .depend .depend: $(wildcard *.mli) $(wildcard *.ml) rm -f $@ $@-t - $(OCAMLFIND) ocamldep $^ > $@-t + $(OCAMLFIND) ocamldep $(OCAMLPACKAGES) $^ | \ + $(SED) -e :a -e '/ *\\$$/N; s/ *\\\n */ /; ta' | \ + sort > $@-t mv $@-t $@ include .depend + +.PHONY: depend docs